luminarycloud 0.13.1__py3-none-any.whl → 0.14.1__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 +3 -0
- luminarycloud/_client/client.py +4 -0
- luminarycloud/_client/logging_interceptor.py +25 -0
- luminarycloud/_client/tracing.py +13 -8
- luminarycloud/_helpers/__init__.py +1 -0
- luminarycloud/_helpers/download.py +28 -1
- luminarycloud/_helpers/named_variables.py +25 -0
- luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.py +40 -40
- luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.pyi +8 -2
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2.py +182 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2.pyi +260 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2_grpc.py +204 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2_grpc.pyi +75 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +12 -12
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +5 -1
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2_grpc.py +2 -1
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2_grpc.pyi +6 -2
- luminarycloud/_proto/api/v0/luminarycloud/solution/solution_pb2.py +36 -14
- luminarycloud/_proto/api/v0/luminarycloud/solution/solution_pb2.pyi +37 -1
- luminarycloud/_proto/api/v0/luminarycloud/solution/solution_pb2_grpc.py +34 -0
- luminarycloud/_proto/api/v0/luminarycloud/solution/solution_pb2_grpc.pyi +12 -0
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +156 -132
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +65 -7
- luminarycloud/_proto/assistant/assistant_pb2.py +172 -23
- luminarycloud/_proto/assistant/assistant_pb2.pyi +358 -4
- luminarycloud/_proto/client/simulation_pb2.py +284 -283
- luminarycloud/_proto/client/simulation_pb2.pyi +37 -32
- luminarycloud/_proto/geometry/geometry_pb2.py +46 -46
- luminarycloud/_proto/geometry/geometry_pb2.pyi +6 -1
- luminarycloud/_proto/hexmesh/hexmesh_pb2.py +138 -37
- luminarycloud/_proto/hexmesh/hexmesh_pb2.pyi +218 -37
- luminarycloud/_proto/quantity/quantity_pb2.py +4 -4
- luminarycloud/enum/vis_enums.py +26 -11
- luminarycloud/named_variable_set.py +121 -0
- luminarycloud/params/__init__.py +1 -2
- luminarycloud/params/enum/_enum_wrappers.py +861 -4
- luminarycloud/params/outputs/output.py +1 -1
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/__init__.py +1 -0
- luminarycloud/params/{param_wrappers → simulation}/_lib.py +2 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/adaptive_mesh_refinement/boundary_layer_profile_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/adaptive_mesh_refinement_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/adjoint_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/basic/gravity/gravity_off_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/basic/gravity/gravity_on_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/basic/gravity_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/body_frame_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/entity_relationships/volume_material_relationship_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/entity_relationships/volume_physics_relationship_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/entity_relationships_.py +6 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/general_.py +8 -10
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/boussinesq_approximation/boussinesq_off_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/boussinesq_approximation/boussinesq_on_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/boussinesq_approximation_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/material_model/ideal_gas_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/material_model/incompressible_fluid_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/material_model/incompressible_fluid_with_energy_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/material_model_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/thermal_conductivity_model/prescribed_conductivity_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/thermal_conductivity_model/prescribed_prandtl_number_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/thermal_conductivity_model/temperature_dependent_conductivity_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/thermal_conductivity_model_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/viscosity_model/prescribed_viscosity_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/viscosity_model/sutherland_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/viscosity_model/temperature_dependent_viscosity_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/viscosity_model_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/material_fluid_.py +32 -40
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/material_solid_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/material_entity_.py +6 -10
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/monitor_plane_.py +10 -5
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/frame_transforms/no_transform_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/frame_transforms/rotational_transform_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/frame_transforms/translational_transform_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/frame_transforms_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/motion_type/constant_angular_motion_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/motion_type/constant_translation_motion_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/motion_type_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data_.py +16 -20
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/multi_physics_coupling_options_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/output_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_normal_vector_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_rotation_angles_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection_.py +2 -2
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk_.py +49 -0
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/actuator_line_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/probe_points_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/source_points_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group_.py +20 -17
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/adjoint_controls_fluid_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/basic_fluid_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/__init__.py +0 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/farfield_.py +111 -0
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/inlet/__init__.py +1 -0
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/inlet/fan_curve_inlet_.py +4 -6
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mach_inlet_.py +55 -0
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/inlet/mass_flow_inlet_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/inlet/total_pressure_inlet_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/inlet/velocity_components_inlet_.py +8 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/inlet/velocity_magnitude_inlet_.py +8 -6
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet_.py +104 -0
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet/outlet_strategy/fan_curve_outlet_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_pressure_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_corrected_mass_flow_rate_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_mass_flow_rate_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet/outlet_strategy_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet_.py +14 -14
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/symmetry_.py +4 -4
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/turbulence_boundary_conditions_.py +50 -0
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/energy/prescribed_heat_flux_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/energy/prescribed_temperature_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/momentum/no_slip_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/momentum/slip_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/momentum/wall_model_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/wall_energy_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/wall_momentum_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall_.py +18 -18
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions_fluid_.py +9 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/initialization/__init__.py +0 -1
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/initialization/fluid_existing_solution_.py +4 -6
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_farfield_values_.py +65 -0
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_prescribed_values_.py +77 -0
- luminarycloud/params/simulation/physics/fluid/initialization/turbulence_initialization_.py +44 -0
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/initialization_fluid_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/blade_element_airfoil_data_.py +10 -5
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_blade_element_.py +6 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_radial_distribution_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_uniform_thrust_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/fan_curve_internal_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model_.py +8 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model/actuator_line_blade_element_.py +6 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model_.py +8 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/blade_element_params_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_acceleration_source_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_mass_source_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model_.py +8 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior_.py +34 -29
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/porous_behavior_.py +10 -5
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/fluid_explicit_relaxation_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_off_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_on_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation_.py +16 -16
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/pseudo_time_step_method/cfl_based_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/pseudo_time_step_method/fixed_pseudo_time_step_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/pseudo_time_step_method_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls_fluid_.py +14 -14
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme/ec2_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme/fds_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme/ld2_.py +6 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme/rhie_chow_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme_order/first_order_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme_order/second_order_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme_order_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization_fluid_.py +20 -18
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/des_formulation/ddes_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/des_formulation/ddes_vtm_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/des_formulation/iddes_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/des_formulation_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/komega_sst/constants/custom_komega_sst_constants_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/komega_sst/constants/default_komega_sst_constants_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/komega_sst/komega_sst_constants_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/komega_sst_.py +10 -12
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/spalart_allmaras/constants/custom_spalart_allmaras_constants_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/spalart_allmaras/constants/default_spalart_allmaras_constants_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/spalart_allmaras/spalart_allmaras_constants_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/spalart_allmaras_.py +10 -12
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/sub_grid_scale_model/amd_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/sub_grid_scale_model/sigma_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/sub_grid_scale_model/smagorinsky_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/sub_grid_scale_model/vreman_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/sub_grid_scale_model/wale_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/sub_grid_scale_model_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence_.py +22 -32
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid_.py +60 -78
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/adjoint_controls_heat_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/boundary_conditions/heat_bc_convection_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/boundary_conditions/heat_bc_heat_flux_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/boundary_conditions/heat_bc_integrated_heat_flux_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/boundary_conditions/heat_bc_symmetry_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/boundary_conditions/heat_bc_temperature_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/boundary_conditions_heat_.py +9 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/heat_source/heat_source_type/heat_source_type_power_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/heat_source/heat_source_type/heat_source_type_power_per_unit_of_volume_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/heat_source/heat_source_type_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/heat_source_.py +16 -11
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/initialization/heat_existing_solution_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/initialization/heat_prescribed_values_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/initialization_heat_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/solution_controls/heat_relaxation_method/heat_implicit_relaxation_.py +10 -10
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/solution_controls/heat_relaxation_method_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/solution_controls_heat_.py +6 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/spatial_discretization_heat_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat_.py +32 -40
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/periodic_pair/periodicity_type/rotational_periodicity_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/periodic_pair/periodicity_type/translational_periodicity_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/periodic_pair/periodicity_type_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/periodic_pair_.py +8 -10
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/solution_controls/linear_solver_type/gauss_seidel_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/solution_controls/linear_solver_type/krylov_amg_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/solution_controls/linear_solver_type_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics_.py +6 -6
- luminarycloud/params/{param_wrappers → simulation}/simulation_param_.py +34 -40
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/sliding_interfaces_.py +10 -5
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/surface_name_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/compute_statistics/compute_statistics_off_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/compute_statistics/compute_statistics_on_.py +4 -6
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/compute_statistics_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_marching/time_explicit_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_marching/time_implicit_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_marching_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_step_ramp/time_step_ramp_off_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_step_ramp/time_step_ramp_on_.py +4 -4
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_step_ramp_.py +2 -2
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/time_.py +20 -30
- luminarycloud/params/{param_wrappers/simulation_param → simulation}/volume_entity_.py +2 -2
- luminarycloud/project.py +83 -20
- luminarycloud/reference_values.py +1 -1
- luminarycloud/simulation.py +13 -2
- luminarycloud/simulation_param.py +94 -10
- luminarycloud/solution.py +24 -3
- luminarycloud/types/__init__.py +1 -0
- luminarycloud/types/adfloat.py +49 -19
- luminarycloud/types/ids.py +1 -0
- luminarycloud/types/vector3.py +28 -2
- luminarycloud/vis/__init__.py +2 -1
- luminarycloud/vis/display.py +57 -67
- luminarycloud/vis/filters.py +97 -16
- luminarycloud/vis/interactive_scene.py +40 -3
- luminarycloud/vis/visualization.py +84 -58
- luminarycloud/volume_selection.py +27 -15
- {luminarycloud-0.13.1.dist-info → luminarycloud-0.14.1.dist-info}/METADATA +1 -1
- luminarycloud-0.14.1.dist-info/RECORD +472 -0
- luminarycloud/params/param_wrappers/__init__.py +0 -2
- luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/actuator_disk_.py +0 -51
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/farfield_.py +0 -197
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/inlet_.py +0 -189
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/__init__.py +0 -4
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega/__init__.py +0 -5
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega/bc_komega_variables_.py +0 -37
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega/bc_turbulent_viscosity_and_intensity_komega_.py +0 -33
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega/bc_turbulent_viscosity_ratio_and_intensity_komega_.py +0 -33
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega_boundary_conditions_.py +0 -25
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras/__init__.py +0 -3
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras/bc_sa_variable_.py +0 -33
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras/bc_turbulent_viscosity_ratio_sa_.py +0 -31
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras/bc_turbulent_viscosity_sa_.py +0 -31
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras_boundary_conditions_.py +0 -25
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence_boundary_conditions_.py +0 -65
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/fluid_farfield_values_.py +0 -173
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/fluid_prescribed_values_.py +0 -185
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/__init__.py +0 -4
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega/__init__.py +0 -5
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega/init_farfield_values_komega_.py +0 -30
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega/init_turbulent_viscosity_and_intensity_komega_.py +0 -33
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega/init_turbulent_viscosity_ratio_and_intensity_komega_.py +0 -33
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega_initialization_.py +0 -25
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/__init__.py +0 -4
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_farfield_values_sa_.py +0 -30
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_sa_variable_.py +0 -31
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_turbulent_viscosity_ratio_sa_.py +0 -31
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_turbulent_viscosity_sa_.py +0 -31
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras_initialization_.py +0 -25
- luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence_initialization_.py +0 -69
- luminarycloud-0.13.1.dist-info/RECORD +0 -489
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/adaptive_mesh_refinement/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/basic/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/basic/gravity/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/entity_relationships/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/boussinesq_approximation/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/material_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/thermal_conductivity_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/material/fluid/viscosity_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/frame_transforms/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/motion_data/motion_type/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/actuator_disk/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/outlet/outlet_strategy/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/energy/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/boundary_conditions/wall/momentum/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/solution_controls/pseudo_time_step_method/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/spatial_discretization/convective_scheme_order/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/des_formulation/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/komega_sst/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/komega_sst/constants/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/spalart_allmaras/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/spalart_allmaras/constants/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/fluid/turbulence/sub_grid_scale_model/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/boundary_conditions/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/heat_source/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/heat_source/heat_source_type/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/initialization/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/solution_controls/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/heat/solution_controls/heat_relaxation_method/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/periodic_pair/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/periodic_pair/periodicity_type/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/solution_controls/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/physics/solution_controls/linear_solver_type/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/compute_statistics/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_marching/__init__.py +0 -0
- /luminarycloud/params/{param_wrappers/simulation_param → simulation}/time/time_step_ramp/__init__.py +0 -0
- {luminarycloud-0.13.1.dist-info → luminarycloud-0.14.1.dist-info}/WHEEL +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
2
|
|
|
3
|
-
from abc import ABCMeta
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
4
|
from dataclasses import dataclass, field
|
|
5
5
|
from typing import Any, Optional
|
|
6
6
|
from uuid import uuid4
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
|
15
15
|
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params.simulation._lib import ParamGroupWrapper, CodeRepr, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
2
|
|
|
3
|
-
from abc import ABCMeta
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
4
|
from dataclasses import dataclass, field
|
|
5
5
|
from typing import Any, Optional
|
|
6
6
|
from uuid import uuid4
|
|
@@ -15,10 +15,10 @@ from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
|
15
15
|
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params.simulation._lib import ParamGroupWrapper, CodeRepr, create_unique_id
|
|
19
19
|
|
|
20
|
-
from luminarycloud.params.
|
|
21
|
-
from luminarycloud.params.
|
|
20
|
+
from luminarycloud.params.simulation.time.time_step_ramp_ import TimeStepRamp
|
|
21
|
+
from luminarycloud.params.simulation.time.time_step_ramp_ import *
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
@dataclass(kw_only=True)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
2
|
|
|
3
|
-
from abc import ABCMeta
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
4
|
from dataclasses import dataclass, field
|
|
5
5
|
from typing import Any, Optional
|
|
6
6
|
from uuid import uuid4
|
|
@@ -15,10 +15,10 @@ from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
|
15
15
|
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params.simulation._lib import ParamGroupWrapper, CodeRepr, create_unique_id
|
|
19
19
|
|
|
20
|
-
from luminarycloud.params.
|
|
21
|
-
from luminarycloud.params.
|
|
20
|
+
from luminarycloud.params.simulation.time.time_step_ramp_ import TimeStepRamp
|
|
21
|
+
from luminarycloud.params.simulation.time.time_step_ramp_ import *
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
@dataclass(kw_only=True)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
2
|
|
|
3
|
-
from abc import ABCMeta
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
4
|
from dataclasses import dataclass, field
|
|
5
5
|
from typing import Any, Optional
|
|
6
6
|
from uuid import uuid4
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
|
15
15
|
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params.simulation._lib import ParamGroupWrapper, CodeRepr, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
2
|
|
|
3
|
-
from abc import ABCMeta
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
4
|
from dataclasses import dataclass, field
|
|
5
5
|
from typing import Any, Optional
|
|
6
6
|
from uuid import uuid4
|
|
@@ -15,40 +15,30 @@ from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
|
15
15
|
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params.simulation._lib import ParamGroupWrapper, CodeRepr, create_unique_id
|
|
19
19
|
|
|
20
|
-
from luminarycloud.params.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
from luminarycloud.params.param_wrappers.simulation_param.time.compute_statistics_ import *
|
|
24
|
-
from luminarycloud.params.param_wrappers.simulation_param.time.compute_statistics.compute_statistics_off_ import (
|
|
20
|
+
from luminarycloud.params.simulation.time.compute_statistics_ import ComputeStatistics
|
|
21
|
+
from luminarycloud.params.simulation.time.compute_statistics_ import *
|
|
22
|
+
from luminarycloud.params.simulation.time.compute_statistics.compute_statistics_off_ import (
|
|
25
23
|
ComputeStatisticsOff,
|
|
26
24
|
)
|
|
27
|
-
from luminarycloud.params.
|
|
28
|
-
from luminarycloud.params.
|
|
25
|
+
from luminarycloud.params.simulation.time.compute_statistics.compute_statistics_off_ import *
|
|
26
|
+
from luminarycloud.params.simulation.time.compute_statistics.compute_statistics_on_ import (
|
|
29
27
|
ComputeStatisticsOn,
|
|
30
28
|
)
|
|
31
|
-
from luminarycloud.params.
|
|
32
|
-
from luminarycloud.params.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
from luminarycloud.params.
|
|
36
|
-
from luminarycloud.params.
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
from luminarycloud.params.
|
|
40
|
-
from luminarycloud.params.
|
|
41
|
-
from luminarycloud.params.
|
|
42
|
-
from luminarycloud.params.
|
|
43
|
-
from luminarycloud.params.
|
|
44
|
-
from luminarycloud.params.param_wrappers.simulation_param.time.time_step_ramp.time_step_ramp_off_ import (
|
|
45
|
-
TimeStepRampOff,
|
|
46
|
-
)
|
|
47
|
-
from luminarycloud.params.param_wrappers.simulation_param.time.time_step_ramp.time_step_ramp_off_ import *
|
|
48
|
-
from luminarycloud.params.param_wrappers.simulation_param.time.time_step_ramp.time_step_ramp_on_ import (
|
|
49
|
-
TimeStepRampOn,
|
|
50
|
-
)
|
|
51
|
-
from luminarycloud.params.param_wrappers.simulation_param.time.time_step_ramp.time_step_ramp_on_ import *
|
|
29
|
+
from luminarycloud.params.simulation.time.compute_statistics.compute_statistics_on_ import *
|
|
30
|
+
from luminarycloud.params.simulation.time.time_marching.time_explicit_ import TimeExplicit
|
|
31
|
+
from luminarycloud.params.simulation.time.time_marching.time_explicit_ import *
|
|
32
|
+
from luminarycloud.params.simulation.time.time_marching.time_implicit_ import TimeImplicit
|
|
33
|
+
from luminarycloud.params.simulation.time.time_marching.time_implicit_ import *
|
|
34
|
+
from luminarycloud.params.simulation.time.time_marching_ import TimeMarching
|
|
35
|
+
from luminarycloud.params.simulation.time.time_marching_ import *
|
|
36
|
+
from luminarycloud.params.simulation.time.time_step_ramp_ import TimeStepRamp
|
|
37
|
+
from luminarycloud.params.simulation.time.time_step_ramp_ import *
|
|
38
|
+
from luminarycloud.params.simulation.time.time_step_ramp.time_step_ramp_off_ import TimeStepRampOff
|
|
39
|
+
from luminarycloud.params.simulation.time.time_step_ramp.time_step_ramp_off_ import *
|
|
40
|
+
from luminarycloud.params.simulation.time.time_step_ramp.time_step_ramp_on_ import TimeStepRampOn
|
|
41
|
+
from luminarycloud.params.simulation.time.time_step_ramp.time_step_ramp_on_ import *
|
|
52
42
|
|
|
53
43
|
|
|
54
44
|
@dataclass(kw_only=True)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Generated by generate_sdk_wrappers.py. DO NOT EDIT
|
|
2
2
|
|
|
3
|
-
from abc import ABCMeta
|
|
3
|
+
from abc import ABC, ABCMeta
|
|
4
4
|
from dataclasses import dataclass, field
|
|
5
5
|
from typing import Any, Optional
|
|
6
6
|
from uuid import uuid4
|
|
@@ -15,7 +15,7 @@ from luminarycloud._proto.client import simulation_pb2 as clientpb
|
|
|
15
15
|
from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
|
|
16
16
|
import luminarycloud.params.enum._enum_wrappers as enum
|
|
17
17
|
|
|
18
|
-
from luminarycloud.params.
|
|
18
|
+
from luminarycloud.params.simulation._lib import ParamGroupWrapper, CodeRepr, create_unique_id
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
@dataclass(kw_only=True)
|
luminarycloud/project.py
CHANGED
|
@@ -2,14 +2,18 @@
|
|
|
2
2
|
from __future__ import annotations
|
|
3
3
|
|
|
4
4
|
import re
|
|
5
|
+
import uuid
|
|
5
6
|
from datetime import datetime
|
|
6
7
|
from os import PathLike, path
|
|
7
|
-
from typing import TYPE_CHECKING, Optional
|
|
8
|
+
from typing import TYPE_CHECKING, Any, Dict, Optional, Union
|
|
9
|
+
|
|
10
|
+
import concurrent
|
|
8
11
|
|
|
9
12
|
import grpc
|
|
10
13
|
|
|
11
14
|
import luminarycloud as lc
|
|
12
|
-
from luminarycloud.
|
|
15
|
+
from luminarycloud._helpers.named_variables import _named_variables_to_proto
|
|
16
|
+
from luminarycloud.params.simulation.adjoint_ import Adjoint
|
|
13
17
|
|
|
14
18
|
from ._client import get_default_client
|
|
15
19
|
from ._helpers import (
|
|
@@ -22,18 +26,20 @@ from ._helpers import (
|
|
|
22
26
|
upload_mesh,
|
|
23
27
|
upload_table_as_json,
|
|
24
28
|
)
|
|
25
|
-
from luminarycloud._helpers import util
|
|
26
29
|
from ._helpers.warnings import deprecated, experimental
|
|
27
30
|
from ._proto.api.v0.luminarycloud.geometry import geometry_pb2 as geometrypb
|
|
28
31
|
from ._proto.api.v0.luminarycloud.mesh import mesh_pb2 as meshpb
|
|
32
|
+
from ._proto.api.v0.luminarycloud.named_variable_set import (
|
|
33
|
+
named_variable_set_pb2 as namedvariablepb,
|
|
34
|
+
)
|
|
29
35
|
from ._proto.api.v0.luminarycloud.project import project_pb2 as projectpb
|
|
30
36
|
from ._proto.api.v0.luminarycloud.simulation import simulation_pb2 as simulationpb
|
|
31
37
|
from ._proto.api.v0.luminarycloud.simulation_template import (
|
|
32
38
|
simulation_template_pb2 as simtemplatepb,
|
|
33
39
|
)
|
|
34
40
|
from ._proto.client import simulation_pb2 as clientpb
|
|
35
|
-
from ._proto.upload import upload_pb2 as uploadpb
|
|
36
41
|
from ._proto.hexmesh import hexmesh_pb2 as hexmeshpb
|
|
42
|
+
from ._proto.upload import upload_pb2 as uploadpb
|
|
37
43
|
from ._wrapper import ProtoWrapper, ProtoWrapperBase
|
|
38
44
|
from .enum import GPUType, MeshType, TableType
|
|
39
45
|
from .meshing import MeshAdaptationParams, MeshGenerationParams
|
|
@@ -44,6 +50,7 @@ from .types import MeshID, ProjectID
|
|
|
44
50
|
if TYPE_CHECKING:
|
|
45
51
|
from .geometry import Geometry
|
|
46
52
|
from .mesh import Mesh
|
|
53
|
+
from .named_variable_set import NamedVariableSet
|
|
47
54
|
from .simulation import Simulation
|
|
48
55
|
from .simulation_template import SimulationTemplate
|
|
49
56
|
|
|
@@ -337,22 +344,44 @@ class Project(ProtoWrapperBase):
|
|
|
337
344
|
return lc.Mesh(res.mesh)
|
|
338
345
|
raise
|
|
339
346
|
|
|
340
|
-
def create_hex_mesh(
|
|
347
|
+
def create_hex_mesh(
|
|
348
|
+
self,
|
|
349
|
+
names_to_file_paths: Dict[str, Union[PathLike[Any], str]],
|
|
350
|
+
params: hexmeshpb.HexMeshSpec,
|
|
351
|
+
) -> "Mesh":
|
|
341
352
|
"""
|
|
342
353
|
Creates a hex mesh. Only for internal use.
|
|
343
354
|
"""
|
|
344
355
|
client = get_default_client()
|
|
345
|
-
if not str(file_path).endswith(".stl"):
|
|
346
|
-
raise ValueError("File must be a .stl file")
|
|
347
356
|
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
357
|
+
def upload_single_file(name: str, file_path: Union[PathLike[Any], str]) -> tuple[str, str]:
|
|
358
|
+
if not str(file_path).endswith(".stl"):
|
|
359
|
+
raise ValueError(f"File {file_path} must be a .stl file")
|
|
360
|
+
finish_res = upload_file(
|
|
361
|
+
client,
|
|
362
|
+
self.id,
|
|
363
|
+
uploadpb.ResourceParams(geometry_params=uploadpb.GeometryParams()),
|
|
364
|
+
file_path,
|
|
365
|
+
)[1]
|
|
366
|
+
return name, finish_res.url
|
|
367
|
+
|
|
368
|
+
names_to_uploaded_file_paths = {}
|
|
369
|
+
with concurrent.futures.ThreadPoolExecutor() as executor:
|
|
370
|
+
future_to_name = {
|
|
371
|
+
executor.submit(upload_single_file, name, file_path): name
|
|
372
|
+
for name, file_path in names_to_file_paths.items()
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
for future in concurrent.futures.as_completed(future_to_name):
|
|
376
|
+
try:
|
|
377
|
+
name, url = future.result()
|
|
378
|
+
names_to_uploaded_file_paths[name] = url
|
|
379
|
+
except Exception as exc:
|
|
380
|
+
name = future_to_name[future]
|
|
381
|
+
raise RuntimeError(f"Upload failed for {name}: {exc}")
|
|
382
|
+
|
|
383
|
+
for name, url in names_to_uploaded_file_paths.items():
|
|
384
|
+
params.names_to_file_urls[name] = url
|
|
356
385
|
|
|
357
386
|
req = meshpb.CreateHexMeshRequest(project_id=self.id, hex_mesh_config=params)
|
|
358
387
|
|
|
@@ -503,7 +532,8 @@ class Project(ProtoWrapperBase):
|
|
|
503
532
|
|
|
504
533
|
def list_simulation_templates(self) -> "list[SimulationTemplate]":
|
|
505
534
|
"""
|
|
506
|
-
List all simulation templates in project.
|
|
535
|
+
List all simulation templates in project. The first one in the list is the "setup" template,
|
|
536
|
+
which is the one that is synced to the Setup tab in the UI.
|
|
507
537
|
"""
|
|
508
538
|
req = simtemplatepb.ListSimulationTemplatesRequest(project_id=self.id)
|
|
509
539
|
res = get_default_client().ListSimulationTemplates(req)
|
|
@@ -513,7 +543,7 @@ class Project(ProtoWrapperBase):
|
|
|
513
543
|
self,
|
|
514
544
|
name: str,
|
|
515
545
|
*,
|
|
516
|
-
parameters: Optional[clientpb.SimulationParam] = None,
|
|
546
|
+
parameters: Optional[Union[clientpb.SimulationParam, SimulationParam]] = None,
|
|
517
547
|
params_json_path: Optional[PathLike | str] = None,
|
|
518
548
|
) -> "SimulationTemplate":
|
|
519
549
|
"""
|
|
@@ -533,15 +563,48 @@ class Project(ProtoWrapperBase):
|
|
|
533
563
|
Path to local JSON file containing simulation params.
|
|
534
564
|
"""
|
|
535
565
|
if params_json_path is not None:
|
|
536
|
-
|
|
537
|
-
elif parameters is None:
|
|
566
|
+
param_proto = simulation_params_from_json_path(params_json_path)
|
|
567
|
+
elif parameters is not None:
|
|
568
|
+
if isinstance(parameters, SimulationParam):
|
|
569
|
+
param_proto = parameters._to_proto()
|
|
570
|
+
else:
|
|
571
|
+
param_proto = clientpb.SimulationParam()
|
|
572
|
+
param_proto.CopyFrom(parameters)
|
|
573
|
+
else:
|
|
538
574
|
raise Exception("Either parameters or params_json_path must be set")
|
|
539
575
|
req = simtemplatepb.CreateSimulationTemplateRequest(
|
|
540
|
-
project_id=self.id, name=name, parameters=
|
|
576
|
+
project_id=self.id, name=name, parameters=param_proto
|
|
541
577
|
)
|
|
542
578
|
res = get_default_client().CreateSimulationTemplate(req)
|
|
543
579
|
return lc.SimulationTemplate(res.simulation_template)
|
|
544
580
|
|
|
581
|
+
@experimental
|
|
582
|
+
def create_named_variable_set(
|
|
583
|
+
self, name: str, named_variables: dict[str, float | str]
|
|
584
|
+
) -> NamedVariableSet:
|
|
585
|
+
"""
|
|
586
|
+
Create a new named variable set.
|
|
587
|
+
|
|
588
|
+
Note: This feature is experimental and may change or be removed without notice.
|
|
589
|
+
"""
|
|
590
|
+
req = namedvariablepb.CreateNamedVariableSetRequest(
|
|
591
|
+
project_id=self.id,
|
|
592
|
+
name=name,
|
|
593
|
+
named_variables=_named_variables_to_proto(named_variables),
|
|
594
|
+
request_id=str(uuid.uuid4()),
|
|
595
|
+
)
|
|
596
|
+
res: namedvariablepb.CreateNamedVariableSetResponse = (
|
|
597
|
+
get_default_client().CreateNamedVariableSet(req)
|
|
598
|
+
)
|
|
599
|
+
return lc.NamedVariableSet(res.named_variable_set)
|
|
600
|
+
|
|
601
|
+
def list_named_variable_sets(self) -> list[NamedVariableSet]:
|
|
602
|
+
req = namedvariablepb.ListNamedVariableSetsRequest(project_id=self.id)
|
|
603
|
+
res: namedvariablepb.ListNamedVariableSetsResponse = (
|
|
604
|
+
get_default_client().ListNamedVariableSets(req)
|
|
605
|
+
)
|
|
606
|
+
return [lc.NamedVariableSet(n) for n in res.named_variable_sets]
|
|
607
|
+
|
|
545
608
|
|
|
546
609
|
def create_project(
|
|
547
610
|
name: str,
|
|
@@ -5,7 +5,7 @@ from ._proto.base.base_pb2 import AdFloatType
|
|
|
5
5
|
from ._proto.output import reference_values_pb2 as refvalpb
|
|
6
6
|
from .enum import ReferenceValuesType
|
|
7
7
|
|
|
8
|
-
from .params.
|
|
8
|
+
from .params.simulation._lib import CodeRepr
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
@dataclass(kw_only=True)
|
luminarycloud/simulation.py
CHANGED
|
@@ -10,6 +10,7 @@ from ._proto.api.v0.luminarycloud.common import common_pb2 as commonpb
|
|
|
10
10
|
from ._proto.api.v0.luminarycloud.simulation import simulation_pb2 as simulationpb
|
|
11
11
|
from ._proto.api.v0.luminarycloud.solution import solution_pb2 as solutionpb
|
|
12
12
|
from ._proto.client import simulation_pb2 as clientpb
|
|
13
|
+
from ._proto.quantity import quantity_options_pb2 as quantityoptspb
|
|
13
14
|
from ._wrapper import ProtoWrapper, ProtoWrapperBase
|
|
14
15
|
from .enum import (
|
|
15
16
|
AveragingType,
|
|
@@ -19,6 +20,7 @@ from .enum import (
|
|
|
19
20
|
SimulationStatus,
|
|
20
21
|
Vector3Component,
|
|
21
22
|
)
|
|
23
|
+
from .simulation_param import SimulationParam
|
|
22
24
|
from .reference_values import ReferenceValues
|
|
23
25
|
from .solution import Solution
|
|
24
26
|
from .types import MeshID, ProjectID, SimulationID, Vector3Like
|
|
@@ -178,7 +180,7 @@ class Simulation(ProtoWrapperBase):
|
|
|
178
180
|
surface_ids: list[str],
|
|
179
181
|
*,
|
|
180
182
|
reference_values: ReferenceValues = None,
|
|
181
|
-
calculation_type: CalculationType = CalculationType.
|
|
183
|
+
calculation_type: CalculationType = CalculationType.AGGREGATE,
|
|
182
184
|
frame_id: str = "",
|
|
183
185
|
force_direction: Optional[Vector3Like] = None,
|
|
184
186
|
moment_center: Optional[Vector3Like] = None,
|
|
@@ -204,7 +206,7 @@ class Simulation(ProtoWrapperBase):
|
|
|
204
206
|
reference values will be used.
|
|
205
207
|
calculation_type : CalculationType, optional
|
|
206
208
|
Whether the calculation should be done for all the surfaces together or each surface
|
|
207
|
-
individually. Default is
|
|
209
|
+
individually. Default is AGGREGATE.
|
|
208
210
|
frame_id: str, optional
|
|
209
211
|
The ID of the reference frame that this output should be
|
|
210
212
|
reported in for "force" quantity types.
|
|
@@ -242,6 +244,8 @@ class Simulation(ProtoWrapperBase):
|
|
|
242
244
|
... with open(dl.filename, "w") as fp:
|
|
243
245
|
... fp.write(dl.read())
|
|
244
246
|
"""
|
|
247
|
+
if quantity_type._has_tag(quantityoptspb.TAG_COEFFICIENT) and reference_values is None:
|
|
248
|
+
print("WARNING: Quantity is a coefficient but reference values were not specified.")
|
|
245
249
|
req = simulationpb.GetSimulationSurfaceQuantityOutputRequest(
|
|
246
250
|
id=self.id,
|
|
247
251
|
quantity_type=quantity_type.value,
|
|
@@ -288,6 +292,13 @@ class Simulation(ProtoWrapperBase):
|
|
|
288
292
|
req = simulationpb.GetSimulationParametersRequest(id=self.id)
|
|
289
293
|
return get_default_client().GetSimulationParameters(req)
|
|
290
294
|
|
|
295
|
+
def get_simulation_param(self) -> SimulationParam:
|
|
296
|
+
"""
|
|
297
|
+
Returns the simulation parameters associated with this template to allow customization of
|
|
298
|
+
the parameters.
|
|
299
|
+
"""
|
|
300
|
+
return SimulationParam.from_proto(self.get_parameters())
|
|
301
|
+
|
|
291
302
|
|
|
292
303
|
def get_simulation(id: SimulationID) -> Simulation:
|
|
293
304
|
"""
|
|
@@ -17,24 +17,24 @@ from luminarycloud._proto.output import output_pb2 as outputpb
|
|
|
17
17
|
from luminarycloud._proto.quantity import quantity_options_pb2 as quantityoptspb
|
|
18
18
|
from luminarycloud.enum import AveragingType, QuantityType, SpaceAveragingType
|
|
19
19
|
from luminarycloud.params.geometry import Volume
|
|
20
|
-
from luminarycloud.params.
|
|
20
|
+
from luminarycloud.params.simulation import (
|
|
21
21
|
EntityRelationships,
|
|
22
22
|
)
|
|
23
|
-
from luminarycloud.params.
|
|
24
|
-
from luminarycloud.params.
|
|
23
|
+
from luminarycloud.params.simulation.adjoint_ import Adjoint
|
|
24
|
+
from luminarycloud.params.simulation.entity_relationships.volume_material_relationship_ import (
|
|
25
25
|
VolumeMaterialRelationship,
|
|
26
26
|
)
|
|
27
|
-
from luminarycloud.params.
|
|
27
|
+
from luminarycloud.params.simulation.entity_relationships.volume_physics_relationship_ import (
|
|
28
28
|
VolumePhysicsRelationship,
|
|
29
29
|
)
|
|
30
|
-
from luminarycloud.params.
|
|
30
|
+
from luminarycloud.params.simulation.material_entity_ import (
|
|
31
31
|
MaterialEntity,
|
|
32
32
|
)
|
|
33
|
-
from luminarycloud.params.
|
|
34
|
-
from luminarycloud.params.
|
|
33
|
+
from luminarycloud.params.simulation.physics_ import Physics
|
|
34
|
+
from luminarycloud.params.simulation.volume_entity_ import (
|
|
35
35
|
VolumeEntity,
|
|
36
36
|
)
|
|
37
|
-
from luminarycloud.params.
|
|
37
|
+
from luminarycloud.params.simulation import (
|
|
38
38
|
SimulationParam as _SimulationParam,
|
|
39
39
|
)
|
|
40
40
|
from luminarycloud.reference_values import ReferenceValues, ReferenceValuesType
|
|
@@ -79,7 +79,49 @@ class SimulationParam(_SimulationParam):
|
|
|
79
79
|
|
|
80
80
|
def assign_material(self, material: MaterialEntity, volume: Volume | str) -> None:
|
|
81
81
|
"""
|
|
82
|
-
Assigns a material entity to a volume
|
|
82
|
+
Assigns a material entity to a volume.
|
|
83
|
+
|
|
84
|
+
This method links a material entity to a specific volume in the simulation domain.
|
|
85
|
+
If the volume or material entity has not been added to the simulation parameters yet,
|
|
86
|
+
they will be added automatically.
|
|
87
|
+
|
|
88
|
+
Parameters
|
|
89
|
+
----------
|
|
90
|
+
material : MaterialEntity
|
|
91
|
+
The material entity to assign to the volume. This is typically created using
|
|
92
|
+
lc.params.simulation.MaterialEntity.
|
|
93
|
+
volume : Volume | str
|
|
94
|
+
The volume to assign the material to. Can be a Volume object or a string
|
|
95
|
+
representing the volume ID.
|
|
96
|
+
|
|
97
|
+
Examples
|
|
98
|
+
--------
|
|
99
|
+
Using volumes from list_tags():
|
|
100
|
+
|
|
101
|
+
>>> # Get the fluid volume from tags
|
|
102
|
+
>>> tags = geometry.list_tags()
|
|
103
|
+
>>> # Assume the fluid volume is tagged with "Fluid"
|
|
104
|
+
>>> fluid_volume_tag_name = "Fluid"
|
|
105
|
+
>>> fluid_tag = next(
|
|
106
|
+
... (tag for tag in tags if tag.name == fluid_volume_tag_name and tag.volumes), None
|
|
107
|
+
... )
|
|
108
|
+
>>> if fluid_tag:
|
|
109
|
+
... # Assume we want to assign the material to the first volume in the tag
|
|
110
|
+
... for fluid_volume in fluid_tag.volumes:
|
|
111
|
+
... simulation_param.assign_material(material, fluid_volume)
|
|
112
|
+
>>> else:
|
|
113
|
+
... raise ValueError("No fluid volume found")
|
|
114
|
+
|
|
115
|
+
Using volumes from list_entities():
|
|
116
|
+
|
|
117
|
+
>>> # Get the fluid volume from list_entities()
|
|
118
|
+
>>> surfaces, volumes = geometry.list_entities()
|
|
119
|
+
>>> if volumes:
|
|
120
|
+
... # Assume we want to assign the material to the first volume in the list
|
|
121
|
+
... fluid_volume_to_assign = volumes[0]
|
|
122
|
+
... simulation_param.assign_material(material, fluid_volume_to_assign)
|
|
123
|
+
>>> else:
|
|
124
|
+
... raise ValueError("No fluid volume found")
|
|
83
125
|
"""
|
|
84
126
|
volume_identifier = EntityIdentifier()
|
|
85
127
|
if isinstance(volume, str):
|
|
@@ -112,7 +154,49 @@ class SimulationParam(_SimulationParam):
|
|
|
112
154
|
|
|
113
155
|
def assign_physics(self, physics: Physics, volume: Volume | str) -> None:
|
|
114
156
|
"""
|
|
115
|
-
Assigns a physics entity to a volume
|
|
157
|
+
Assigns a physics entity to a volume.
|
|
158
|
+
|
|
159
|
+
This method links a physics entity to a specific volume in the simulation domain.
|
|
160
|
+
If the volume or physics entity has not been added to the simulation parameters yet,
|
|
161
|
+
they will be added automatically.
|
|
162
|
+
|
|
163
|
+
Parameters
|
|
164
|
+
----------
|
|
165
|
+
physics : Physics
|
|
166
|
+
The physics entity to assign to the volume. This is typically created using
|
|
167
|
+
lc.params.simulation.Physics.
|
|
168
|
+
volume : Volume | str
|
|
169
|
+
The volume to assign the physics to. Can be a Volume object or a string
|
|
170
|
+
representing the volume ID.
|
|
171
|
+
|
|
172
|
+
Examples
|
|
173
|
+
--------
|
|
174
|
+
Using volumes from list_tags():
|
|
175
|
+
|
|
176
|
+
>>> # Get the fluid volume from tags
|
|
177
|
+
>>> tags = geometry.list_tags()
|
|
178
|
+
>>> # Assume the fluid volume is tagged with "Fluid"
|
|
179
|
+
>>> fluid_volume_tag_name = "Fluid"
|
|
180
|
+
>>> fluid_tag = next(
|
|
181
|
+
... (tag for tag in tags if tag.name == fluid_volume_tag_name and tag.volumes), None
|
|
182
|
+
... )
|
|
183
|
+
>>> if fluid_tag:
|
|
184
|
+
... # Assume we want to assign the physics to the first volume in the tag
|
|
185
|
+
... for fluid_volume in fluid_tag.volumes:
|
|
186
|
+
... simulation_param.assign_physics(physics, fluid_volume)
|
|
187
|
+
>>> else:
|
|
188
|
+
... raise ValueError("No fluid volume found")
|
|
189
|
+
|
|
190
|
+
Using volumes from list_entities():
|
|
191
|
+
|
|
192
|
+
>>> # Get the fluid volume from list_entities()
|
|
193
|
+
>>> surfaces, volumes = geometry.list_entities()
|
|
194
|
+
>>> if volumes:
|
|
195
|
+
... # Assume we want to assign the physics to the first volume in the list
|
|
196
|
+
... fluid_volume_to_assign = volumes[0]
|
|
197
|
+
... simulation_param.assign_physics(physics, fluid_volume_to_assign)
|
|
198
|
+
>>> else:
|
|
199
|
+
... raise ValueError("No fluid volume found")
|
|
116
200
|
"""
|
|
117
201
|
if isinstance(volume, str):
|
|
118
202
|
volume_identifier = EntityIdentifier(id=volume)
|
luminarycloud/solution.py
CHANGED
|
@@ -6,11 +6,13 @@ from os import PathLike
|
|
|
6
6
|
import luminarycloud as lc
|
|
7
7
|
|
|
8
8
|
from ._client import get_default_client
|
|
9
|
+
from ._helpers.warnings import experimental
|
|
9
10
|
from ._helpers.download import (
|
|
10
11
|
download_surface_solution,
|
|
11
12
|
download_volume_solution,
|
|
12
13
|
download_surface_deformation_template,
|
|
13
14
|
download_surface_sensitivity_data,
|
|
15
|
+
download_parameter_sensitivity_data,
|
|
14
16
|
)
|
|
15
17
|
from ._helpers.file_chunk_stream import FileChunkStream
|
|
16
18
|
from ._proto.api.v0.luminarycloud.solution import solution_pb2 as solutionpb
|
|
@@ -79,12 +81,17 @@ class Solution(ProtoWrapperBase):
|
|
|
79
81
|
mode="r|gz",
|
|
80
82
|
)
|
|
81
83
|
|
|
82
|
-
def download_volume_data(self) -> tarfile.TarFile:
|
|
84
|
+
def download_volume_data(self, single_precision: bool = False) -> tarfile.TarFile:
|
|
83
85
|
"""
|
|
84
86
|
Download volume solution for a completed steady simulation as a gzipped tarball containing .vtu & .vtp files.
|
|
85
87
|
|
|
86
88
|
The output may be broken up into multiple .vtu files for large simulations.
|
|
87
89
|
|
|
90
|
+
Parameters
|
|
91
|
+
----------
|
|
92
|
+
single_precision : bool
|
|
93
|
+
If True, outputs floating point fields in single precision. Defaults to False.
|
|
94
|
+
|
|
88
95
|
Returns
|
|
89
96
|
-------
|
|
90
97
|
tarfile.Tarfile
|
|
@@ -108,6 +115,7 @@ class Solution(ProtoWrapperBase):
|
|
|
108
115
|
stream = download_volume_solution(
|
|
109
116
|
get_default_client(),
|
|
110
117
|
self.id,
|
|
118
|
+
single_precision=single_precision,
|
|
111
119
|
)
|
|
112
120
|
return tarfile.open(
|
|
113
121
|
name=stream.filename,
|
|
@@ -125,7 +133,7 @@ class Solution(ProtoWrapperBase):
|
|
|
125
133
|
Project.set_surface_deformation to create simulations with volume mesh morphing.
|
|
126
134
|
"""
|
|
127
135
|
stream = download_surface_deformation_template(get_default_client(), self.id)
|
|
128
|
-
|
|
136
|
+
_handle_surface_data_stream(stream, dst)
|
|
129
137
|
|
|
130
138
|
def download_surface_sensitivity_data(self, dst: Optional[PathLike] = None) -> None:
|
|
131
139
|
"""
|
|
@@ -136,4 +144,17 @@ class Solution(ProtoWrapperBase):
|
|
|
136
144
|
The IDs of the sensitivity data are consistent with the node IDs of the surface deformation.
|
|
137
145
|
"""
|
|
138
146
|
stream = download_surface_sensitivity_data(get_default_client(), self.id)
|
|
139
|
-
|
|
147
|
+
_handle_surface_data_stream(stream, dst)
|
|
148
|
+
|
|
149
|
+
@experimental
|
|
150
|
+
def download_parameter_sensitivity_data(self, dst: Optional[PathLike] = None) -> None:
|
|
151
|
+
"""
|
|
152
|
+
Download the parameter sensitivity data associated with an adjoint solution into the
|
|
153
|
+
destination file or into a default-named file. The data consists of parameter names and
|
|
154
|
+
sensitivity values (d "adjoint output" / d "SimulationParam parameter").
|
|
155
|
+
|
|
156
|
+
NOTE: This is a very experimental feature, likely to change in the future in favor of
|
|
157
|
+
including the sensitivities in a SimulationParam object directly.
|
|
158
|
+
"""
|
|
159
|
+
stream = download_parameter_sensitivity_data(get_default_client(), self.id)
|
|
160
|
+
_handle_surface_data_stream(stream, dst)
|