luminarycloud 0.15.2__py3-none-any.whl → 0.15.4__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.
Files changed (255) hide show
  1. luminarycloud/__init__.py +1 -0
  2. luminarycloud/_helpers/_code_representation.py +44 -19
  3. luminarycloud/_helpers/_create_simulation.py +2 -0
  4. luminarycloud/_helpers/_entity_identifier.py +6 -0
  5. luminarycloud/_helpers/named_variables.py +6 -15
  6. luminarycloud/_helpers/warnings/experimental.py +6 -2
  7. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.py +103 -81
  8. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +37 -1
  9. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.py +33 -0
  10. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.pyi +10 -0
  11. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +45 -15
  12. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +104 -22
  13. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +46 -46
  14. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +7 -1
  15. luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.py +12 -12
  16. luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.pyi +10 -2
  17. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +221 -143
  18. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +154 -7
  19. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.py +33 -0
  20. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.pyi +10 -0
  21. luminarycloud/_proto/assistant/assistant_pb2.py +92 -71
  22. luminarycloud/_proto/assistant/assistant_pb2.pyi +58 -11
  23. luminarycloud/_proto/assistant/assistant_pb2_grpc.py +47 -13
  24. luminarycloud/_proto/assistant/assistant_pb2_grpc.pyi +18 -6
  25. luminarycloud/_proto/client/simulation_pb2.py +373 -324
  26. luminarycloud/_proto/client/simulation_pb2.pyi +123 -3
  27. luminarycloud/_proto/fvm/solver_results_pb2.py +25 -11
  28. luminarycloud/_proto/fvm/solver_results_pb2.pyi +24 -1
  29. luminarycloud/_proto/geometry/geometry_pb2.py +64 -63
  30. luminarycloud/_proto/geometry/geometry_pb2.pyi +11 -3
  31. luminarycloud/_proto/hexmesh/hexmesh_pb2.py +18 -14
  32. luminarycloud/_proto/hexmesh/hexmesh_pb2.pyi +14 -4
  33. luminarycloud/_proto/named_variable_set/named_variable_set_pb2.py +49 -0
  34. luminarycloud/_proto/named_variable_set/named_variable_set_pb2.pyi +53 -0
  35. luminarycloud/_proto/namedvariableset/namedvariableset_pb2.py +49 -0
  36. luminarycloud/_proto/namedvariableset/namedvariableset_pb2.pyi +53 -0
  37. luminarycloud/_proto/quantity/quantity_pb2.py +8 -5
  38. luminarycloud/_proto/quantity/quantity_pb2.pyi +2 -0
  39. luminarycloud/_wrapper.py +26 -7
  40. luminarycloud/enum/__init__.py +5 -0
  41. luminarycloud/enum/physics_ai_lifecycle_state.py +30 -0
  42. luminarycloud/enum/quantity_type.py +43 -0
  43. luminarycloud/enum/vis_enums.py +6 -2
  44. luminarycloud/geometry.py +46 -2
  45. luminarycloud/meshing/mesh_generation_params.py +6 -5
  46. luminarycloud/meshing/sizing_strategy/sizing_strategies.py +2 -1
  47. luminarycloud/named_variable_set.py +13 -6
  48. luminarycloud/params/enum/_enum_wrappers.py +68 -0
  49. luminarycloud/params/simulation/_lib.py +1 -1
  50. luminarycloud/params/simulation/adaptive_mesh_refinement/boundary_layer_profile_.py +5 -6
  51. luminarycloud/params/simulation/adaptive_mesh_refinement_.py +6 -7
  52. luminarycloud/params/simulation/adjoint_.py +3 -4
  53. luminarycloud/params/simulation/basic/gravity/gravity_off_.py +3 -4
  54. luminarycloud/params/simulation/basic/gravity/gravity_on_.py +3 -4
  55. luminarycloud/params/simulation/basic/gravity_.py +3 -4
  56. luminarycloud/params/simulation/body_frame_.py +3 -4
  57. luminarycloud/params/simulation/entity_relationships/volume_material_relationship_.py +9 -6
  58. luminarycloud/params/simulation/entity_relationships/volume_physics_relationship_.py +9 -6
  59. luminarycloud/params/simulation/entity_relationships_.py +3 -4
  60. luminarycloud/params/simulation/general_.py +3 -4
  61. luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_off_.py +3 -4
  62. luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_on_.py +5 -6
  63. luminarycloud/params/simulation/material/fluid/boussinesq_approximation_.py +3 -4
  64. luminarycloud/params/simulation/material/fluid/material_model/ideal_gas_.py +5 -6
  65. luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_.py +4 -5
  66. luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_with_energy_.py +5 -6
  67. luminarycloud/params/simulation/material/fluid/material_model_.py +3 -4
  68. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_conductivity_.py +4 -5
  69. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_prandtl_number_.py +4 -5
  70. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/temperature_dependent_conductivity_.py +3 -4
  71. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model_.py +3 -4
  72. luminarycloud/params/simulation/material/fluid/viscosity_model/prescribed_viscosity_.py +4 -5
  73. luminarycloud/params/simulation/material/fluid/viscosity_model/sutherland_.py +6 -7
  74. luminarycloud/params/simulation/material/fluid/viscosity_model/temperature_dependent_viscosity_.py +3 -4
  75. luminarycloud/params/simulation/material/fluid/viscosity_model_.py +3 -4
  76. luminarycloud/params/simulation/material/material_fluid_.py +4 -5
  77. luminarycloud/params/simulation/material/material_solid_.py +6 -7
  78. luminarycloud/params/simulation/material_entity_.py +6 -5
  79. luminarycloud/params/simulation/monitor_plane_.py +4 -5
  80. luminarycloud/params/simulation/motion_data/frame_transforms/no_transform_.py +3 -4
  81. luminarycloud/params/simulation/motion_data/frame_transforms/rotational_transform_.py +3 -4
  82. luminarycloud/params/simulation/motion_data/frame_transforms/translational_transform_.py +3 -4
  83. luminarycloud/params/simulation/motion_data/frame_transforms_.py +3 -4
  84. luminarycloud/params/simulation/motion_data/motion_type/constant_angular_motion_.py +3 -4
  85. luminarycloud/params/simulation/motion_data/motion_type/constant_translation_motion_.py +3 -4
  86. luminarycloud/params/simulation/motion_data/motion_type_.py +3 -4
  87. luminarycloud/params/simulation/motion_data_.py +3 -4
  88. luminarycloud/params/simulation/multi_physics_coupling_options_.py +3 -4
  89. luminarycloud/params/simulation/output_.py +3 -4
  90. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_normal_vector_.py +3 -4
  91. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_rotation_angles_.py +3 -4
  92. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection_.py +3 -4
  93. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk_.py +5 -6
  94. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_line_.py +3 -4
  95. luminarycloud/params/simulation/particle_group/particle_group_type/probe_points_.py +3 -4
  96. luminarycloud/params/simulation/particle_group/particle_group_type/source_points_.py +3 -4
  97. luminarycloud/params/simulation/particle_group/particle_group_type_.py +3 -4
  98. luminarycloud/params/simulation/particle_group_.py +3 -4
  99. luminarycloud/params/simulation/physics/fluid/adjoint_controls_fluid_.py +4 -5
  100. luminarycloud/params/simulation/physics/fluid/basic_fluid_.py +3 -4
  101. luminarycloud/params/simulation/physics/fluid/boundary_conditions/farfield_.py +9 -10
  102. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/fan_curve_inlet_.py +5 -6
  103. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mach_inlet_.py +5 -6
  104. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mass_flow_inlet_.py +4 -5
  105. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/total_pressure_inlet_.py +4 -5
  106. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_components_inlet_.py +4 -5
  107. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_magnitude_inlet_.py +5 -6
  108. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet_.py +4 -5
  109. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/fan_curve_outlet_.py +5 -6
  110. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_pressure_.py +4 -5
  111. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_corrected_mass_flow_rate_.py +7 -8
  112. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_mass_flow_rate_.py +5 -6
  113. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy_.py +3 -4
  114. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet_.py +3 -4
  115. luminarycloud/params/simulation/physics/fluid/boundary_conditions/symmetry_.py +3 -4
  116. luminarycloud/params/simulation/physics/fluid/boundary_conditions/turbulence_boundary_conditions_.py +9 -10
  117. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_heat_flux_.py +4 -5
  118. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_temperature_.py +4 -5
  119. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/no_slip_.py +4 -5
  120. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/slip_.py +3 -4
  121. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/wall_model_.py +4 -5
  122. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_energy_.py +3 -4
  123. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_momentum_.py +3 -4
  124. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall_.py +3 -4
  125. luminarycloud/params/simulation/physics/fluid/boundary_conditions_fluid_.py +3 -4
  126. luminarycloud/params/simulation/physics/fluid/initialization/fluid_existing_solution_.py +3 -4
  127. luminarycloud/params/simulation/physics/fluid/initialization/fluid_farfield_values_.py +3 -4
  128. luminarycloud/params/simulation/physics/fluid/initialization/fluid_prescribed_values_.py +5 -6
  129. luminarycloud/params/simulation/physics/fluid/initialization/turbulence_initialization_.py +9 -10
  130. luminarycloud/params/simulation/physics/fluid/initialization_fluid_.py +3 -4
  131. luminarycloud/params/simulation/physics/fluid/physical_behavior/blade_element_airfoil_data_.py +4 -5
  132. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_blade_element_.py +3 -4
  133. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_radial_distribution_.py +6 -7
  134. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_uniform_thrust_.py +4 -5
  135. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/fan_curve_internal_.py +4 -5
  136. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model_.py +3 -4
  137. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model/actuator_line_blade_element_.py +3 -4
  138. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model_.py +3 -4
  139. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/blade_element_params_.py +5 -6
  140. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_acceleration_source_.py +3 -4
  141. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_mass_source_.py +4 -5
  142. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model_.py +3 -4
  143. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model_.py +3 -4
  144. luminarycloud/params/simulation/physics/fluid/physical_behavior_.py +3 -4
  145. luminarycloud/params/simulation/physics/fluid/porous_behavior_.py +4 -5
  146. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_explicit_relaxation_.py +3 -4
  147. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_off_.py +3 -4
  148. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_on_.py +4 -5
  149. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup_.py +3 -4
  150. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation_.py +8 -9
  151. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method_.py +3 -4
  152. luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/cfl_based_.py +4 -5
  153. luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/fixed_pseudo_time_step_.py +4 -5
  154. luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method_.py +3 -4
  155. luminarycloud/params/simulation/physics/fluid/solution_controls_fluid_.py +3 -4
  156. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ec2_.py +3 -4
  157. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/fds_.py +5 -6
  158. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ld2_.py +5 -6
  159. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/rhie_chow_.py +4 -5
  160. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_.py +3 -4
  161. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/first_order_.py +3 -4
  162. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/second_order_.py +8 -9
  163. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order_.py +3 -4
  164. luminarycloud/params/simulation/physics/fluid/spatial_discretization_fluid_.py +4 -5
  165. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_.py +3 -4
  166. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_vtm_.py +3 -4
  167. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/iddes_.py +3 -4
  168. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation_.py +3 -4
  169. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/custom_komega_sst_constants_.py +16 -17
  170. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/default_komega_sst_constants_.py +3 -4
  171. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/komega_sst_constants_.py +3 -4
  172. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst_.py +3 -4
  173. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/custom_spalart_allmaras_constants_.py +15 -16
  174. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/default_spalart_allmaras_constants_.py +3 -4
  175. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/spalart_allmaras_constants_.py +3 -4
  176. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras_.py +3 -4
  177. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/amd_.py +4 -5
  178. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/sigma_.py +4 -5
  179. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/smagorinsky_.py +4 -5
  180. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/vreman_.py +4 -5
  181. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/wale_.py +4 -5
  182. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model_.py +3 -4
  183. luminarycloud/params/simulation/physics/fluid/turbulence_.py +5 -6
  184. luminarycloud/params/simulation/physics/fluid_.py +7 -6
  185. luminarycloud/params/simulation/physics/heat/adjoint_controls_heat_.py +3 -4
  186. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_convection_.py +5 -6
  187. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_heat_flux_.py +4 -5
  188. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_integrated_heat_flux_.py +4 -5
  189. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_symmetry_.py +3 -4
  190. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_temperature_.py +4 -5
  191. luminarycloud/params/simulation/physics/heat/boundary_conditions_heat_.py +3 -4
  192. luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_.py +4 -5
  193. luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_per_unit_of_volume_.py +4 -5
  194. luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type_.py +3 -4
  195. luminarycloud/params/simulation/physics/heat/heat_source_.py +3 -4
  196. luminarycloud/params/simulation/physics/heat/initialization/heat_existing_solution_.py +3 -4
  197. luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values_.py +4 -5
  198. luminarycloud/params/simulation/physics/heat/initialization_heat_.py +3 -4
  199. luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method/heat_implicit_relaxation_.py +3 -4
  200. luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method_.py +3 -4
  201. luminarycloud/params/simulation/physics/heat/solution_controls_heat_.py +3 -4
  202. luminarycloud/params/simulation/physics/heat/spatial_discretization_heat_.py +5 -6
  203. luminarycloud/params/simulation/physics/heat_.py +5 -5
  204. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type/rotational_periodicity_.py +3 -4
  205. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type/translational_periodicity_.py +3 -4
  206. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type_.py +3 -4
  207. luminarycloud/params/simulation/physics/periodic_pair_.py +3 -4
  208. luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/gauss_seidel_.py +3 -4
  209. luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/krylov_amg_.py +4 -5
  210. luminarycloud/params/simulation/physics/solution_controls/linear_solver_type_.py +4 -5
  211. luminarycloud/params/simulation/physics_.py +6 -5
  212. luminarycloud/params/simulation/simulation_param_.py +3 -4
  213. luminarycloud/params/simulation/sliding_interfaces_.py +3 -4
  214. luminarycloud/params/simulation/surface_name_.py +3 -4
  215. luminarycloud/params/simulation/time/compute_statistics/compute_statistics_off_.py +3 -4
  216. luminarycloud/params/simulation/time/compute_statistics/compute_statistics_on_.py +3 -4
  217. luminarycloud/params/simulation/time/compute_statistics_.py +3 -4
  218. luminarycloud/params/simulation/time/time_marching/time_explicit_.py +3 -4
  219. luminarycloud/params/simulation/time/time_marching/time_implicit_.py +3 -4
  220. luminarycloud/params/simulation/time/time_marching_.py +3 -4
  221. luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_off_.py +3 -4
  222. luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_on_.py +4 -5
  223. luminarycloud/params/simulation/time/time_step_ramp_.py +3 -4
  224. luminarycloud/params/simulation/time_.py +4 -5
  225. luminarycloud/params/simulation/volume_entity_.py +6 -5
  226. luminarycloud/physics_ai/__init__.py +2 -0
  227. luminarycloud/physics_ai/architectures.py +42 -8
  228. luminarycloud/physics_ai/inference.py +0 -2
  229. luminarycloud/physics_ai/models.py +44 -15
  230. luminarycloud/pipeline_util/dictable.py +27 -0
  231. luminarycloud/pipeline_util/yaml.py +55 -0
  232. luminarycloud/pipelines/__init__.py +29 -0
  233. luminarycloud/pipelines/core.py +225 -0
  234. luminarycloud/pipelines/operators.py +197 -0
  235. luminarycloud/pipelines/parameters.py +42 -0
  236. luminarycloud/project.py +60 -9
  237. luminarycloud/simulation.py +35 -4
  238. luminarycloud/simulation_param.py +16 -12
  239. luminarycloud/simulation_template.py +31 -12
  240. luminarycloud/solution.py +1 -1
  241. luminarycloud/types/__init__.py +2 -0
  242. luminarycloud/types/adfloat.py +50 -8
  243. luminarycloud/types/ids.py +2 -0
  244. luminarycloud/types/vector3.py +2 -1
  245. luminarycloud/vis/__init__.py +12 -5
  246. luminarycloud/vis/data_extraction.py +546 -0
  247. luminarycloud/vis/display.py +64 -8
  248. luminarycloud/vis/filters.py +183 -43
  249. luminarycloud/vis/interactive_scene.py +2 -1
  250. luminarycloud/vis/primitives.py +38 -0
  251. luminarycloud/vis/vis_util.py +56 -0
  252. luminarycloud/vis/visualization.py +241 -71
  253. {luminarycloud-0.15.2.dist-info → luminarycloud-0.15.4.dist-info}/METADATA +3 -1
  254. {luminarycloud-0.15.2.dist-info → luminarycloud-0.15.4.dist-info}/RECORD +255 -240
  255. {luminarycloud-0.15.2.dist-info → luminarycloud-0.15.4.dist-info}/WHEEL +0 -0
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,5 +27,5 @@ from luminarycloud.params.simulation.physics.fluid.turbulence.sub_grid_scale_mod
28
27
  class Smagorinsky(SubGridScaleModel):
