luminarycloud 0.22.2__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/_client/retry_interceptor.py +13 -2
- 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/named_variable_set/named_variable_set_pb2.py +25 -3
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2.pyi +30 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2_grpc.py +34 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2_grpc.pyi +12 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +155 -59
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +252 -22
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py +102 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi +36 -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/lcstatus/details/geometry/geometry_pb2.py +256 -0
- luminarycloud/_proto/lcstatus/details/geometry/geometry_pb2.pyi +472 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py +2 -2
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py +102 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi +36 -0
- luminarycloud/_proto/quantity/quantity_pb2.pyi +1 -1
- 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 +17 -0
- luminarycloud/physics_ai/architectures.py +130 -18
- luminarycloud/physics_ai/datasets.py +301 -0
- luminarycloud/physics_ai/training_jobs.py +50 -4
- luminarycloud/pipelines/__init__.py +16 -4
- luminarycloud/pipelines/api.py +192 -17
- luminarycloud/pipelines/arguments.py +8 -3
- luminarycloud/pipelines/core.py +296 -45
- luminarycloud/pipelines/flowables.py +138 -0
- luminarycloud/pipelines/stages.py +34 -55
- 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.2.dist-info → luminarycloud-0.23.0.dist-info}/METADATA +1 -1
- {luminarycloud-0.22.2.dist-info → luminarycloud-0.23.0.dist-info}/RECORD +266 -249
- luminarycloud/params/outputs/residual_output.py +0 -24
- /luminarycloud/params/{simulation/_lib.py → _lib.py} +0 -0
- {luminarycloud-0.22.2.dist-info → luminarycloud-0.23.0.dist-info}/WHEEL +0 -0
|
@@ -1,84 +1,190 @@
|
|
|
1
1
|
# Copyright 2024 Luminary Cloud, Inc. All Rights Reserved.
|
|
2
|
-
from dataclasses import dataclass
|
|
2
|
+
from dataclasses import dataclass
|
|
3
3
|
|
|
4
|
+
from luminarycloud._helpers import CodeRepr
|
|
4
5
|
from luminarycloud._helpers.proto_decorator import ProtoConvertible, proto_decorator
|
|
5
6
|
from luminarycloud._proto.cad import shape_pb2 as shapepb
|
|
6
7
|
from luminarycloud.types import Vector3
|
|
8
|
+
from luminarycloud.types.adfloat import LcFloat
|
|
9
|
+
from luminarycloud.types.vector3 import Vector3Like, _to_vector3
|
|
7
10
|
|
|
8
11
|
|
|
9
|
-
class Shape(ProtoConvertible):
|
|
12
|
+
class Shape(CodeRepr, ProtoConvertible):
|
|
10
13
|
pass
|
|
11
14
|
|
|
12
15
|
|
|
13
16
|
@dataclass(kw_only=True)
|
|
14
17
|
@proto_decorator(shapepb.Sphere)
|
|
15
18
|
class Sphere(Shape):
|
|
16
|
-
center: Vector3
|
|
17
|
-
radius:
|
|
19
|
+
center: Vector3
|
|
20
|
+
radius: LcFloat
|
|
21
|
+
|
|
22
|
+
def __init__(
|
|
23
|
+
self,
|
|
24
|
+
*,
|
|
25
|
+
center: Vector3Like | None = None,
|
|
26
|
+
radius: float = 0.0,
|
|
27
|
+
):
|
|
28
|
+
self.center = _to_vector3(center)
|
|
29
|
+
self.radius = radius
|
|
18
30
|
|
|
19
31
|
|
|
20
32
|
@dataclass(kw_only=True)
|
|
21
33
|
@proto_decorator(shapepb.SphereShell)
|
|
22
34
|
class SphereShell(Shape):
|
|
23
|
-
center: Vector3
|
|
24
|
-
radius: float
|
|
25
|
-
radius_inner: float
|
|
35
|
+
center: Vector3
|
|
36
|
+
radius: float
|
|
37
|
+
radius_inner: float
|
|
38
|
+
|
|
39
|
+
def __init__(
|
|
40
|
+
self,
|
|
41
|
+
*,
|
|
42
|
+
center: Vector3Like | None = None,
|
|
43
|
+
radius: float = 0.0,
|
|
44
|
+
radius_inner: float = 0.0,
|
|
45
|
+
):
|
|
46
|
+
self.center = _to_vector3(center)
|
|
47
|
+
self.radius = radius
|
|
48
|
+
self.radius_inner = radius_inner
|
|
26
49
|
|
|
27
50
|
|
|
28
51
|
@dataclass(kw_only=True)
|
|
29
52
|
@proto_decorator(shapepb.HalfSphere)
|
|
30
53
|
class HalfSphere(Shape):
|
|
31
|
-
center: Vector3
|
|
32
|
-
radius:
|
|
33
|
-
normal: Vector3
|
|
54
|
+
center: Vector3
|
|
55
|
+
radius: LcFloat
|
|
56
|
+
normal: Vector3
|
|
57
|
+
|
|
58
|
+
def __init__(
|
|
59
|
+
self,
|
|
60
|
+
*,
|
|
61
|
+
center: Vector3Like | None = None,
|
|
62
|
+
radius: float = 0.0,
|
|
63
|
+
normal: Vector3Like | None = None,
|
|
64
|
+
):
|
|
65
|
+
self.center = _to_vector3(center)
|
|
66
|
+
self.radius = radius
|
|
67
|
+
self.normal = _to_vector3(normal)
|
|
34
68
|
|
|
35
69
|
|
|
36
70
|
@dataclass(kw_only=True)
|
|
37
71
|
@proto_decorator(shapepb.Cube)
|
|
38
72
|
class Cube(Shape):
|
|
39
|
-
min: Vector3
|
|
40
|
-
max: Vector3
|
|
73
|
+
min: Vector3
|
|
74
|
+
max: Vector3
|
|
75
|
+
|
|
76
|
+
def __init__(
|
|
77
|
+
self,
|
|
78
|
+
*,
|
|
79
|
+
min: Vector3Like | None = None,
|
|
80
|
+
max: Vector3Like | None = None,
|
|
81
|
+
):
|
|
82
|
+
self.min = _to_vector3(min)
|
|
83
|
+
self.max = _to_vector3(max)
|
|
41
84
|
|
|
42
85
|
|
|
43
86
|
@dataclass(kw_only=True)
|
|
44
87
|
@proto_decorator(shapepb.OrientedCube)
|
|
45
88
|
class OrientedCube(Shape):
|
|
46
|
-
min: Vector3
|
|
47
|
-
max: Vector3
|
|
48
|
-
origin: Vector3
|
|
49
|
-
x_axis: Vector3
|
|
50
|
-
y_axis: Vector3
|
|
89
|
+
min: Vector3
|
|
90
|
+
max: Vector3
|
|
91
|
+
origin: Vector3
|
|
92
|
+
x_axis: Vector3
|
|
93
|
+
y_axis: Vector3
|
|
94
|
+
|
|
95
|
+
def __init__(
|
|
96
|
+
self,
|
|
97
|
+
*,
|
|
98
|
+
min: Vector3Like | None = None,
|
|
99
|
+
max: Vector3Like | None = None,
|
|
100
|
+
origin: Vector3Like | None = None,
|
|
101
|
+
x_axis: Vector3Like | None = None,
|
|
102
|
+
y_axis: Vector3Like | None = None,
|
|
103
|
+
):
|
|
104
|
+
self.min = _to_vector3(min)
|
|
105
|
+
self.max = _to_vector3(max)
|
|
106
|
+
self.origin = _to_vector3(origin)
|
|
107
|
+
self.x_axis = _to_vector3(x_axis)
|
|
108
|
+
self.y_axis = _to_vector3(y_axis)
|
|
51
109
|
|
|
52
110
|
|
|
53
111
|
@dataclass(kw_only=True)
|
|
54
112
|
@proto_decorator(shapepb.Cylinder)
|
|
55
113
|
class Cylinder(Shape):
|
|
56
|
-
start: Vector3
|
|
57
|
-
end: Vector3
|
|
58
|
-
radius:
|
|
114
|
+
start: Vector3
|
|
115
|
+
end: Vector3
|
|
116
|
+
radius: LcFloat
|
|
117
|
+
|
|
118
|
+
def __init__(
|
|
119
|
+
self,
|
|
120
|
+
*,
|
|
121
|
+
start: Vector3Like | None = None,
|
|
122
|
+
end: Vector3Like | None = None,
|
|
123
|
+
radius: float = 0.0,
|
|
124
|
+
):
|
|
125
|
+
self.start = _to_vector3(start)
|
|
126
|
+
self.end = _to_vector3(end)
|
|
127
|
+
self.radius = radius
|
|
59
128
|
|
|
60
129
|
|
|
61
130
|
@dataclass(kw_only=True)
|
|
62
131
|
@proto_decorator(shapepb.AnnularCylinder)
|
|
63
132
|
class AnnularCylinder(Shape):
|
|
64
|
-
start: Vector3
|
|
65
|
-
end: Vector3
|
|
66
|
-
radius: float
|
|
67
|
-
radius_inner: float
|
|
133
|
+
start: Vector3
|
|
134
|
+
end: Vector3
|
|
135
|
+
radius: float
|
|
136
|
+
radius_inner: float
|
|
137
|
+
|
|
138
|
+
def __init__(
|
|
139
|
+
self,
|
|
140
|
+
*,
|
|
141
|
+
start: Vector3Like | None = None,
|
|
142
|
+
end: Vector3Like | None = None,
|
|
143
|
+
radius: float = 0.0,
|
|
144
|
+
radius_inner: float = 0.0,
|
|
145
|
+
):
|
|
146
|
+
self.start = _to_vector3(start)
|
|
147
|
+
self.end = _to_vector3(end)
|
|
148
|
+
self.radius = radius
|
|
149
|
+
self.radius_inner = radius_inner
|
|
68
150
|
|
|
69
151
|
|
|
70
152
|
@dataclass(kw_only=True)
|
|
71
153
|
@proto_decorator(shapepb.Torus)
|
|
72
154
|
class Torus(Shape):
|
|
73
|
-
center: Vector3
|
|
74
|
-
normal: Vector3
|
|
75
|
-
major_radius: float
|
|
76
|
-
minor_radius: float
|
|
155
|
+
center: Vector3
|
|
156
|
+
normal: Vector3
|
|
157
|
+
major_radius: float
|
|
158
|
+
minor_radius: float
|
|
159
|
+
|
|
160
|
+
def __init__(
|
|
161
|
+
self,
|
|
162
|
+
*,
|
|
163
|
+
center: Vector3Like | None = None,
|
|
164
|
+
normal: Vector3Like | None = None,
|
|
165
|
+
major_radius: float = 0.0,
|
|
166
|
+
minor_radius: float = 0.0,
|
|
167
|
+
):
|
|
168
|
+
self.center = _to_vector3(center)
|
|
169
|
+
self.normal = _to_vector3(normal)
|
|
170
|
+
self.major_radius = major_radius
|
|
171
|
+
self.minor_radius = minor_radius
|
|
77
172
|
|
|
78
173
|
|
|
79
174
|
@dataclass(kw_only=True)
|
|
80
175
|
@proto_decorator(shapepb.Cone)
|
|
81
176
|
class Cone(Shape):
|
|
82
|
-
apex: Vector3
|
|
83
|
-
base_center: Vector3
|
|
84
|
-
base_radius: float
|
|
177
|
+
apex: Vector3
|
|
178
|
+
base_center: Vector3
|
|
179
|
+
base_radius: float
|
|
180
|
+
|
|
181
|
+
def __init__(
|
|
182
|
+
self,
|
|
183
|
+
*,
|
|
184
|
+
apex: Vector3Like | None = None,
|
|
185
|
+
base_center: Vector3Like | None = None,
|
|
186
|
+
base_radius: float = 0.0,
|
|
187
|
+
):
|
|
188
|
+
self.apex = _to_vector3(apex)
|
|
189
|
+
self.base_center = _to_vector3(base_center)
|
|
190
|
+
self.base_radius = base_radius
|
|
@@ -1,21 +1,33 @@
|
|
|
1
1
|
# Copyright 2024 Luminary Cloud, Inc. All Rights Reserved.
|
|
2
|
-
|
|
3
|
-
from
|
|
2
|
+
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from luminarycloud.params._lib import ParamGroupWrapper
|
|
4
5
|
from luminarycloud._helpers import CodeRepr
|
|
5
6
|
from luminarycloud._proto.output import output_pb2 as outputpb
|
|
6
7
|
|
|
7
8
|
|
|
9
|
+
@dataclass(kw_only=True)
|
|
8
10
|
class Output(CodeRepr, ParamGroupWrapper[outputpb.Output]):
|
|
9
|
-
"""
|
|
11
|
+
"""
|
|
12
|
+
Represents a quantity that can be extracted from the output of a simulation via an
|
|
13
|
+
OutputDefinition ID.
|
|
14
|
+
|
|
15
|
+
NOTE: This class is only used to represent outputs in SimulationParam, for example to setup
|
|
16
|
+
adjoint analysis or nonlinear control equations. The interface to define and download outputs
|
|
17
|
+
uses OutputDefinition directly.
|
|
18
|
+
"""
|
|
10
19
|
|
|
11
20
|
name: str = ""
|
|
21
|
+
"The name of the output."
|
|
22
|
+
output_definition_id: str = ""
|
|
23
|
+
"The ID of the output def"
|
|
12
24
|
|
|
13
|
-
@abstractmethod
|
|
14
25
|
def _to_proto(self) -> outputpb.Output:
|
|
15
26
|
_proto = outputpb.Output()
|
|
16
27
|
_proto.name = self.name
|
|
28
|
+
_proto.id = self.output_definition_id
|
|
17
29
|
return _proto
|
|
18
30
|
|
|
19
|
-
@abstractmethod
|
|
20
31
|
def _from_proto(self, proto: outputpb.Output) -> None:
|
|
21
32
|
self.name = proto.name
|
|
33
|
+
self.output_definition_id = proto.id
|
|
@@ -3,6 +3,7 @@ from . import basic
|
|
|
3
3
|
from . import entity_relationships
|
|
4
4
|
from . import material
|
|
5
5
|
from . import motion_data
|
|
6
|
+
from . import nonlinear_control
|
|
6
7
|
from . import particle_group
|
|
7
8
|
from . import physics
|
|
8
9
|
from . import time
|
|
@@ -15,6 +16,7 @@ from .material_entity_ import MaterialEntity
|
|
|
15
16
|
from .monitor_plane_ import MonitorPlane
|
|
16
17
|
from .motion_data_ import MotionData
|
|
17
18
|
from .multi_physics_coupling_options_ import MultiPhysicsCouplingOptions
|
|
19
|
+
from .nonlinear_control_ import NonlinearControl
|
|
18
20
|
from .output_ import Output
|
|
19
21
|
from .particle_group_ import ParticleGroup
|
|
20
22
|
from .physics_ import Physics
|
|
@@ -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.geometry import shapes
|
|
21
21
|
|
|
@@ -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.adaptive_mesh_refinement.active_region_ import ActiveRegion
|
|
21
21
|
from luminarycloud.params.simulation.adaptive_mesh_refinement.active_region_ import *
|
|
@@ -15,14 +15,16 @@ 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
|
+
|
|
20
|
+
from luminarycloud.params import outputs
|
|
19
21
|
|
|
20
22
|
|
|
21
23
|
@dataclass(kw_only=True)
|
|
22
24
|
class Adjoint(CodeRepr, ParamGroupWrapper[clientpb.Adjoint]):
|
|
23
25
|
"""Settings for adjoint sensitivity analysis."""
|
|
24
26
|
|
|
25
|
-
|
|
27
|
+
output: outputs.Output | None = None
|
|
26
28
|
"Function to differentiate."
|
|
27
29
|
surfaces: list[str] = field(default_factory=list)
|
|
28
30
|
""
|
|
@@ -33,8 +35,8 @@ class Adjoint(CodeRepr, ParamGroupWrapper[clientpb.Adjoint]):
|
|
|
33
35
|
|
|
34
36
|
def _to_proto(self) -> clientpb.Adjoint:
|
|
35
37
|
_proto = clientpb.Adjoint()
|
|
36
|
-
if self.
|
|
37
|
-
_proto.adjoint_output.CopyFrom(self.
|
|
38
|
+
if self.output is not None:
|
|
39
|
+
_proto.adjoint_output.CopyFrom(self.output._to_proto())
|
|
38
40
|
if self.surfaces is not None:
|
|
39
41
|
_proto.surfaces.extend(self.surfaces)
|
|
40
42
|
if self.deformed_coords_id is not None:
|
|
@@ -44,7 +46,8 @@ class Adjoint(CodeRepr, ParamGroupWrapper[clientpb.Adjoint]):
|
|
|
44
46
|
return _proto
|
|
45
47
|
|
|
46
48
|
def _from_proto(self, proto: clientpb.Adjoint) -> None:
|
|
47
|
-
self.
|
|
49
|
+
self.output = outputs.Output()
|
|
50
|
+
self.output._from_proto(proto.adjoint_output)
|
|
48
51
|
self.surfaces.extend(proto.surfaces)
|
|
49
52
|
self.deformed_coords_id = proto.deformed_coords_id
|
|
50
53
|
self.primal_simulation_id = proto.primal_simulation_id
|
|
@@ -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.basic.gravity_ import Gravity
|
|
21
21
|
from luminarycloud.params.simulation.basic.gravity_ 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.basic.gravity_ import Gravity
|
|
21
21
|
from luminarycloud.params.simulation.basic.gravity_ 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
|
|
|
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
|
|
|
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.entity_relationships.volume_material_relationship_ import (
|
|
21
21
|
VolumeMaterialRelationship,
|
|
@@ -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.basic.gravity_ import Gravity
|
|
21
21
|
from luminarycloud.params.simulation.basic.gravity_ 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.boussinesq_approximation_ import (
|
|
21
21
|
BoussinesqApproximation,
|
|
@@ -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,
|
|
@@ -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.material_model_ import MaterialModel
|
|
21
21
|
from luminarycloud.params.simulation.material.fluid.material_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.material_model_ import MaterialModel
|
|
21
21
|
from luminarycloud.params.simulation.material.fluid.material_model_ import *
|
luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_with_energy_.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.material_model_ import MaterialModel
|
|
21
21
|
from luminarycloud.params.simulation.material.fluid.material_model_ import *
|
luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend/real_gas_coolprop_.py
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
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.material.fluid.material_model.real_gas_backend_ import (
|
|
21
|
+
RealGasBackend,
|
|
22
|
+
)
|
|
23
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend_ import *
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
@dataclass(kw_only=True)
|
|
27
|
+
class RealGasCoolprop(RealGasBackend):
|
|
28
|
+
"""Use the CoolProp material library to compute fluid properties using the Helmholtz equation of state."""
|
|
29
|
+
|
|
30
|
+
fluid: enum.PtTableFluid = enum.PtTableFluid.REAL_GAS_AIR
|
|
31
|
+
"Fluid for which the real gas tables are created. The liquid phase is not included, properties in the saturation region are extrapolated to ensure numerical stability."
|
|
32
|
+
min_pressure: LcFloat = 1000
|
|
33
|
+
"Lower bound for the pressure axis of real gas tables. For accuracy and numerical stability, this value should be lower than the minimum absolute static pressure expected in the solution."
|
|
34
|
+
max_pressure: LcFloat = 1000000.0
|
|
35
|
+
"Upper bound for the pressure axis of real gas tables. For accuracy and numerical stability, this value should be greater than the maximum absolute total pressure expected in the solution."
|
|
36
|
+
n_pressure: int = 1000
|
|
37
|
+
"Number of linearly-spaced values in the pressure axis of real gas tables."
|
|
38
|
+
min_temperature: LcFloat = 100
|
|
39
|
+
"Lower bound for the temperature in real gas equations of state. For accuracy and numerical stability, this value should be lower than the minimum static temperature expected in the solution."
|
|
40
|
+
max_temperature: LcFloat = 1000
|
|
41
|
+
"Upper bound for the temperature in real gas equations of state. For accuracy and numerical stability, this value should be greater than the maximum total temperature expected in the solution."
|
|
42
|
+
n_temperature: int = 200
|
|
43
|
+
"Number of linearly-spaced values in the temperature axis of real gas tables."
|
|
@@ -0,0 +1,53 @@
|
|
|
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.material.fluid.material_model.real_gas_backend_ import (
|
|
21
|
+
RealGasBackend,
|
|
22
|
+
)
|
|
23
|
+
from luminarycloud.params.simulation.material.fluid.material_model.real_gas_backend_ import *
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
@dataclass(kw_only=True)
|
|
27
|
+
class RealGasPolynomial(RealGasBackend):
|
|
28
|
+
"""Model a thermally perfect gas with specific heat normalized by the gas constant (c<sub>p</sub>/R) given by a 7-term polynomial (NASA format)."""
|
|
29
|
+
|
|
30
|
+
molecular_weight: LcFloat = 28.96
|
|
31
|
+
"Molecular weight of the gas used to compute its specific gas constant. Air is 28.96 g/mol."
|
|
32
|
+
min_temperature: LcFloat = 100
|
|
33
|
+
"Lower bound for the temperature in real gas equations of state. For accuracy and numerical stability, this value should be lower than the minimum static temperature expected in the solution."
|
|
34
|
+
max_temperature: LcFloat = 1000
|
|
35
|
+
"Upper bound for the temperature in real gas equations of state. For accuracy and numerical stability, this value should be greater than the maximum total temperature expected in the solution."
|
|
36
|
+
a1: LcFloat = 0.0
|
|
37
|
+
"Coefficient of term T<sup>-2</sup> in the polynomial for c<sub>p</sub>/R."
|
|
38
|
+
a2: LcFloat = 0.0
|
|
39
|
+
"Coefficient of term T<sup>-1</sup> in the polynomial for c<sub>p</sub>/R."
|
|
40
|
+
a3: LcFloat = 3.5
|
|
41
|
+
"Coefficient of term T<sup>0</sup> in the polynomial for c<sub>p</sub>/R."
|
|
42
|
+
a4: LcFloat = 0.0
|
|
43
|
+
"Coefficient of term T<sup>1</sup> in the polynomial for c<sub>p</sub>/R."
|
|
44
|
+
a5: LcFloat = 0.0
|
|
45
|
+
"Coefficient of term T<sup>2</sup> in the polynomial for c<sub>p</sub>/R."
|
|
46
|
+
a6: LcFloat = 0.0
|
|
47
|
+
"Coefficient of term T<sup>3</sup> in the polynomial for c<sub>p</sub>/R."
|
|
48
|
+
a7: LcFloat = 0.0
|
|
49
|
+
"Coefficient of term T<sup>4</sup> in the polynomial for c<sub>p</sub>/R."
|
|
50
|
+
b1: LcFloat = 0.0
|
|
51
|
+
"Integration constant for enthalpy."
|
|
52
|
+
b2: LcFloat = 0.0
|
|
53
|
+
"Integration constant for entropy."
|
|
@@ -0,0 +1,29 @@
|
|
|
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.material.fluid.material_model_ import MaterialModel
|
|
21
|
+
from luminarycloud.params.simulation.material.fluid.material_model_ import *
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
@dataclass(kw_only=True)
|
|
25
|
+
class RealGasBackend(MaterialModel, ABC):
|
|
26
|
+
"""Library or method of computing real gas properties.
|
|
27
|
+
NOTE: This is a base class, please use the derived classes from the real_gas_backend module."""
|
|
28
|
+
|
|
29
|
+
pass
|
|
@@ -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.thermal_conductivity_model_ import (
|
|
21
21
|
ThermalConductivityModel,
|