luminarycloud 0.22.3__py3-none-any.whl → 0.23.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- luminarycloud/__init__.py +9 -3
- luminarycloud/_client/client.py +1 -1
- luminarycloud/_helpers/_code_representation.py +1 -0
- luminarycloud/_helpers/_create_simulation.py +5 -1
- luminarycloud/_helpers/proto_decorator.py +46 -38
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.py +214 -137
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +152 -0
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.py +103 -0
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.pyi +40 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +137 -63
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +166 -6
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py +68 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi +24 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +94 -71
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +46 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.py +35 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.pyi +16 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.py +25 -3
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.pyi +32 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2_grpc.py +34 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2_grpc.pyi +12 -0
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +68 -21
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +119 -0
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.py +33 -0
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.pyi +10 -0
- luminarycloud/_proto/client/simulation_pb2.py +405 -346
- luminarycloud/_proto/client/simulation_pb2.pyi +175 -21
- luminarycloud/_proto/clusterconfig/clusterconfig_pb2.py +273 -0
- luminarycloud/_proto/clusterconfig/clusterconfig_pb2.pyi +808 -0
- luminarycloud/_proto/geometry/geometry_pb2.pyi +1 -1
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py +2 -2
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py +68 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi +24 -0
- luminarycloud/enum/__init__.py +1 -0
- luminarycloud/enum/gpu_type.py +42 -7
- luminarycloud/enum/vis_enums.py +18 -0
- luminarycloud/geometry.py +81 -0
- luminarycloud/geometry_contacts.py +222 -0
- luminarycloud/meshing/mesh_generation_params.py +4 -4
- luminarycloud/meshing/sizing_strategy/__init__.py +0 -1
- luminarycloud/meshing/sizing_strategy/sizing_strategies.py +0 -20
- luminarycloud/params/geometry/shapes.py +137 -31
- luminarycloud/params/outputs/__init__.py +0 -2
- luminarycloud/params/outputs/output.py +17 -5
- luminarycloud/params/simulation/__init__.py +2 -0
- luminarycloud/params/simulation/adaptive_mesh_refinement/active_region_.py +1 -1
- luminarycloud/params/simulation/adaptive_mesh_refinement/boundary_layer_profile_.py +1 -1
- luminarycloud/params/simulation/adaptive_mesh_refinement_.py +1 -1
- luminarycloud/params/simulation/adjoint_.py +8 -5
- luminarycloud/params/simulation/basic/gravity/gravity_off_.py +1 -1
- luminarycloud/params/simulation/basic/gravity/gravity_on_.py +1 -1
- luminarycloud/params/simulation/basic/gravity_.py +1 -1
- luminarycloud/params/simulation/body_frame_.py +1 -1
- luminarycloud/params/simulation/entity_relationships/volume_material_relationship_.py +1 -1
- luminarycloud/params/simulation/entity_relationships/volume_physics_relationship_.py +1 -1
- luminarycloud/params/simulation/entity_relationships_.py +1 -1
- luminarycloud/params/simulation/general_.py +1 -1
- luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_off_.py +1 -1
- luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_on_.py +1 -1
- luminarycloud/params/simulation/material/fluid/boussinesq_approximation_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/__init__.py +2 -0
- luminarycloud/params/simulation/material/fluid/material_model/ideal_gas_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_with_energy_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend/__init__.py +2 -0
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend/real_gas_coolprop_.py +43 -0
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend/real_gas_polynomial_.py +53 -0
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend_.py +29 -0
- luminarycloud/params/simulation/material/fluid/material_model_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_conductivity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_prandtl_number_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/temperature_dependent_conductivity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model/prescribed_viscosity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model/sutherland_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model/temperature_dependent_viscosity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model_.py +1 -1
- luminarycloud/params/simulation/material/material_fluid_.py +78 -2
- luminarycloud/params/simulation/material/material_solid_.py +1 -1
- luminarycloud/params/simulation/material_entity_.py +1 -1
- luminarycloud/params/simulation/monitor_plane_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms/no_transform_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms/rotational_transform_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms/translational_transform_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms_.py +1 -1
- luminarycloud/params/simulation/motion_data/motion_type/constant_angular_motion_.py +1 -1
- luminarycloud/params/simulation/motion_data/motion_type/constant_translation_motion_.py +1 -1
- luminarycloud/params/simulation/motion_data/motion_type_.py +1 -1
- luminarycloud/params/simulation/motion_data_.py +1 -1
- luminarycloud/params/simulation/multi_physics_coupling_options_.py +1 -1
- luminarycloud/params/simulation/nonlinear_control/__init__.py +1 -0
- luminarycloud/params/simulation/nonlinear_control/nonlinear_control_system_.py +48 -0
- luminarycloud/params/simulation/nonlinear_control_.py +61 -0
- luminarycloud/params/simulation/output_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_normal_vector_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_rotation_angles_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_line_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/probe_points_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/source_points_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type_.py +1 -1
- luminarycloud/params/simulation/particle_group_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/adjoint_controls_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/basic_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/farfield_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/fan_curve_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mach_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mass_flow_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/total_pressure_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_components_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_magnitude_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/fan_curve_outlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_pressure_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_corrected_mass_flow_rate_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_mass_flow_rate_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/symmetry_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/turbulence_boundary_conditions_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_heat_flux_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_temperature_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/no_slip_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/slip_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/wall_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_energy_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_momentum_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/initialization/__init__.py +1 -0
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_existing_solution_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_farfield_values_.py +14 -1
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_initialization_per_zone_.py +48 -0
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_prescribed_values_.py +14 -1
- luminarycloud/params/simulation/physics/fluid/initialization/turbulence_initialization_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/initialization_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/blade_element_airfoil_data_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_blade_element_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_radial_distribution_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_uniform_thrust_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/fan_curve_internal_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model/actuator_line_blade_element_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/blade_element_params_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_acceleration_source_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_mass_source_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/porous_behavior_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_explicit_relaxation_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_auto_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_off_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_on_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/cfl_based_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/fixed_pseudo_time_step_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ec2_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/fds_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ld2_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/rhie_chow_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/first_order_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/second_order_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_vtm_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/iddes_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/custom_komega_sst_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/default_komega_sst_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/komega_sst_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/custom_spalart_allmaras_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/default_spalart_allmaras_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/spalart_allmaras_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/amd_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/sigma_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/smagorinsky_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/vreman_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/wale_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence_.py +1 -1
- luminarycloud/params/simulation/physics/fluid_.py +1 -1
- luminarycloud/params/simulation/physics/heat/adjoint_controls_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_convection_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_heat_flux_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_integrated_heat_flux_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_symmetry_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_temperature_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_per_unit_of_volume_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source_.py +1 -1
- luminarycloud/params/simulation/physics/heat/initialization/__init__.py +1 -0
- luminarycloud/params/simulation/physics/heat/initialization/heat_existing_solution_.py +1 -1
- luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values/__init__.py +1 -0
- luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values/heat_initialization_per_zone_.py +40 -0
- luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values_.py +14 -1
- luminarycloud/params/simulation/physics/heat/initialization_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method/heat_implicit_relaxation_.py +1 -1
- luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method_.py +1 -1
- luminarycloud/params/simulation/physics/heat/solution_controls_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/spatial_discretization_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat_.py +1 -1
- luminarycloud/params/simulation/physics/periodic_pair_.py +5 -1
- luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/gauss_seidel_.py +1 -1
- luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/krylov_amg_.py +1 -1
- luminarycloud/params/simulation/physics/solution_controls/linear_solver_type_.py +1 -1
- luminarycloud/params/simulation/physics_.py +1 -1
- luminarycloud/params/simulation/simulation_param_.py +8 -1
- luminarycloud/params/simulation/sliding_interfaces_.py +1 -1
- luminarycloud/params/simulation/surface_name_.py +1 -1
- luminarycloud/params/simulation/time/compute_statistics/compute_statistics_off_.py +1 -1
- luminarycloud/params/simulation/time/compute_statistics/compute_statistics_on_.py +1 -1
- luminarycloud/params/simulation/time/compute_statistics_.py +1 -1
- luminarycloud/params/simulation/time/time_marching/time_explicit_.py +1 -1
- luminarycloud/params/simulation/time/time_marching/time_implicit_.py +1 -1
- luminarycloud/params/simulation/time/time_marching_.py +1 -1
- luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_off_.py +1 -1
- luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_on_.py +1 -1
- luminarycloud/params/simulation/time/time_step_ramp_.py +1 -1
- luminarycloud/params/simulation/time_.py +1 -1
- luminarycloud/params/simulation/volume_entity_.py +1 -1
- luminarycloud/physics_ai/__init__.py +9 -0
- luminarycloud/physics_ai/architectures.py +129 -17
- luminarycloud/physics_ai/datasets.py +66 -11
- luminarycloud/physics_ai/training_jobs.py +50 -4
- luminarycloud/pipelines/__init__.py +5 -4
- luminarycloud/pipelines/api.py +148 -34
- luminarycloud/pipelines/arguments.py +8 -3
- luminarycloud/pipelines/core.py +10 -72
- luminarycloud/pipelines/stages.py +28 -25
- luminarycloud/pipelines/user_code_validation.py +122 -0
- luminarycloud/project.py +0 -14
- luminarycloud/simulation.py +42 -11
- luminarycloud/simulation_param.py +0 -62
- luminarycloud/simulation_template.py +1 -11
- luminarycloud/types/adfloat.py +48 -4
- luminarycloud/types/matrix3.py +9 -9
- luminarycloud/types/vector3.py +52 -23
- luminarycloud/vis/__init__.py +3 -0
- luminarycloud/vis/visualization.py +88 -0
- luminarycloud/volume_selection.py +29 -17
- {luminarycloud-0.22.3.dist-info → luminarycloud-0.23.0.dist-info}/METADATA +1 -1
- {luminarycloud-0.22.3.dist-info → luminarycloud-0.23.0.dist-info}/RECORD +257 -244
- luminarycloud/params/outputs/residual_output.py +0 -24
- /luminarycloud/params/{simulation/_lib.py → _lib.py} +0 -0
- {luminarycloud-0.22.3.dist-info → luminarycloud-0.23.0.dist-info}/WHEEL +0 -0
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.material.fluid.thermal_conductivity_model_ import (
|
|
21
21
|
ThermalConductivityModel,
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.material.fluid.thermal_conductivity_model_ import (
|
|
21
21
|
ThermalConductivityModel,
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.material.fluid.viscosity_model_ import ViscosityModel
|
|
21
21
|
from luminarycloud.params.simulation.material.fluid.viscosity_model_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.material.fluid.viscosity_model_ import ViscosityModel
|
|
21
21
|
from luminarycloud.params.simulation.material.fluid.viscosity_model_ import *
|
luminarycloud/params/simulation/material/fluid/viscosity_model/temperature_dependent_viscosity_.py
CHANGED
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.material.fluid.viscosity_model_ import ViscosityModel
|
|
21
21
|
from luminarycloud.params.simulation.material.fluid.viscosity_model_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.material.fluid.boussinesq_approximation_ import (
|
|
21
21
|
BoussinesqApproximation,
|
|
@@ -53,6 +53,18 @@ from luminarycloud.params.simulation.material.fluid.viscosity_model.prescribed_v
|
|
|
53
53
|
PrescribedViscosity,
|
|
54
54
|
)
|
|
55
55
|
from luminarycloud.params.simulation.material.fluid.viscosity_model.prescribed_viscosity_ import *
|
|
56
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend_ import (
|
|
57
|
+
RealGasBackend,
|
|
58
|
+
)
|
|
59
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend_ import *
|
|
60
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend.real_gas_coolprop_ import (
|
|
61
|
+
RealGasCoolprop,
|
|
62
|
+
)
|
|
63
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend.real_gas_coolprop_ import *
|
|
64
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend.real_gas_polynomial_ import (
|
|
65
|
+
RealGasPolynomial,
|
|
66
|
+
)
|
|
67
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend.real_gas_polynomial_ import *
|
|
56
68
|
from luminarycloud.params.simulation.material.fluid.viscosity_model.sutherland_ import Sutherland
|
|
57
69
|
from luminarycloud.params.simulation.material.fluid.viscosity_model.sutherland_ import *
|
|
58
70
|
from luminarycloud.params.simulation.material.fluid.thermal_conductivity_model.temperature_dependent_conductivity_ import (
|
|
@@ -78,7 +90,7 @@ class MaterialFluid(CodeRepr, ParamGroupWrapper[clientpb.MaterialFluid]):
|
|
|
78
90
|
reference_pressure: LcFloat = 0.0
|
|
79
91
|
"Reference pressure for the simulation. Unless otherwise stated, all pressure values are relative to this field (i.e. gauge pressures)."
|
|
80
92
|
material_model: MaterialModel = field(default_factory=IdealGas)
|
|
81
|
-
"Material model. Possible types: ``IdealGas``, ``IncompressibleFluid``, ``IncompressibleFluidWithEnergy`` from the ``material_model`` module."
|
|
93
|
+
"Material model. Possible types: ``IdealGas``, ``RealGasBackend``, ``IncompressibleFluid``, ``IncompressibleFluidWithEnergy`` from the ``material_model`` module."
|
|
82
94
|
thermal_conductivity_model: ThermalConductivityModel = field(
|
|
83
95
|
default_factory=PrescribedPrandtlNumber
|
|
84
96
|
)
|
|
@@ -97,6 +109,43 @@ class MaterialFluid(CodeRepr, ParamGroupWrapper[clientpb.MaterialFluid]):
|
|
|
97
109
|
_proto.density_relationship = clientpb.IDEAL_GAS
|
|
98
110
|
_proto.molecular_weight.CopyFrom(_to_ad_proto(self.material_model.molecular_weight))
|
|
99
111
|
_proto.specific_heat_cp.CopyFrom(_to_ad_proto(self.material_model.specific_heat_cp))
|
|
112
|
+
if isinstance(self.material_model, RealGasBackend):
|
|
113
|
+
_proto.density_relationship = clientpb.REAL_GAS
|
|
114
|
+
if isinstance(self.material_model, RealGasCoolprop):
|
|
115
|
+
_proto.real_gas_backend = clientpb.REAL_GAS_COOLPROP
|
|
116
|
+
_proto.pt_table_fluid = self.material_model.fluid.value
|
|
117
|
+
_proto.pt_table_min_pressure.CopyFrom(
|
|
118
|
+
_to_ad_proto(self.material_model.min_pressure)
|
|
119
|
+
)
|
|
120
|
+
_proto.pt_table_max_pressure.CopyFrom(
|
|
121
|
+
_to_ad_proto(self.material_model.max_pressure)
|
|
122
|
+
)
|
|
123
|
+
_proto.pt_table_n_pressure.value = self.material_model.n_pressure
|
|
124
|
+
_proto.pt_table_min_temperature.CopyFrom(
|
|
125
|
+
_to_ad_proto(self.material_model.min_temperature)
|
|
126
|
+
)
|
|
127
|
+
_proto.pt_table_max_temperature.CopyFrom(
|
|
128
|
+
_to_ad_proto(self.material_model.max_temperature)
|
|
129
|
+
)
|
|
130
|
+
_proto.pt_table_n_temperature.value = self.material_model.n_temperature
|
|
131
|
+
if isinstance(self.material_model, RealGasPolynomial):
|
|
132
|
+
_proto.real_gas_backend = clientpb.REAL_GAS_POLYNOMIAL
|
|
133
|
+
_proto.molecular_weight.CopyFrom(_to_ad_proto(self.material_model.molecular_weight))
|
|
134
|
+
_proto.pt_table_min_temperature.CopyFrom(
|
|
135
|
+
_to_ad_proto(self.material_model.min_temperature)
|
|
136
|
+
)
|
|
137
|
+
_proto.pt_table_max_temperature.CopyFrom(
|
|
138
|
+
_to_ad_proto(self.material_model.max_temperature)
|
|
139
|
+
)
|
|
140
|
+
_proto.cp_polynomial_a1.CopyFrom(_to_ad_proto(self.material_model.a1))
|
|
141
|
+
_proto.cp_polynomial_a2.CopyFrom(_to_ad_proto(self.material_model.a2))
|
|
142
|
+
_proto.cp_polynomial_a3.CopyFrom(_to_ad_proto(self.material_model.a3))
|
|
143
|
+
_proto.cp_polynomial_a4.CopyFrom(_to_ad_proto(self.material_model.a4))
|
|
144
|
+
_proto.cp_polynomial_a5.CopyFrom(_to_ad_proto(self.material_model.a5))
|
|
145
|
+
_proto.cp_polynomial_a6.CopyFrom(_to_ad_proto(self.material_model.a6))
|
|
146
|
+
_proto.cp_polynomial_a7.CopyFrom(_to_ad_proto(self.material_model.a7))
|
|
147
|
+
_proto.cp_polynomial_b1.CopyFrom(_to_ad_proto(self.material_model.b1))
|
|
148
|
+
_proto.cp_polynomial_b2.CopyFrom(_to_ad_proto(self.material_model.b2))
|
|
100
149
|
if isinstance(self.material_model, IncompressibleFluid):
|
|
101
150
|
_proto.density_relationship = clientpb.CONSTANT_DENSITY
|
|
102
151
|
_proto.constant_density_value.CopyFrom(_to_ad_proto(self.material_model.density))
|
|
@@ -176,6 +225,33 @@ class MaterialFluid(CodeRepr, ParamGroupWrapper[clientpb.MaterialFluid]):
|
|
|
176
225
|
self.material_model = IdealGas()
|
|
177
226
|
self.material_model.molecular_weight = _from_ad_proto(proto.molecular_weight)
|
|
178
227
|
self.material_model.specific_heat_cp = _from_ad_proto(proto.specific_heat_cp)
|
|
228
|
+
elif proto.density_relationship == clientpb.REAL_GAS:
|
|
229
|
+
self.material_model = RealGasBackend()
|
|
230
|
+
if proto.real_gas_backend == clientpb.INVALID_REAL_GAS_BACKEND:
|
|
231
|
+
raise ValueError("Invalid real_gas_backend")
|
|
232
|
+
elif proto.real_gas_backend == clientpb.REAL_GAS_COOLPROP:
|
|
233
|
+
self.material_model = RealGasCoolprop()
|
|
234
|
+
self.material_model.fluid = enum.PtTableFluid(proto.pt_table_fluid)
|
|
235
|
+
self.material_model.min_pressure = _from_ad_proto(proto.pt_table_min_pressure)
|
|
236
|
+
self.material_model.max_pressure = _from_ad_proto(proto.pt_table_max_pressure)
|
|
237
|
+
self.material_model.n_pressure = proto.pt_table_n_pressure.value
|
|
238
|
+
self.material_model.min_temperature = _from_ad_proto(proto.pt_table_min_temperature)
|
|
239
|
+
self.material_model.max_temperature = _from_ad_proto(proto.pt_table_max_temperature)
|
|
240
|
+
self.material_model.n_temperature = proto.pt_table_n_temperature.value
|
|
241
|
+
elif proto.real_gas_backend == clientpb.REAL_GAS_POLYNOMIAL:
|
|
242
|
+
self.material_model = RealGasPolynomial()
|
|
243
|
+
self.material_model.molecular_weight = _from_ad_proto(proto.molecular_weight)
|
|
244
|
+
self.material_model.min_temperature = _from_ad_proto(proto.pt_table_min_temperature)
|
|
245
|
+
self.material_model.max_temperature = _from_ad_proto(proto.pt_table_max_temperature)
|
|
246
|
+
self.material_model.a1 = _from_ad_proto(proto.cp_polynomial_a1)
|
|
247
|
+
self.material_model.a2 = _from_ad_proto(proto.cp_polynomial_a2)
|
|
248
|
+
self.material_model.a3 = _from_ad_proto(proto.cp_polynomial_a3)
|
|
249
|
+
self.material_model.a4 = _from_ad_proto(proto.cp_polynomial_a4)
|
|
250
|
+
self.material_model.a5 = _from_ad_proto(proto.cp_polynomial_a5)
|
|
251
|
+
self.material_model.a6 = _from_ad_proto(proto.cp_polynomial_a6)
|
|
252
|
+
self.material_model.a7 = _from_ad_proto(proto.cp_polynomial_a7)
|
|
253
|
+
self.material_model.b1 = _from_ad_proto(proto.cp_polynomial_b1)
|
|
254
|
+
self.material_model.b2 = _from_ad_proto(proto.cp_polynomial_b2)
|
|
179
255
|
elif proto.density_relationship == clientpb.CONSTANT_DENSITY:
|
|
180
256
|
self.material_model = IncompressibleFluid()
|
|
181
257
|
self.material_model.density = _from_ad_proto(proto.constant_density_value)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.material.material_fluid_ import MaterialFluid
|
|
21
21
|
from luminarycloud.params.simulation.material.material_fluid_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.motion_data.frame_transforms_ import FrameTransforms
|
|
21
21
|
from luminarycloud.params.simulation.motion_data.frame_transforms_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.motion_data.frame_transforms_ import FrameTransforms
|
|
21
21
|
from luminarycloud.params.simulation.motion_data.frame_transforms_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.motion_data.frame_transforms_ import FrameTransforms
|
|
21
21
|
from luminarycloud.params.simulation.motion_data.frame_transforms_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.motion_data.motion_type_ import MotionType
|
|
21
21
|
from luminarycloud.params.simulation.motion_data.motion_type_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.motion_data.motion_type_ import MotionType
|
|
21
21
|
from luminarycloud.params.simulation.motion_data.motion_type_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.motion_data.motion_type.constant_angular_motion_ import (
|
|
21
21
|
ConstantAngularMotion,
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
from .nonlinear_control_system_ import NonlinearControlSystem
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
|
+
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
|
+
from dataclasses import dataclass, field
|
|
5
|
+
from typing import Any
|
|
6
|
+
from uuid import uuid4
|
|
7
|
+
|
|
8
|
+
from google.protobuf.message import Message as _Message
|
|
9
|
+
from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
|
|
10
|
+
from luminarycloud.types import Vector3, LcFloat
|
|
11
|
+
from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
|
|
12
|
+
from luminarycloud._helpers._entity_identifier import _create_entity_identifier
|
|
13
|
+
from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
14
|
+
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
15
|
+
from luminarycloud._helpers import CodeRepr
|
|
16
|
+
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
|
+
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
|
+
|
|
20
|
+
from luminarycloud.params import outputs
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
@dataclass(kw_only=True)
|
|
24
|
+
class NonlinearControlSystem(CodeRepr, ParamGroupWrapper[clientpb.NonlinearControlSystem]):
|
|
25
|
+
"""Outputs, inputs, and target values that define the control problem."""
|
|
26
|
+
|
|
27
|
+
output: outputs.Output | None = None
|
|
28
|
+
"Output for which a target value should be met."
|
|
29
|
+
input: str = ""
|
|
30
|
+
"Named variable varied by the controller to meet the target output value."
|
|
31
|
+
target: LcFloat = 0
|
|
32
|
+
"Target value for the output."
|
|
33
|
+
|
|
34
|
+
def _to_proto(self) -> clientpb.NonlinearControlSystem:
|
|
35
|
+
_proto = clientpb.NonlinearControlSystem()
|
|
36
|
+
if self.output is not None:
|
|
37
|
+
_proto.nonlinear_control_output.CopyFrom(self.output._to_proto())
|
|
38
|
+
if self.input is not None:
|
|
39
|
+
_proto.nonlinear_control_input = self.input
|
|
40
|
+
_proto.nonlinear_control_target.CopyFrom(_to_ad_proto(self.target))
|
|
41
|
+
return _proto
|
|
42
|
+
|
|
43
|
+
def _from_proto(self, proto: clientpb.NonlinearControlSystem) -> None:
|
|
44
|
+
self.output = outputs.Output()
|
|
45
|
+
self.output._from_proto(proto.nonlinear_control_output)
|
|
46
|
+
self.input = proto.nonlinear_control_input
|
|
47
|
+
self.target = _from_ad_proto(proto.nonlinear_control_target)
|
|
48
|
+
return None
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
|
+
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
|
+
from dataclasses import dataclass, field
|
|
5
|
+
from typing import Any
|
|
6
|
+
from uuid import uuid4
|
|
7
|
+
|
|
8
|
+
from google.protobuf.message import Message as _Message
|
|
9
|
+
from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
|
|
10
|
+
from luminarycloud.types import Vector3, LcFloat
|
|
11
|
+
from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
|
|
12
|
+
from luminarycloud._helpers._entity_identifier import _create_entity_identifier
|
|
13
|
+
from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
14
|
+
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
15
|
+
from luminarycloud._helpers import CodeRepr
|
|
16
|
+
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
|
+
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
|
+
|
|
20
|
+
from luminarycloud.params.simulation.nonlinear_control.nonlinear_control_system_ import (
|
|
21
|
+
NonlinearControlSystem,
|
|
22
|
+
)
|
|
23
|
+
from luminarycloud.params.simulation.nonlinear_control.nonlinear_control_system_ import *
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
@dataclass(kw_only=True)
|
|
27
|
+
class NonlinearControl(CodeRepr, ParamGroupWrapper[clientpb.NonlinearControl]):
|
|
28
|
+
"""Determine input values such that target output values are met."""
|
|
29
|
+
|
|
30
|
+
system: list[NonlinearControlSystem] = field(default_factory=list)
|
|
31
|
+
"Outputs, inputs, and target values that define the control problem."
|
|
32
|
+
method: enum.NonlinearControlMethod = enum.NonlinearControlMethod.CONTROL_METHOD_SECANT
|
|
33
|
+
"The method used to determine 'input' such that 'output'('input') = 'target'."
|
|
34
|
+
start_iteration: int = 1000
|
|
35
|
+
"Start the nonlinear controller after N iterations."
|
|
36
|
+
initial_gradient: LcFloat = 1
|
|
37
|
+
"Estimate of the gradient of the function with respect to the control input, used for the first update of the Secant method."
|
|
38
|
+
update_interval: int = 500
|
|
39
|
+
"Update the input every N iterations."
|
|
40
|
+
update_relaxation: LcFloat = 0.5
|
|
41
|
+
"Under-relaxation factor applied to the Secant method updates of the input variables."
|
|
42
|
+
|
|
43
|
+
def _to_proto(self) -> clientpb.NonlinearControl:
|
|
44
|
+
_proto = clientpb.NonlinearControl()
|
|
45
|
+
if self.system is not None:
|
|
46
|
+
_proto.nonlinear_control_system.extend(v._to_proto() for v in self.system)
|
|
47
|
+
_proto.nonlinear_control_method = self.method.value
|
|
48
|
+
_proto.nonlinear_control_start_iteration.value = self.start_iteration
|
|
49
|
+
_proto.nonlinear_control_initial_gradient.CopyFrom(_to_ad_proto(self.initial_gradient))
|
|
50
|
+
_proto.nonlinear_control_update_interval.value = self.update_interval
|
|
51
|
+
_proto.nonlinear_control_relaxation.CopyFrom(_to_ad_proto(self.update_relaxation))
|
|
52
|
+
return _proto
|
|
53
|
+
|
|
54
|
+
def _from_proto(self, proto: clientpb.NonlinearControl) -> None:
|
|
55
|
+
self.system = [NonlinearControlSystem.from_proto(v) for v in proto.nonlinear_control_system]
|
|
56
|
+
self.method = enum.NonlinearControlMethod(proto.nonlinear_control_method)
|
|
57
|
+
self.start_iteration = proto.nonlinear_control_start_iteration.value
|
|
58
|
+
self.initial_gradient = _from_ad_proto(proto.nonlinear_control_initial_gradient)
|
|
59
|
+
self.update_interval = proto.nonlinear_control_update_interval.value
|
|
60
|
+
self.update_relaxation = _from_ad_proto(proto.nonlinear_control_relaxation)
|
|
61
|
+
return None
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.particle_group.particle_group_type.actuator_disk.actuator_disk_orientation_selection_ import (
|
|
21
21
|
ActuatorDiskOrientationSelection,
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.particle_group.particle_group_type.actuator_disk.actuator_disk_orientation_selection_ import (
|
|
21
21
|
ActuatorDiskOrientationSelection,
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import ParticleGroupType
|
|
21
21
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import ParticleGroupType
|
|
21
21
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import ParticleGroupType
|
|
21
21
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import ParticleGroupType
|
|
21
21
|
from luminarycloud.params.simulation.particle_group.particle_group_type_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.particle_group.particle_group_type.actuator_disk_ import (
|
|
21
21
|
ActuatorDisk,
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions_fluid_ import (
|
|
21
21
|
BoundaryConditionsFluid,
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import Inlet
|
|
21
21
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import Inlet
|
|
21
21
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import Inlet
|
|
21
21
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import *
|
luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/total_pressure_inlet_.py
CHANGED
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import Inlet
|
|
21
21
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import Inlet
|
|
21
21
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import *
|
luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_magnitude_inlet_.py
CHANGED
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import Inlet
|
|
21
21
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions.inlet_ import *
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
|
15
15
|
from luminarycloud._helpers import CodeRepr
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params._lib import ParamGroupWrapper, create_unique_id
|
|
19
19
|
|
|
20
20
|
from luminarycloud.params.simulation.physics.fluid.boundary_conditions_fluid_ import (
|
|
21
21
|
BoundaryConditionsFluid,
|