29
28
  """Smagorinsky eddy viscosity model."""
30
29
 
31
- c_s: float = 0.1
30
+ c_s: LcFloat = 0.1
32
31
  "Coefficient of the Smagorinsky eddy viscosity model."
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,5 +27,5 @@ from luminarycloud.params.simulation.physics.fluid.turbulence.sub_grid_scale_mod
28
27
  class Vreman(SubGridScaleModel):
29
28
  """Vreman eddy viscosity model."""
30
29
 
31
- c_vreman: float = 0.07225
30
+ c_vreman: LcFloat = 0.07225
32
31
  "Coefficient of the Vreman eddy viscosity model."
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,5 +27,5 @@ from luminarycloud.params.simulation.physics.fluid.turbulence.sub_grid_scale_mod
28
27
  class Wale(SubGridScaleModel):
29
28
  """Wall adapting local eddy (WALE) viscosity model."""
30
29
 
31
- c_wale: float = 0.325
30
+ c_wale: LcFloat = 0.325
32
31
  "Coefficient of the WALE eddy viscosity model."
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -58,7 +57,7 @@ class Turbulence(CodeRepr, ParamGroupWrapper[clientpb.Turbulence]):
58
57
  "Select a Detached Eddy Simulation (DES) formulation. Possible types: ``DdesVtm``, ``DdesVtmSigma``, ``Iddes``, ``Ddes``, ``Des97``, ``Zdes`` from the ``des_formulation`` module."
59
58
  sub_grid_scale_model: SubGridScaleModel | None = field(default_factory=Vreman)
60
59
  "Sub-grid scale models available for Large Eddy Simulation (LES). Possible types: ``Smagorinsky``, ``Vreman``, ``Wale``, ``Sigma``, ``Amd`` from the ``sub_grid_scale_model`` module."
61
- turbulent_prandtl_number: float = 0.85
60
+ turbulent_prandtl_number: LcFloat = 0.85
62
61
  "Turbulent Prandtl number for computing an effective thermal conductivity for heat transport."
63
62
  transition_model: enum.TransitionModel = enum.TransitionModel.NO_TRANSITION
64
63
  "Laminar-turbulent transition models available for Reynolds-averaged Navier-Stokes (RANS)."
@@ -66,7 +65,7 @@ class Turbulence(CodeRepr, ParamGroupWrapper[clientpb.Turbulence]):
66
65
  enum.TransitionModelCrossFlow.TRANSITION_MODEL_CROSS_FLOW_OFF
67
66
  )
68
67
  "Crossflow instability treatment for transition model."
69
- transition_free_stream_turbulence_intensity: float = 0.002
68
+ transition_free_stream_turbulence_intensity: LcFloat = 0.002
70
69
  "The ratio of the root-mean-square velocity fluctuations to the free stream velocity. A higher number indicates a greater degree of turbulence in the incoming flow."
71
70
 
72
71
  def _to_proto(self) -> clientpb.Turbulence:
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -165,7 +164,8 @@ class Fluid(CodeRepr, ParamGroupWrapper[clientpb.Fluid]):
165
164
  self.turbulence = SpalartAllmaras()
166
165
  elif proto.turbulence.turbulence_model == clientpb.KOMEGA_SST:
167
166
  self.turbulence = KomegaSst()
168
- self.turbulence._from_proto(proto.turbulence)
167
+ if self.turbulence is not None:
168
+ self.turbulence._from_proto(proto.turbulence)
169
169
  self.solution_controls = SolutionControlsFluid.from_proto(proto.solution_controls_fluid)
170
170
  self.adjoint_controls = AdjointControlsFluid.from_proto(proto.adjoint_controls_fluid)
171
171
  self.spatial_discretization = SpatialDiscretizationFluid.from_proto(
@@ -226,7 +226,8 @@ class Fluid(CodeRepr, ParamGroupWrapper[clientpb.Fluid]):
226
226
  self.initialization = FluidFarfieldValues()
227
227
  elif proto.initialization_fluid.initialization_type == clientpb.EXISTING_SOLUTION:
228
228
  self.initialization = FluidExistingSolution()
229
- self.initialization._from_proto(proto.initialization_fluid)
229
+ if self.initialization is not None:
230
+ self.initialization._from_proto(proto.initialization_fluid)
230
231
  self.physical_behavior = [PhysicalBehavior.from_proto(v) for v in proto.physical_behavior]
231
232
  self.porous_behavior = [PorousBehavior.from_proto(v) for v in proto.porous_behavior]
232
233
  return None
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,9 +27,9 @@ from luminarycloud.params.simulation.physics.heat.boundary_conditions_heat_ impo
28
27
  class HeatBcConvection(BoundaryConditionsHeat):
29
28
  """Convective heat transfer."""
30
29
 
31
- fluid_temperature: float = 288.15
30
+ fluid_temperature: LcFloat = 288.15
32
31
  "Temperature at the wall boundary surfaces."
33
- heat_transfer_coefficient: float = 0.0
32
+ heat_transfer_coefficient: LcFloat = 0.0
34
33
  "Heat transfer coefficient for convective heat transfer. Allowed range [0, infinity)."
35
34
 
36
35
  def _to_proto(self) -> clientpb.BoundaryConditionsHeat:
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,7 +27,7 @@ from luminarycloud.params.simulation.physics.heat.boundary_conditions_heat_ impo
28
27
  class HeatBcHeatFlux(BoundaryConditionsHeat):
29
28
  """Heat flux."""
30
29
 
31
- heat_flux: float = 0.0
30
+ heat_flux: LcFloat = 0.0
32
31
  "Heat flux per unit area at wall boundary surfaces. Negative values increase temperatures at the wall while positive values decrease it. Enter 0 for an adiabatic wall."
33
32
  heat_flux_column_index: int = 0
34
33
  "Index of the column of the table in profile_bc_data for heat flux."
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,7 +27,7 @@ from luminarycloud.params.simulation.physics.heat.boundary_conditions_heat_ impo
28
27
  class HeatBcIntegratedHeatFlux(BoundaryConditionsHeat):
29
28
  """Integrated heat flux."""
30
29
 
31
- heat_flux: float = 0.0
30
+ heat_flux: LcFloat = 0.0
32
31
  "Total heat flux (power) at wall boundary surfaces. Negative values increase temperatures at the wall while positive values decrease it. Enter 0 for an adiabatic wall."
33
32
  heat_flux_column_index: int = 0
34
33
  "Index of the column of the table in profile_bc_data for heat flux."
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,7 +27,7 @@ from luminarycloud.params.simulation.physics.heat.boundary_conditions_heat_ impo
28
27
  class HeatBcTemperature(BoundaryConditionsHeat):
29
28
  """Fixed temperature."""
30
29
 
31
- temperature: float = 288.15
30
+ temperature: LcFloat = 288.15
32
31
  "Temperature at the wall boundary surfaces."
33
32
 
34
33
  def _to_proto(self) -> clientpb.BoundaryConditionsHeat:
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,5 +27,5 @@ from luminarycloud.params.simulation.physics.heat.heat_source.heat_source_type_
28
27
  class HeatSourceTypePower(HeatSourceType):
29
28
  """Specify heat source power in Watts."""
30
29
 
31
- power: float = 0.0
30
+ power: LcFloat = 0.0
32
31
  "Power of the heat source."
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -28,5 +27,5 @@ from luminarycloud.params.simulation.physics.heat.heat_source.heat_source_type_
28
27
  class HeatSourceTypePowerPerUnitOfVolume(HeatSourceType):
29
28
  """Specify heat source power in Watts per unit volume."""
30
29
 
31
- power_per_unit_volume: float = 0.0
30
+ power_per_unit_volume: LcFloat = 0.0
32
31
  "Power per unit volume of the heat source."
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -26,7 +25,7 @@ from luminarycloud.params.simulation.physics.heat.initialization_heat_ import *
26
25
  class HeatPrescribedValues(InitializationHeat):
27
26
  """Apply a uniform initial condition for all fields in space."""
28
27
 
29
- temperature: float = 288.15
28
+ temperature: LcFloat = 288.15
30
29
  "Uniform initial condition for static temperature."
31
30
 
32
31
  def _to_proto(self) -> clientpb.InitializationHeat:
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -25,11 +24,11 @@ class SpatialDiscretizationHeat(CodeRepr, ParamGroupWrapper[clientpb.SpatialDisc
25
24
 
26
25
  gradient_method: enum.GradientMethod = enum.GradientMethod.NODAL_GRADIENT
27
26
  "Method for computing the spatial gradients of fluid variables."
28
- hlsq_blend: float = 2.0
27
+ hlsq_blend: LcFloat = 2.0
29
28
  "Blending parameter in the hybrid least squares gradient methods in [1,2]."
30
29
  geometry_fixes: enum.GeometryFixes = enum.GeometryFixes.GEOMETRY_FIXES_ON
31
30
  "Strategies to cope with problematic mesh regions (e.g. high skewness angles)."
32
- geometry_fixes_mitigations: float = 0.25
31
+ geometry_fixes_mitigations: LcFloat = 0.25
33
32
  "Magnitude of the geometrical fixes mitigations. Expected value within [0,1]. The higher this value, the more numerical dissipation is added at control volumes with low-quality topological properties."
34
33
  preset: enum.SpatialDiscretizationHeatPreset = (
35
34
  enum.SpatialDiscretizationHeatPreset.DEFAULT_SPATIAL_DISCRETIZATION_HEAT
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -155,7 +154,8 @@ class Heat(CodeRepr, ParamGroupWrapper[clientpb.Heat]):
155
154
  self.initialization = HeatPrescribedValues()
156
155
  elif proto.initialization_heat.initialization_type == clientpb.EXISTING_SOLUTION:
157
156
  self.initialization = HeatExistingSolution()
158
- self.initialization._from_proto(proto.initialization_heat)
157
+ if self.initialization is not None:
158
+ self.initialization._from_proto(proto.initialization_heat)
159
159
  self.heat_source = [HeatSource.from_proto(v) for v in proto.heat_source]
160
160
  self.sliding_interfaces = [
161
161
  SlidingInterfaces.from_proto(v) for v in proto.sliding_interfaces
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr
@@ -5,12 +5,11 @@ from dataclasses import dataclass, field
5
5
  from typing import Any
6
6
  from uuid import uuid4
7
7
 
8
- from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
9
8
  from google.protobuf.message import Message as _Message
10
-
11
- from luminarycloud.tables import RectilinearTable
12
- from luminarycloud.types import Vector3
9
+ from luminarycloud.tables import RectilinearTable, _param_name_to_table_type
10
+ from luminarycloud.types import Vector3, LcFloat
13
11
  from luminarycloud.types.adfloat import _to_ad_proto, _from_ad_proto
12
+ from luminarycloud._helpers._entity_identifier import _create_entity_identifier
14
13
  from luminarycloud._proto.client import simulation_pb2 as clientpb
15
14
  from luminarycloud._proto.client.entity_pb2 import EntityIdentifier
16
15
  from luminarycloud._helpers import CodeRepr