luminarycloud 0.15.3__py3-none-any.whl → 0.15.5__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 (242) hide show
  1. luminarycloud/__init__.py +1 -0
  2. luminarycloud/_helpers/_create_geometry.py +36 -17
  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 +77 -55
  8. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +34 -2
  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_template/simulation_template_pb2.py +12 -12
  14. luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.pyi +10 -2
  15. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.py +27 -105
  16. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.pyi +24 -173
  17. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.py +17 -113
  18. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.pyi +16 -44
  19. luminarycloud/_proto/api/v0/luminarycloud/upload/upload_pb2.py +4 -2
  20. luminarycloud/_proto/api/v0/luminarycloud/upload/upload_pb2_grpc.py +37 -0
  21. luminarycloud/_proto/api/v0/luminarycloud/upload/upload_pb2_grpc.pyi +20 -0
  22. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +221 -143
  23. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +154 -7
  24. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.py +33 -0
  25. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.pyi +10 -0
  26. luminarycloud/_proto/assistant/assistant_pb2.py +62 -61
  27. luminarycloud/_proto/client/simulation_pb2.py +349 -309
  28. luminarycloud/_proto/client/simulation_pb2.pyi +97 -2
  29. luminarycloud/_proto/fvm/solver_results_pb2.py +25 -11
  30. luminarycloud/_proto/fvm/solver_results_pb2.pyi +24 -1
  31. luminarycloud/_proto/geometry/geometry_pb2.py +63 -64
  32. luminarycloud/_proto/namedvariableset/namedvariableset_pb2.py +49 -0
  33. luminarycloud/_proto/namedvariableset/namedvariableset_pb2.pyi +53 -0
  34. luminarycloud/_proto/upload/upload_pb2.py +27 -7
  35. luminarycloud/_proto/upload/upload_pb2.pyi +31 -0
  36. luminarycloud/_wrapper.py +26 -7
  37. luminarycloud/enum/__init__.py +2 -0
  38. luminarycloud/enum/physics_ai_lifecycle_state.py +30 -0
  39. luminarycloud/enum/quantity_type.py +43 -0
  40. luminarycloud/enum/vis_enums.py +6 -2
  41. luminarycloud/geometry.py +46 -2
  42. luminarycloud/named_variable_set.py +10 -5
  43. luminarycloud/params/enum/_enum_wrappers.py +68 -0
  44. luminarycloud/params/simulation/_lib.py +1 -1
  45. luminarycloud/params/simulation/adaptive_mesh_refinement/boundary_layer_profile_.py +5 -6
  46. luminarycloud/params/simulation/adaptive_mesh_refinement_.py +6 -7
  47. luminarycloud/params/simulation/adjoint_.py +3 -4
  48. luminarycloud/params/simulation/basic/gravity/gravity_off_.py +3 -4
  49. luminarycloud/params/simulation/basic/gravity/gravity_on_.py +3 -4
  50. luminarycloud/params/simulation/basic/gravity_.py +3 -4
  51. luminarycloud/params/simulation/body_frame_.py +3 -4
  52. luminarycloud/params/simulation/entity_relationships/volume_material_relationship_.py +9 -6
  53. luminarycloud/params/simulation/entity_relationships/volume_physics_relationship_.py +9 -6
  54. luminarycloud/params/simulation/entity_relationships_.py +3 -4
  55. luminarycloud/params/simulation/general_.py +3 -4
  56. luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_off_.py +3 -4
  57. luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_on_.py +5 -6
  58. luminarycloud/params/simulation/material/fluid/boussinesq_approximation_.py +3 -4
  59. luminarycloud/params/simulation/material/fluid/material_model/ideal_gas_.py +5 -6
  60. luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_.py +4 -5
  61. luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_with_energy_.py +5 -6
  62. luminarycloud/params/simulation/material/fluid/material_model_.py +3 -4
  63. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_conductivity_.py +4 -5
  64. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_prandtl_number_.py +4 -5
  65. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/temperature_dependent_conductivity_.py +3 -4
  66. luminarycloud/params/simulation/material/fluid/thermal_conductivity_model_.py +3 -4
  67. luminarycloud/params/simulation/material/fluid/viscosity_model/prescribed_viscosity_.py +4 -5
  68. luminarycloud/params/simulation/material/fluid/viscosity_model/sutherland_.py +6 -7
  69. luminarycloud/params/simulation/material/fluid/viscosity_model/temperature_dependent_viscosity_.py +3 -4
  70. luminarycloud/params/simulation/material/fluid/viscosity_model_.py +3 -4
  71. luminarycloud/params/simulation/material/material_fluid_.py +4 -5
  72. luminarycloud/params/simulation/material/material_solid_.py +6 -7
  73. luminarycloud/params/simulation/material_entity_.py +6 -5
  74. luminarycloud/params/simulation/monitor_plane_.py +4 -5
  75. luminarycloud/params/simulation/motion_data/frame_transforms/no_transform_.py +3 -4
  76. luminarycloud/params/simulation/motion_data/frame_transforms/rotational_transform_.py +3 -4
  77. luminarycloud/params/simulation/motion_data/frame_transforms/translational_transform_.py +3 -4
  78. luminarycloud/params/simulation/motion_data/frame_transforms_.py +3 -4
  79. luminarycloud/params/simulation/motion_data/motion_type/constant_angular_motion_.py +3 -4
  80. luminarycloud/params/simulation/motion_data/motion_type/constant_translation_motion_.py +3 -4
  81. luminarycloud/params/simulation/motion_data/motion_type_.py +3 -4
  82. luminarycloud/params/simulation/motion_data_.py +3 -4
  83. luminarycloud/params/simulation/multi_physics_coupling_options_.py +3 -4
  84. luminarycloud/params/simulation/output_.py +3 -4
  85. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_normal_vector_.py +3 -4
  86. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_rotation_angles_.py +3 -4
  87. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection_.py +3 -4
  88. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk_.py +5 -6
  89. luminarycloud/params/simulation/particle_group/particle_group_type/actuator_line_.py +3 -4
  90. luminarycloud/params/simulation/particle_group/particle_group_type/probe_points_.py +3 -4
  91. luminarycloud/params/simulation/particle_group/particle_group_type/source_points_.py +3 -4
  92. luminarycloud/params/simulation/particle_group/particle_group_type_.py +3 -4
  93. luminarycloud/params/simulation/particle_group_.py +3 -4
  94. luminarycloud/params/simulation/physics/fluid/adjoint_controls_fluid_.py +4 -5
  95. luminarycloud/params/simulation/physics/fluid/basic_fluid_.py +3 -4
  96. luminarycloud/params/simulation/physics/fluid/boundary_conditions/farfield_.py +9 -10
  97. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/fan_curve_inlet_.py +5 -6
  98. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mach_inlet_.py +5 -6
  99. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mass_flow_inlet_.py +4 -5
  100. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/total_pressure_inlet_.py +4 -5
  101. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_components_inlet_.py +4 -5
  102. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_magnitude_inlet_.py +5 -6
  103. luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet_.py +4 -5
  104. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/fan_curve_outlet_.py +5 -6
  105. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_pressure_.py +4 -5
  106. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_corrected_mass_flow_rate_.py +7 -8
  107. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_mass_flow_rate_.py +5 -6
  108. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy_.py +3 -4
  109. luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet_.py +3 -4
  110. luminarycloud/params/simulation/physics/fluid/boundary_conditions/symmetry_.py +3 -4
  111. luminarycloud/params/simulation/physics/fluid/boundary_conditions/turbulence_boundary_conditions_.py +9 -10
  112. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_heat_flux_.py +4 -5
  113. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_temperature_.py +4 -5
  114. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/no_slip_.py +4 -5
  115. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/slip_.py +3 -4
  116. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/wall_model_.py +4 -5
  117. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_energy_.py +3 -4
  118. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_momentum_.py +3 -4
  119. luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall_.py +3 -4
  120. luminarycloud/params/simulation/physics/fluid/boundary_conditions_fluid_.py +3 -4
  121. luminarycloud/params/simulation/physics/fluid/initialization/fluid_existing_solution_.py +3 -4
  122. luminarycloud/params/simulation/physics/fluid/initialization/fluid_farfield_values_.py +3 -4
  123. luminarycloud/params/simulation/physics/fluid/initialization/fluid_prescribed_values_.py +5 -6
  124. luminarycloud/params/simulation/physics/fluid/initialization/turbulence_initialization_.py +9 -10
  125. luminarycloud/params/simulation/physics/fluid/initialization_fluid_.py +3 -4
  126. luminarycloud/params/simulation/physics/fluid/physical_behavior/blade_element_airfoil_data_.py +4 -5
  127. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_blade_element_.py +3 -4
  128. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_radial_distribution_.py +6 -7
  129. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_uniform_thrust_.py +4 -5
  130. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/fan_curve_internal_.py +4 -5
  131. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model_.py +3 -4
  132. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model/actuator_line_blade_element_.py +3 -4
  133. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model_.py +3 -4
  134. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/blade_element_params_.py +5 -6
  135. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_acceleration_source_.py +3 -4
  136. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_mass_source_.py +4 -5
  137. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model_.py +3 -4
  138. luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model_.py +3 -4
  139. luminarycloud/params/simulation/physics/fluid/physical_behavior_.py +3 -4
  140. luminarycloud/params/simulation/physics/fluid/porous_behavior_.py +4 -5
  141. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_explicit_relaxation_.py +3 -4
  142. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_off_.py +3 -4
  143. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_on_.py +4 -5
  144. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup_.py +3 -4
  145. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation_.py +9 -10
  146. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method_.py +3 -4
  147. luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/cfl_based_.py +4 -5
  148. luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/fixed_pseudo_time_step_.py +4 -5
  149. luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method_.py +3 -4
  150. luminarycloud/params/simulation/physics/fluid/solution_controls_fluid_.py +3 -4
  151. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ec2_.py +3 -4
  152. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/fds_.py +5 -6
  153. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ld2_.py +5 -6
  154. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/rhie_chow_.py +4 -5
  155. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_.py +3 -4
  156. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/first_order_.py +3 -4
  157. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/second_order_.py +8 -9
  158. luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order_.py +3 -4
  159. luminarycloud/params/simulation/physics/fluid/spatial_discretization_fluid_.py +4 -5
  160. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_.py +3 -4
  161. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_vtm_.py +3 -4
  162. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/iddes_.py +3 -4
  163. luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation_.py +3 -4
  164. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/custom_komega_sst_constants_.py +16 -17
  165. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/default_komega_sst_constants_.py +3 -4
  166. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/komega_sst_constants_.py +3 -4
  167. luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst_.py +3 -4
  168. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/custom_spalart_allmaras_constants_.py +15 -16
  169. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/default_spalart_allmaras_constants_.py +3 -4
  170. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/spalart_allmaras_constants_.py +3 -4
  171. luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras_.py +3 -4
  172. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/amd_.py +4 -5
  173. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/sigma_.py +4 -5
  174. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/smagorinsky_.py +4 -5
  175. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/vreman_.py +4 -5
  176. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/wale_.py +4 -5
  177. luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model_.py +3 -4
  178. luminarycloud/params/simulation/physics/fluid/turbulence_.py +6 -7
  179. luminarycloud/params/simulation/physics/fluid_.py +8 -7
  180. luminarycloud/params/simulation/physics/heat/adjoint_controls_heat_.py +3 -4
  181. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_convection_.py +5 -6
  182. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_heat_flux_.py +4 -5
  183. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_integrated_heat_flux_.py +4 -5
  184. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_symmetry_.py +3 -4
  185. luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_temperature_.py +4 -5
  186. luminarycloud/params/simulation/physics/heat/boundary_conditions_heat_.py +3 -4
  187. luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_.py +4 -5
  188. luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_per_unit_of_volume_.py +4 -5
  189. luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type_.py +3 -4
  190. luminarycloud/params/simulation/physics/heat/heat_source_.py +3 -4
  191. luminarycloud/params/simulation/physics/heat/initialization/heat_existing_solution_.py +3 -4
  192. luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values_.py +4 -5
  193. luminarycloud/params/simulation/physics/heat/initialization_heat_.py +3 -4
  194. luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method/heat_implicit_relaxation_.py +4 -5
  195. luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method_.py +3 -4
  196. luminarycloud/params/simulation/physics/heat/solution_controls_heat_.py +4 -5
  197. luminarycloud/params/simulation/physics/heat/spatial_discretization_heat_.py +5 -6
  198. luminarycloud/params/simulation/physics/heat_.py +5 -5
  199. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type/rotational_periodicity_.py +3 -4
  200. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type/translational_periodicity_.py +3 -4
  201. luminarycloud/params/simulation/physics/periodic_pair/periodicity_type_.py +3 -4
  202. luminarycloud/params/simulation/physics/periodic_pair_.py +3 -4
  203. luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/gauss_seidel_.py +3 -4
  204. luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/krylov_amg_.py +4 -5
  205. luminarycloud/params/simulation/physics/solution_controls/linear_solver_type_.py +4 -5
  206. luminarycloud/params/simulation/physics_.py +6 -5
  207. luminarycloud/params/simulation/simulation_param_.py +3 -4
  208. luminarycloud/params/simulation/sliding_interfaces_.py +3 -4
  209. luminarycloud/params/simulation/surface_name_.py +3 -4
  210. luminarycloud/params/simulation/time/compute_statistics/compute_statistics_off_.py +3 -4
  211. luminarycloud/params/simulation/time/compute_statistics/compute_statistics_on_.py +3 -4
  212. luminarycloud/params/simulation/time/compute_statistics_.py +3 -4
  213. luminarycloud/params/simulation/time/time_marching/time_explicit_.py +3 -4
  214. luminarycloud/params/simulation/time/time_marching/time_implicit_.py +3 -4
  215. luminarycloud/params/simulation/time/time_marching_.py +3 -4
  216. luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_off_.py +3 -4
  217. luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_on_.py +4 -5
  218. luminarycloud/params/simulation/time/time_step_ramp_.py +3 -4
  219. luminarycloud/params/simulation/time_.py +4 -5
  220. luminarycloud/params/simulation/volume_entity_.py +6 -5
  221. luminarycloud/physics_ai/__init__.py +2 -0
  222. luminarycloud/physics_ai/architectures.py +42 -8
  223. luminarycloud/physics_ai/inference.py +0 -2
  224. luminarycloud/physics_ai/models.py +44 -15
  225. luminarycloud/project.py +54 -3
  226. luminarycloud/simulation_template.py +21 -6
  227. luminarycloud/solution.py +1 -1
  228. luminarycloud/types/__init__.py +2 -0
  229. luminarycloud/types/adfloat.py +50 -8
  230. luminarycloud/types/ids.py +2 -0
  231. luminarycloud/vis/__init__.py +12 -2
  232. luminarycloud/vis/data_extraction.py +546 -0
  233. luminarycloud/vis/display.py +61 -6
  234. luminarycloud/vis/filters.py +199 -43
  235. luminarycloud/vis/interactive_scene.py +1 -0
  236. luminarycloud/vis/primitives.py +38 -0
  237. luminarycloud/vis/vis_util.py +56 -0
  238. luminarycloud/vis/visualization.py +224 -70
  239. {luminarycloud-0.15.3.dist-info → luminarycloud-0.15.5.dist-info}/METADATA +2 -1
  240. {luminarycloud-0.15.3.dist-info → luminarycloud-0.15.5.dist-info}/RECORD +241 -235
  241. luminarycloud/_proto/luminarycloud/luminarycloud_api.pb +0 -0
  242. {luminarycloud-0.15.3.dist-info → luminarycloud-0.15.5.dist-info}/WHEEL +0 -0
@@ -703,6 +703,23 @@ TRANSIENT: FlowBehavior.ValueType # 36606
703
703
  """Solve for a time-accurate solution of the governing equations."""
704
704
  global___FlowBehavior = FlowBehavior
705
705
 
706
+ class _NonlinearControlMethod:
707
+ ValueType = typing.NewType("ValueType", builtins.int)
708
+ V: typing_extensions.TypeAlias = ValueType
709
+
710
+ class _NonlinearControlMethodEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_NonlinearControlMethod.ValueType], builtins.type): # noqa: F821
711
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
712
+ INVALID_NONLINEAR_CONTROL_METHOD: _NonlinearControlMethod.ValueType # 0
713
+ CONTROL_METHOD_SECANT: _NonlinearControlMethod.ValueType # 29430
714
+ """Use the secant method to solve the equations."""
715
+
716
+ class NonlinearControlMethod(_NonlinearControlMethod, metaclass=_NonlinearControlMethodEnumTypeWrapper): ...
717
+
718
+ INVALID_NONLINEAR_CONTROL_METHOD: NonlinearControlMethod.ValueType # 0
719
+ CONTROL_METHOD_SECANT: NonlinearControlMethod.ValueType # 29430
720
+ """Use the secant method to solve the equations."""
721
+ global___NonlinearControlMethod = NonlinearControlMethod
722
+
706
723
  class _TimeMarching:
707
724
  ValueType = typing.NewType("ValueType", builtins.int)
708
725
  V: typing_extensions.TypeAlias = ValueType
@@ -3183,6 +3200,79 @@ class Adjoint(google.protobuf.message.Message):
3183
3200
 
3184
3201
  global___Adjoint = Adjoint
3185
3202
 
3203
+ class NonlinearControlSystem(google.protobuf.message.Message):
3204
+ """Outputs, inputs, and target values that define the control problem."""
3205
+
3206
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
3207
+
3208
+ NONLINEAR_CONTROL_OUTPUT_FIELD_NUMBER: builtins.int
3209
+ NONLINEAR_CONTROL_INPUT_FIELD_NUMBER: builtins.int
3210
+ NONLINEAR_CONTROL_TARGET_FIELD_NUMBER: builtins.int
3211
+ @property
3212
+ def nonlinear_control_output(self) -> luminarycloud._proto.output.output_pb2.Output:
3213
+ """Output for which a target value should be met."""
3214
+ nonlinear_control_input: builtins.str
3215
+ """Named variable varied by the controller to meet the target output value."""
3216
+ @property
3217
+ def nonlinear_control_target(self) -> luminarycloud._proto.base.base_pb2.AdFloatType:
3218
+ """Target value for the output."""
3219
+ def __init__(
3220
+ self,
3221
+ *,
3222
+ nonlinear_control_output: luminarycloud._proto.output.output_pb2.Output | None = ...,
3223
+ nonlinear_control_input: builtins.str = ...,
3224
+ nonlinear_control_target: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
3225
+ ) -> None: ...
3226
+ def HasField(self, field_name: typing_extensions.Literal["nonlinear_control_output", b"nonlinear_control_output", "nonlinear_control_target", b"nonlinear_control_target"]) -> builtins.bool: ...
3227
+ def ClearField(self, field_name: typing_extensions.Literal["nonlinear_control_input", b"nonlinear_control_input", "nonlinear_control_output", b"nonlinear_control_output", "nonlinear_control_target", b"nonlinear_control_target"]) -> None: ...
3228
+
3229
+ global___NonlinearControlSystem = NonlinearControlSystem
3230
+
3231
+ class NonlinearControl(google.protobuf.message.Message):
3232
+ """Determine input values such that target output values are met."""
3233
+
3234
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
3235
+
3236
+ NONLINEAR_CONTROL_SYSTEM_FIELD_NUMBER: builtins.int
3237
+ NONLINEAR_CONTROL_METHOD_FIELD_NUMBER: builtins.int
3238
+ NONLINEAR_CONTROL_START_ITERATION_FIELD_NUMBER: builtins.int
3239
+ NONLINEAR_CONTROL_INITIAL_GRADIENT_FIELD_NUMBER: builtins.int
3240
+ NONLINEAR_CONTROL_UPDATE_INTERVAL_FIELD_NUMBER: builtins.int
3241
+ NONLINEAR_CONTROL_RELAXATION_FIELD_NUMBER: builtins.int
3242
+ @property
3243
+ def nonlinear_control_system(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___NonlinearControlSystem]:
3244
+ """Outputs, inputs, and target values that define the control problem."""
3245
+ nonlinear_control_method: global___NonlinearControlMethod.ValueType
3246
+ """The method used to determine 'input' such that 'output'('input') = 'target'."""
3247
+ @property
3248
+ def nonlinear_control_start_iteration(self) -> luminarycloud._proto.base.base_pb2.Int:
3249
+ """Start the nonlinear controler after N iterations."""
3250
+ @property
3251
+ def nonlinear_control_initial_gradient(self) -> luminarycloud._proto.base.base_pb2.AdFloatType:
3252
+ """Estimate of the gradient of the function with respect to the control input,
3253
+ used for the first update of the Secant method.
3254
+ """
3255
+ @property
3256
+ def nonlinear_control_update_interval(self) -> luminarycloud._proto.base.base_pb2.Int:
3257
+ """Update the input every N iterations."""
3258
+ @property
3259
+ def nonlinear_control_relaxation(self) -> luminarycloud._proto.base.base_pb2.AdFloatType:
3260
+ """Under-relaxation factor applied to the Secant method updates of the input variables."""
3261
+ def __init__(
3262
+ self,
3263
+ *,
3264
+ nonlinear_control_system: collections.abc.Iterable[global___NonlinearControlSystem] | None = ...,
3265
+ nonlinear_control_method: global___NonlinearControlMethod.ValueType = ...,
3266
+ nonlinear_control_start_iteration: luminarycloud._proto.base.base_pb2.Int | None = ...,
3267
+ nonlinear_control_initial_gradient: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
3268
+ nonlinear_control_update_interval: luminarycloud._proto.base.base_pb2.Int | None = ...,
3269
+ nonlinear_control_relaxation: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
3270
+ ) -> None: ...
3271
+ def HasField(self, field_name: typing_extensions.Literal["nonlinear_control_initial_gradient", b"nonlinear_control_initial_gradient", "nonlinear_control_relaxation", b"nonlinear_control_relaxation", "nonlinear_control_start_iteration", b"nonlinear_control_start_iteration", "nonlinear_control_update_interval", b"nonlinear_control_update_interval"]) -> builtins.bool: ...
3272
+ def ClearField(self, field_name: typing_extensions.Literal["nonlinear_control_initial_gradient", b"nonlinear_control_initial_gradient", "nonlinear_control_method", b"nonlinear_control_method", "nonlinear_control_relaxation", b"nonlinear_control_relaxation", "nonlinear_control_start_iteration", b"nonlinear_control_start_iteration", "nonlinear_control_system", b"nonlinear_control_system", "nonlinear_control_update_interval", b"nonlinear_control_update_interval"]) -> None: ...
3273
+
3274
+ global___NonlinearControl = NonlinearControl
3275
+
3186
3276
  class Time(google.protobuf.message.Message):
3187
3277
  """Time parameters used by a transient solution (required if flow_behavior = transient)."""
3188
3278
 
@@ -5976,6 +6066,7 @@ class SimulationParam(google.protobuf.message.Message):
5976
6066
  VOLUME_ENTITY_FIELD_NUMBER: builtins.int
5977
6067
  GENERAL_FIELD_NUMBER: builtins.int
5978
6068
  ADJOINT_FIELD_NUMBER: builtins.int
6069
+ NONLINEAR_CONTROL_FIELD_NUMBER: builtins.int
5979
6070
  TIME_FIELD_NUMBER: builtins.int
5980
6071
  MOTION_DATA_FIELD_NUMBER: builtins.int
5981
6072
  PARTICLE_GROUP_FIELD_NUMBER: builtins.int
@@ -6016,6 +6107,9 @@ class SimulationParam(google.protobuf.message.Message):
6016
6107
  def adjoint(self) -> global___Adjoint:
6017
6108
  """Settings for adjoint sensitivity analysis."""
6018
6109
  @property
6110
+ def nonlinear_control(self) -> global___NonlinearControl:
6111
+ """Determine input values such that target output values are met."""
6112
+ @property
6019
6113
  def time(self) -> global___Time:
6020
6114
  """Time parameters used by a transient solution (required if flow_behavior = transient)."""
6021
6115
  @property
@@ -6079,6 +6173,7 @@ class SimulationParam(google.protobuf.message.Message):
6079
6173
  volume_entity: collections.abc.Iterable[global___VolumeEntity] | None = ...,
6080
6174
  general: global___General | None = ...,
6081
6175
  adjoint: global___Adjoint | None = ...,
6176
+ nonlinear_control: global___NonlinearControl | None = ...,
6082
6177
  time: global___Time | None = ...,
6083
6178
  motion_data: collections.abc.Iterable[global___MotionData] | None = ...,
6084
6179
  particle_group: collections.abc.Iterable[global___ParticleGroup] | None = ...,
@@ -6096,7 +6191,7 @@ class SimulationParam(google.protobuf.message.Message):
6096
6191
  interfaces: collections.abc.Iterable[global___SlidingInterfaces] | None = ...,
6097
6192
  mp_coupling_options: global___MultiPhysicsCouplingOptions | None = ...,
6098
6193
  ) -> None: ...
6099
- def HasField(self, field_name: typing_extensions.Literal["adaptive_mesh_refinement", b"adaptive_mesh_refinement", "adjoint", b"adjoint", "body_frame", b"body_frame", "convergence_criteria", b"convergence_criteria", "entity_relationships", b"entity_relationships", "general", b"general", "input", b"input", "mp_coupling_options", b"mp_coupling_options", "output", b"output", "reference_values", b"reference_values", "time", b"time", "units", b"units"]) -> builtins.bool: ...
6100
- def ClearField(self, field_name: typing_extensions.Literal["adaptive_mesh_refinement", b"adaptive_mesh_refinement", "adjoint", b"adjoint", "body_frame", b"body_frame", "convergence_criteria", b"convergence_criteria", "entity_relationships", b"entity_relationships", "general", b"general", "input", b"input", "interfaces", b"interfaces", "material_entity", b"material_entity", "monitor_plane", b"monitor_plane", "motion_data", b"motion_data", "mp_coupling_options", b"mp_coupling_options", "named_variable", b"named_variable", "output", b"output", "particle_group", b"particle_group", "physics", b"physics", "reference_values", b"reference_values", "schema", b"schema", "surface_name", b"surface_name", "table", b"table", "table_references", b"table_references", "time", b"time", "units", b"units", "volume_entity", b"volume_entity"]) -> None: ...
6194
+ def HasField(self, field_name: typing_extensions.Literal["adaptive_mesh_refinement", b"adaptive_mesh_refinement", "adjoint", b"adjoint", "body_frame", b"body_frame", "convergence_criteria", b"convergence_criteria", "entity_relationships", b"entity_relationships", "general", b"general", "input", b"input", "mp_coupling_options", b"mp_coupling_options", "nonlinear_control", b"nonlinear_control", "output", b"output", "reference_values", b"reference_values", "time", b"time", "units", b"units"]) -> builtins.bool: ...
6195
+ def ClearField(self, field_name: typing_extensions.Literal["adaptive_mesh_refinement", b"adaptive_mesh_refinement", "adjoint", b"adjoint", "body_frame", b"body_frame", "convergence_criteria", b"convergence_criteria", "entity_relationships", b"entity_relationships", "general", b"general", "input", b"input", "interfaces", b"interfaces", "material_entity", b"material_entity", "monitor_plane", b"monitor_plane", "motion_data", b"motion_data", "mp_coupling_options", b"mp_coupling_options", "named_variable", b"named_variable", "nonlinear_control", b"nonlinear_control", "output", b"output", "particle_group", b"particle_group", "physics", b"physics", "reference_values", b"reference_values", "schema", b"schema", "surface_name", b"surface_name", "table", b"table", "table_references", b"table_references", "time", b"time", "units", b"units", "volume_entity", b"volume_entity"]) -> None: ...
6101
6196
 
6102
6197
  global___SimulationParam = SimulationParam
@@ -13,15 +13,17 @@ _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
15
  from luminarycloud._proto.fvm import global_solution_pb2 as proto_dot_fvm_dot_global__solution__pb2
16
+ from luminarycloud._proto.base import base_pb2 as proto_dot_base_dot_base__pb2
16
17
 
17
18
 
18
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1eproto/fvm/solver_results.proto\x12\x12luminary.proto.fvm\x1a\x1fproto/fvm/global_solution.proto\"7\n\x0eMpiDoubleStats\x12\x0b\n\x03max\x18\x01 \x01(\x01\x12\x0b\n\x03min\x18\x02 \x01(\x01\x12\x0b\n\x03\x61vg\x18\x03 \x01(\x01\"\x8a\x02\n\rTimingSummary\x12\x1c\n\x14mesh_preprocess_time\x18\x01 \x01(\x01\x12\x1d\n\x15solver_iteration_mean\x18\x02 \x01(\x01\x12\'\n\x1asolver_initialization_time\x18\t \x01(\x01H\x00\x88\x01\x01\x12M\n\x1cgpu_memory_usage_gb_per_rank\x18\n \x01(\x0b\x32\".luminary.proto.fvm.MpiDoubleStatsH\x01\x88\x01\x01\x42\x1d\n\x1b_solver_initialization_timeB\x1f\n\x1d_gpu_memory_usage_gb_per_rankJ\x04\x08\x03\x10\t\"\xdd\x01\n\x14SolverResultsSummary\x12=\n\x08solution\x18\x01 \x01(\x0b\x32\".luminary.proto.fvm.GlobalSolutionB\x02\x18\x01H\x00\x88\x01\x01\x12\x36\n\x0btiming_info\x18\x02 \x01(\x0b\x32!.luminary.proto.fvm.TimingSummary\x12\x41\n\x11physics_solutions\x18\x03 \x03(\x0b\x32&.luminary.proto.fvm.GlobalSolutionListB\x0b\n\t_solution\"\\\n\x18SolverResultsSummaryList\x12@\n\x0esolver_results\x18\x01 \x03(\x0b\x32(.luminary.proto.fvm.SolverResultsSummary\"Q\n\x12GlobalSolutionList\x12;\n\x0finner_solutions\x18\x01 \x03(\x0b\x32\".luminary.proto.fvm.GlobalSolutionB\"Z luminarycloud.com/core/proto/fvmb\x06proto3')
19
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1eproto/fvm/solver_results.proto\x12\x12luminary.proto.fvm\x1a\x1fproto/fvm/global_solution.proto\x1a\x15proto/base/base.proto\"7\n\x0eMpiDoubleStats\x12\x0b\n\x03max\x18\x01 \x01(\x01\x12\x0b\n\x03min\x18\x02 \x01(\x01\x12\x0b\n\x03\x61vg\x18\x03 \x01(\x01\"\x8a\x02\n\rTimingSummary\x12\x1c\n\x14mesh_preprocess_time\x18\x01 \x01(\x01\x12\x1d\n\x15solver_iteration_mean\x18\x02 \x01(\x01\x12\'\n\x1asolver_initialization_time\x18\t \x01(\x01H\x00\x88\x01\x01\x12M\n\x1cgpu_memory_usage_gb_per_rank\x18\n \x01(\x0b\x32\".luminary.proto.fvm.MpiDoubleStatsH\x01\x88\x01\x01\x42\x1d\n\x1b_solver_initialization_timeB\x1f\n\x1d_gpu_memory_usage_gb_per_rankJ\x04\x08\x03\x10\t\"\xfb\x02\n\x14SolverResultsSummary\x12=\n\x08solution\x18\x01 \x01(\x0b\x32\".luminary.proto.fvm.GlobalSolutionB\x02\x18\x01H\x00\x88\x01\x01\x12\x36\n\x0btiming_info\x18\x02 \x01(\x0b\x32!.luminary.proto.fvm.TimingSummary\x12\x41\n\x11physics_solutions\x18\x03 \x03(\x0b\x32&.luminary.proto.fvm.GlobalSolutionList\x12I\n\tnlc_input\x18\x04 \x03(\x0b\x32\x36.luminary.proto.fvm.SolverResultsSummary.NlcInputEntry\x1aQ\n\rNlcInputEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12/\n\x05value\x18\x02 \x01(\x0b\x32 .luminary.proto.base.AdFloatType:\x02\x38\x01\x42\x0b\n\t_solution\"\\\n\x18SolverResultsSummaryList\x12@\n\x0esolver_results\x18\x01 \x03(\x0b\x32(.luminary.proto.fvm.SolverResultsSummary\"Q\n\x12GlobalSolutionList\x12;\n\x0finner_solutions\x18\x01 \x03(\x0b\x32\".luminary.proto.fvm.GlobalSolutionB\"Z luminarycloud.com/core/proto/fvmb\x06proto3')
19
20
 
20
21
 
21
22
 
22
23
  _MPIDOUBLESTATS = DESCRIPTOR.message_types_by_name['MpiDoubleStats']
23
24
  _TIMINGSUMMARY = DESCRIPTOR.message_types_by_name['TimingSummary']
24
25
  _SOLVERRESULTSSUMMARY = DESCRIPTOR.message_types_by_name['SolverResultsSummary']
26
+ _SOLVERRESULTSSUMMARY_NLCINPUTENTRY = _SOLVERRESULTSSUMMARY.nested_types_by_name['NlcInputEntry']
25
27
  _SOLVERRESULTSSUMMARYLIST = DESCRIPTOR.message_types_by_name['SolverResultsSummaryList']
26
28
  _GLOBALSOLUTIONLIST = DESCRIPTOR.message_types_by_name['GlobalSolutionList']
27
29
  MpiDoubleStats = _reflection.GeneratedProtocolMessageType('MpiDoubleStats', (_message.Message,), {
@@ -39,11 +41,19 @@ TimingSummary = _reflection.GeneratedProtocolMessageType('TimingSummary', (_mess
39
41
  _sym_db.RegisterMessage(TimingSummary)
40
42
 
41
43
  SolverResultsSummary = _reflection.GeneratedProtocolMessageType('SolverResultsSummary', (_message.Message,), {
44
+
45
+ 'NlcInputEntry' : _reflection.GeneratedProtocolMessageType('NlcInputEntry', (_message.Message,), {
46
+ 'DESCRIPTOR' : _SOLVERRESULTSSUMMARY_NLCINPUTENTRY,
47
+ '__module__' : 'proto.fvm.solver_results_pb2'
48
+ # @@protoc_insertion_point(class_scope:luminary.proto.fvm.SolverResultsSummary.NlcInputEntry)
49
+ })
50
+ ,
42
51
  'DESCRIPTOR' : _SOLVERRESULTSSUMMARY,
43
52
  '__module__' : 'proto.fvm.solver_results_pb2'
44
53
  # @@protoc_insertion_point(class_scope:luminary.proto.fvm.SolverResultsSummary)
45
54
  })
46
55
  _sym_db.RegisterMessage(SolverResultsSummary)
56
+ _sym_db.RegisterMessage(SolverResultsSummary.NlcInputEntry)
47
57
 
48
58
  SolverResultsSummaryList = _reflection.GeneratedProtocolMessageType('SolverResultsSummaryList', (_message.Message,), {
49
59
  'DESCRIPTOR' : _SOLVERRESULTSSUMMARYLIST,
@@ -63,16 +73,20 @@ if _descriptor._USE_C_DESCRIPTORS == False:
63
73
 
64
74
  DESCRIPTOR._options = None
65
75
  DESCRIPTOR._serialized_options = b'Z luminarycloud.com/core/proto/fvm'
76
+ _SOLVERRESULTSSUMMARY_NLCINPUTENTRY._options = None
77
+ _SOLVERRESULTSSUMMARY_NLCINPUTENTRY._serialized_options = b'8\001'
66
78
  _SOLVERRESULTSSUMMARY.fields_by_name['solution']._options = None
67
79
  _SOLVERRESULTSSUMMARY.fields_by_name['solution']._serialized_options = b'\030\001'
68
- _MPIDOUBLESTATS._serialized_start=87
69
- _MPIDOUBLESTATS._serialized_end=142
70
- _TIMINGSUMMARY._serialized_start=145
71
- _TIMINGSUMMARY._serialized_end=411
72
- _SOLVERRESULTSSUMMARY._serialized_start=414
73
- _SOLVERRESULTSSUMMARY._serialized_end=635
74
- _SOLVERRESULTSSUMMARYLIST._serialized_start=637
75
- _SOLVERRESULTSSUMMARYLIST._serialized_end=729
76
- _GLOBALSOLUTIONLIST._serialized_start=731
77
- _GLOBALSOLUTIONLIST._serialized_end=812
80
+ _MPIDOUBLESTATS._serialized_start=110
81
+ _MPIDOUBLESTATS._serialized_end=165
82
+ _TIMINGSUMMARY._serialized_start=168
83
+ _TIMINGSUMMARY._serialized_end=434
84
+ _SOLVERRESULTSSUMMARY._serialized_start=437
85
+ _SOLVERRESULTSSUMMARY._serialized_end=816
86
+ _SOLVERRESULTSSUMMARY_NLCINPUTENTRY._serialized_start=722
87
+ _SOLVERRESULTSSUMMARY_NLCINPUTENTRY._serialized_end=803
88
+ _SOLVERRESULTSSUMMARYLIST._serialized_start=818
89
+ _SOLVERRESULTSSUMMARYLIST._serialized_end=910
90
+ _GLOBALSOLUTIONLIST._serialized_start=912
91
+ _GLOBALSOLUTIONLIST._serialized_end=993
78
92
  # @@protoc_insertion_point(module_scope)
@@ -7,6 +7,7 @@ import collections.abc
7
7
  import google.protobuf.descriptor
8
8
  import google.protobuf.internal.containers
9
9
  import google.protobuf.message
10
+ import luminarycloud._proto.base.base_pb2
10
11
  import luminarycloud._proto.fvm.global_solution_pb2
11
12
  import sys
12
13
  import typing
@@ -79,9 +80,27 @@ class SolverResultsSummary(google.protobuf.message.Message):
79
80
 
80
81
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
81
82
 
83
+ class NlcInputEntry(google.protobuf.message.Message):
84
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
85
+
86
+ KEY_FIELD_NUMBER: builtins.int
87
+ VALUE_FIELD_NUMBER: builtins.int
88
+ key: builtins.str
89
+ @property
90
+ def value(self) -> luminarycloud._proto.base.base_pb2.AdFloatType: ...
91
+ def __init__(
92
+ self,
93
+ *,
94
+ key: builtins.str = ...,
95
+ value: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
96
+ ) -> None: ...
97
+ def HasField(self, field_name: typing_extensions.Literal["value", b"value"]) -> builtins.bool: ...
98
+ def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...
99
+
82
100
  SOLUTION_FIELD_NUMBER: builtins.int
83
101
  TIMING_INFO_FIELD_NUMBER: builtins.int
84
102
  PHYSICS_SOLUTIONS_FIELD_NUMBER: builtins.int
103
+ NLC_INPUT_FIELD_NUMBER: builtins.int
85
104
  @property
86
105
  def solution(self) -> luminarycloud._proto.fvm.global_solution_pb2.GlobalSolution:
87
106
  """Legacy solution message for backward compatibility"""
@@ -91,15 +110,19 @@ class SolverResultsSummary(google.protobuf.message.Message):
91
110
  @property
92
111
  def physics_solutions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GlobalSolutionList]:
93
112
  """One GlobalSolutionList for each physical model"""
113
+ @property
114
+ def nlc_input(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, luminarycloud._proto.base.base_pb2.AdFloatType]:
115
+ """Results of the nonlinear controller"""
94
116
  def __init__(
95
117
  self,
96
118
  *,
97
119
  solution: luminarycloud._proto.fvm.global_solution_pb2.GlobalSolution | None = ...,
98
120
  timing_info: global___TimingSummary | None = ...,
99
121
  physics_solutions: collections.abc.Iterable[global___GlobalSolutionList] | None = ...,
122
+ nlc_input: collections.abc.Mapping[builtins.str, luminarycloud._proto.base.base_pb2.AdFloatType] | None = ...,
100
123
  ) -> None: ...
101
124
  def HasField(self, field_name: typing_extensions.Literal["_solution", b"_solution", "solution", b"solution", "timing_info", b"timing_info"]) -> builtins.bool: ...
102
- def ClearField(self, field_name: typing_extensions.Literal["_solution", b"_solution", "physics_solutions", b"physics_solutions", "solution", b"solution", "timing_info", b"timing_info"]) -> None: ...
125
+ def ClearField(self, field_name: typing_extensions.Literal["_solution", b"_solution", "nlc_input", b"nlc_input", "physics_solutions", b"physics_solutions", "solution", b"solution", "timing_info", b"timing_info"]) -> None: ...
103
126
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_solution", b"_solution"]) -> typing_extensions.Literal["solution"] | None: ...
104
127
 
105
128
  global___SolverResultsSummary = SolverResultsSummary
@@ -17,12 +17,11 @@ from luminarycloud._proto.base import base_pb2 as proto_dot_base_dot_base__pb2
17
17
  from luminarycloud._proto.cad import boolean_pb2 as proto_dot_cad_dot_boolean__pb2
18
18
  from luminarycloud._proto.cad import shape_pb2 as proto_dot_cad_dot_shape__pb2
19
19
  from luminarycloud._proto.cad import transformation_pb2 as proto_dot_cad_dot_transformation__pb2
20
- from luminarycloud._proto.named_variable_set import named_variable_set_pb2 as proto_dot_named__variable__set_dot_named__variable__set__pb2
21
20
  from luminarycloud._proto.parametricworker import parametricworker_pb2 as proto_dot_parametricworker_dot_parametricworker__pb2
22
21
  from luminarycloud._proto.lcstatus import lcstatus_pb2 as proto_dot_lcstatus_dot_lcstatus__pb2
23
22
 
24
23
 
25
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dproto/geometry/geometry.proto\x12\x17luminary.proto.geometry\x1a\x15proto/base/base.proto\x1a\x17proto/cad/boolean.proto\x1a\x15proto/cad/shape.proto\x1a\x1eproto/cad/transformation.proto\x1a\x31proto/named_variable_set/named_variable_set.proto\x1a-proto/parametricworker/parametricworker.proto\x1a\x1dproto/lcstatus/lcstatus.proto\"\x87\x01\n\x06Import\x12\x14\n\x0cgeometry_url\x18\x01 \x01(\t\x12\x0f\n\x07scaling\x18\x02 \x01(\x01\x12\x16\n\x0e\x66orce_discrete\x18\x03 \x01(\x08\x12>\n\nparameters\x18\x04 \x03(\x0b\x32*.luminary.proto.parametricworker.Parameter\"\xc0\x02\n\x06\x43reate\x12,\n\x06sphere\x18\x01 \x01(\x0b\x32\x1a.luminary.proto.cad.SphereH\x00\x12\'\n\x03\x62ox\x18\x02 \x01(\x0b\x32\x18.luminary.proto.cad.CubeH\x00\x12\x30\n\x08\x63ylinder\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.cad.CylinderH\x00\x12*\n\x05torus\x18\x04 \x01(\x0b\x32\x19.luminary.proto.cad.TorusH\x00\x12(\n\x04\x63one\x18\x05 \x01(\x0b\x32\x18.luminary.proto.cad.ConeH\x00\x12\x35\n\x0bhalf_sphere\x18\x06 \x01(\x0b\x32\x1e.luminary.proto.cad.HalfSphereH\x00\x12\x17\n\x0fresult_body_tag\x18\x07 \x01(\tB\x07\n\x05shape\"V\n\x06\x44\x65lete\x12\x31\n\x04type\x18\x01 \x01(\x0e\x32#.luminary.proto.geometry.EntityType\x12\x0b\n\x03ids\x18\x02 \x03(\x04\x12\x0c\n\x04tags\x18\x03 \x03(\t\"\x83\x02\n\x07\x42oolean\x12\x35\n\treg_union\x18\x01 \x01(\x0b\x32 .luminary.proto.cad.RegularUnionH\x00\x12\x41\n\x0freg_subtraction\x18\x02 \x01(\x0b\x32&.luminary.proto.cad.RegularSubtractionH\x00\x12\x43\n\x10reg_intersection\x18\x03 \x01(\x0b\x32\'.luminary.proto.cad.RegularIntersectionH\x00\x12\x33\n\x08reg_chop\x18\x04 \x01(\x0b\x32\x1f.luminary.proto.cad.RegularChopH\x00\x42\x04\n\x02op\"\xa2\x01\n\x07Imprint\x12\x42\n\x08\x62\x65havior\x18\x01 \x01(\x0e\x32\x30.luminary.proto.geometry.Imprint.ImprintBehavior\x12\x0c\n\x04\x62ody\x18\x02 \x03(\x04\x12\x0b\n\x03tag\x18\x03 \x03(\t\"8\n\x0fImprintBehavior\x12\x0f\n\x0bIMPRINT_ALL\x10\x00\x12\x14\n\x10IMPRINT_SELECTED\x10\x01\"\xc0\x02\n\tTransform\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x0b\n\x03tag\x18\x08 \x03(\t\x12\x35\n\x06matrix\x18\x02 \x01(\x0b\x32#.luminary.proto.cad.AugmentedMatrixH\x00\x12\x36\n\x0btranslation\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.cad.TranslationH\x00\x12\x30\n\x08rotation\x18\x04 \x01(\x0b\x32\x1c.luminary.proto.cad.RotationH\x00\x12.\n\x07scaling\x18\x05 \x01(\x0b\x32\x1b.luminary.proto.cad.ScalingH\x00\x12\x34\n\nreflection\x18\x06 \x01(\x0b\x32\x1e.luminary.proto.cad.ReflectionH\x00\x12\x0c\n\x04keep\x18\x07 \x01(\x08\x42\x03\n\x01t\"\xcf\x01\n\nShrinkwrap\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x10\n\x08tag_body\x18\x07 \x03(\t\x12\x0c\n\x04tool\x18\x06 \x03(\x04\x12\x10\n\x08tag_tool\x18\x08 \x03(\t\x12\x35\n\x04mode\x18\x02 \x01(\x0e\x32\'.luminary.proto.geometry.ShrinkwrapMode\x12\x16\n\x0eresolution_min\x18\x03 \x01(\x01\x12\x16\n\x0eresolution_max\x18\x04 \x01(\x01\x12\x1a\n\x12resolution_uniform\x18\x05 \x01(\x01\"\xb2\x01\n\x08\x46\x61rfield\x12/\n\x06\x63reate\x18\x01 \x01(\x0b\x32\x1f.luminary.proto.geometry.Create\x12\x0e\n\x06\x62odies\x18\x02 \x03(\x04\x12\x12\n\ntag_bodies\x18\x06 \x03(\t\x12\x1a\n\x12keep_source_bodies\x18\x03 \x01(\x08\x12\x18\n\x10keep_tool_bodies\x18\x04 \x01(\x08\x12\x1b\n\x13propagate_tool_tags\x18\x05 \x01(\x08\"\xf9\x02\n\x07Pattern\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x0b\n\x03tag\x18\x03 \x03(\t\x12=\n\tdirection\x18\x02 \x01(\x0b\x32*.luminary.proto.geometry.Pattern.Direction\x1a\x93\x02\n\tDirection\x12\x10\n\x08quantity\x18\x01 \x01(\r\x12\x11\n\tsymmetric\x18\x02 \x01(\x08\x12\x39\n\x0elinear_spacing\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.cad.TranslationH\x00\x12T\n\x15\x63ircular_distribution\x18\x04 \x01(\x0b\x32\x33.luminary.proto.geometry.Pattern.Direction.CircularH\x00\x1aH\n\x08\x43ircular\x12.\n\x08rotation\x18\x01 \x01(\x0b\x32\x1c.luminary.proto.cad.Rotation\x12\x0c\n\x04\x66ull\x18\x02 \x01(\x08\x42\x06\n\x04type\"\x8c\x02\n\x0e\x43onfigurations\x12Q\n\rconfiguration\x18\x01 \x03(\x0b\x32:.luminary.proto.geometry.Configurations.ConfigurationEntry\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\t\x1a*\n\rConfiguration\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x0b\n\x03tag\x18\x02 \x03(\t\x1ak\n\x12\x43onfigurationEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.luminary.proto.geometry.Configurations.Configuration:\x02\x38\x01\"V\n\rFeatureIssues\x12\x31\n\x06issues\x18\x01 \x03(\x0b\x32!.luminary.proto.lcstatus.LCStatus\x12\x12\n\nfeature_id\x18\x02 \x01(\t\"\xde\x04\n\x07\x46\x65\x61ture\x12\x31\n\x06import\x18\x01 \x01(\x0b\x32\x1f.luminary.proto.geometry.ImportH\x00\x12\x31\n\x06\x63reate\x18\x02 \x01(\x0b\x32\x1f.luminary.proto.geometry.CreateH\x00\x12\x31\n\x06\x64\x65lete\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.geometry.DeleteH\x00\x12\x33\n\x07\x62oolean\x18\x04 \x01(\x0b\x32 .luminary.proto.geometry.BooleanH\x00\x12\x33\n\x07imprint\x18\x07 \x01(\x0b\x32 .luminary.proto.geometry.ImprintH\x00\x12\x37\n\ttransform\x18\x0c \x01(\x0b\x32\".luminary.proto.geometry.TransformH\x00\x12\x39\n\nshrinkwrap\x18\r \x01(\x0b\x32#.luminary.proto.geometry.ShrinkwrapH\x00\x12\x35\n\x08\x66\x61rfield\x18\x0e \x01(\x0b\x32!.luminary.proto.geometry.FarfieldH\x00\x12\x33\n\x07pattern\x18\x0f \x01(\x0b\x32 .luminary.proto.geometry.PatternH\x00\x12\x41\n\x0e\x63onfigurations\x18\x10 \x01(\x0b\x32\'.luminary.proto.geometry.ConfigurationsH\x00\x12\n\n\x02id\x18\x05 \x01(\t\x12\x14\n\x0c\x66\x65\x61ture_name\x18\x06 \x01(\tB\x0b\n\toperation\"@\n\x11\x43reateOrUpdateTag\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06\x62odies\x18\x02 \x03(\x05\x12\r\n\x05\x66\x61\x63\x65s\x18\x03 \x03(\x05\"/\n\tRenameTag\x12\x10\n\x08old_name\x18\x01 \x01(\t\x12\x10\n\x08new_name\x18\x02 \x01(\t\"8\n\tDeleteTag\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06\x62odies\x18\x02 \x03(\x05\x12\r\n\x05\x66\x61\x63\x65s\x18\x03 \x03(\x05\"\x1b\n\nDeleteTags\x12\r\n\x05names\x18\x01 \x03(\t\"\x91\x07\n\x0cModification\x12H\n\x08mod_type\x18\x01 \x01(\x0e\x32\x36.luminary.proto.geometry.Modification.ModificationType\x12\x31\n\x07\x66\x65\x61ture\x18\x02 \x01(\x0b\x32 .luminary.proto.geometry.Feature\x12H\n\x14\x63reate_or_update_tag\x18\x03 \x01(\x0b\x32*.luminary.proto.geometry.CreateOrUpdateTag\x12\x36\n\nrename_tag\x18\x04 \x01(\x0b\x32\".luminary.proto.geometry.RenameTag\x12\x36\n\ndelete_tag\x18\x05 \x01(\x0b\x32\".luminary.proto.geometry.DeleteTag\x12\x38\n\x0b\x64\x65lete_tags\x18\x06 \x01(\x0b\x32#.luminary.proto.geometry.DeleteTags\x12,\n$update_named_variable_set_version_id\x18\x07 \x01(\t\"\xe1\x03\n\x10ModificationType\x12!\n\x1dMODIFICATION_TYPE_UNSPECIFIED\x10\x00\x12$\n MODIFICATION_TYPE_CREATE_FEATURE\x10\x01\x12$\n MODIFICATION_TYPE_UPDATE_FEATURE\x10\x02\x12$\n MODIFICATION_TYPE_DELETE_FEATURE\x10\x03\x12\x1a\n\x16MODIFICATION_TYPE_UNDO\x10\x04\x12\x1a\n\x16MODIFICATION_TYPE_REDO\x10\x05\x12$\n MODIFICATION_TYPE_RENAME_FEATURE\x10\x06\x12 \n\x1cMODIFICATION_TYPE_CREATE_TAG\x10\x07\x12 \n\x1cMODIFICATION_TYPE_UPDATE_TAG\x10\x08\x12 \n\x1cMODIFICATION_TYPE_DELETE_TAG\x10\t\x12 \n\x1cMODIFICATION_TYPE_RENAME_TAG\x10\n\x12!\n\x1dMODIFICATION_TYPE_DELETE_TAGS\x10\x0b\x12/\n+MODIFICATION_TYPE_UPDATE_NAMED_VARIABLE_SET\x10\x0c\"\x85\x01\n\x04\x46\x61\x63\x65\x12\n\n\x02id\x18\x01 \x01(\t\x12.\n\x08\x62\x62ox_min\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12.\n\x08\x62\x62ox_max\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\x11\n\tnative_id\x18\x04 \x01(\x04\"\x82\x01\n\x04\x42ody\x12\n\n\x02id\x18\x01 \x01(\x04\x12.\n\x08\x62\x62ox_min\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12.\n\x08\x62\x62ox_max\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\x0e\n\x06lcn_id\x18\x04 \x01(\x04\"\"\n\x06Volume\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xc2\x01\n\x04Tags\x12/\n\x04tags\x18\x01 \x03(\x0b\x32!.luminary.proto.geometry.Tags.Tag\x1a\x88\x01\n\x03Tag\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06\x62odies\x18\x03 \x03(\x05\x12\x12\n\nlcn_bodies\x18\x04 \x03(\x05\x12\r\n\x05\x66\x61\x63\x65s\x18\x05 \x03(\x05\x12\x17\n\x0f\x62odies_of_faces\x18\x06 \x03(\x05\x12\x1b\n\x13lcn_bodies_of_faces\x18\x07 \x03(\x05*S\n\nEntityType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x08\n\x04\x42ODY\x10\x01\x12\n\n\x06VOLUME\x10\x02\x12\x08\n\x04\x46\x41\x43\x45\x10\x03\x12\x08\n\x04\x45\x44GE\x10\x04\x12\n\n\x06VERTEX\x10\x05*8\n\x0eShrinkwrapMode\x12\r\n\tAUTOMATIC\x10\x00\x12\n\n\x06MINMAX\x10\x01\x12\x0b\n\x07UNIFORM\x10\x02*7\n\nKernelType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0e\n\nCONTINUOUS\x10\x01\x12\x0c\n\x08\x44ISCRETE\x10\x02\x42\'Z%luminarycloud.com/core/proto/geometryb\x06proto3')
24
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dproto/geometry/geometry.proto\x12\x17luminary.proto.geometry\x1a\x15proto/base/base.proto\x1a\x17proto/cad/boolean.proto\x1a\x15proto/cad/shape.proto\x1a\x1eproto/cad/transformation.proto\x1a-proto/parametricworker/parametricworker.proto\x1a\x1dproto/lcstatus/lcstatus.proto\"\x87\x01\n\x06Import\x12\x14\n\x0cgeometry_url\x18\x01 \x01(\t\x12\x0f\n\x07scaling\x18\x02 \x01(\x01\x12\x16\n\x0e\x66orce_discrete\x18\x03 \x01(\x08\x12>\n\nparameters\x18\x04 \x03(\x0b\x32*.luminary.proto.parametricworker.Parameter\"\xc0\x02\n\x06\x43reate\x12,\n\x06sphere\x18\x01 \x01(\x0b\x32\x1a.luminary.proto.cad.SphereH\x00\x12\'\n\x03\x62ox\x18\x02 \x01(\x0b\x32\x18.luminary.proto.cad.CubeH\x00\x12\x30\n\x08\x63ylinder\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.cad.CylinderH\x00\x12*\n\x05torus\x18\x04 \x01(\x0b\x32\x19.luminary.proto.cad.TorusH\x00\x12(\n\x04\x63one\x18\x05 \x01(\x0b\x32\x18.luminary.proto.cad.ConeH\x00\x12\x35\n\x0bhalf_sphere\x18\x06 \x01(\x0b\x32\x1e.luminary.proto.cad.HalfSphereH\x00\x12\x17\n\x0fresult_body_tag\x18\x07 \x01(\tB\x07\n\x05shape\"V\n\x06\x44\x65lete\x12\x31\n\x04type\x18\x01 \x01(\x0e\x32#.luminary.proto.geometry.EntityType\x12\x0b\n\x03ids\x18\x02 \x03(\x04\x12\x0c\n\x04tags\x18\x03 \x03(\t\"\x83\x02\n\x07\x42oolean\x12\x35\n\treg_union\x18\x01 \x01(\x0b\x32 .luminary.proto.cad.RegularUnionH\x00\x12\x41\n\x0freg_subtraction\x18\x02 \x01(\x0b\x32&.luminary.proto.cad.RegularSubtractionH\x00\x12\x43\n\x10reg_intersection\x18\x03 \x01(\x0b\x32\'.luminary.proto.cad.RegularIntersectionH\x00\x12\x33\n\x08reg_chop\x18\x04 \x01(\x0b\x32\x1f.luminary.proto.cad.RegularChopH\x00\x42\x04\n\x02op\"\xa2\x01\n\x07Imprint\x12\x42\n\x08\x62\x65havior\x18\x01 \x01(\x0e\x32\x30.luminary.proto.geometry.Imprint.ImprintBehavior\x12\x0c\n\x04\x62ody\x18\x02 \x03(\x04\x12\x0b\n\x03tag\x18\x03 \x03(\t\"8\n\x0fImprintBehavior\x12\x0f\n\x0bIMPRINT_ALL\x10\x00\x12\x14\n\x10IMPRINT_SELECTED\x10\x01\"\xc0\x02\n\tTransform\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x0b\n\x03tag\x18\x08 \x03(\t\x12\x35\n\x06matrix\x18\x02 \x01(\x0b\x32#.luminary.proto.cad.AugmentedMatrixH\x00\x12\x36\n\x0btranslation\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.cad.TranslationH\x00\x12\x30\n\x08rotation\x18\x04 \x01(\x0b\x32\x1c.luminary.proto.cad.RotationH\x00\x12.\n\x07scaling\x18\x05 \x01(\x0b\x32\x1b.luminary.proto.cad.ScalingH\x00\x12\x34\n\nreflection\x18\x06 \x01(\x0b\x32\x1e.luminary.proto.cad.ReflectionH\x00\x12\x0c\n\x04keep\x18\x07 \x01(\x08\x42\x03\n\x01t\"\xcf\x01\n\nShrinkwrap\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x10\n\x08tag_body\x18\x07 \x03(\t\x12\x0c\n\x04tool\x18\x06 \x03(\x04\x12\x10\n\x08tag_tool\x18\x08 \x03(\t\x12\x35\n\x04mode\x18\x02 \x01(\x0e\x32\'.luminary.proto.geometry.ShrinkwrapMode\x12\x16\n\x0eresolution_min\x18\x03 \x01(\x01\x12\x16\n\x0eresolution_max\x18\x04 \x01(\x01\x12\x1a\n\x12resolution_uniform\x18\x05 \x01(\x01\"\xb2\x01\n\x08\x46\x61rfield\x12/\n\x06\x63reate\x18\x01 \x01(\x0b\x32\x1f.luminary.proto.geometry.Create\x12\x0e\n\x06\x62odies\x18\x02 \x03(\x04\x12\x12\n\ntag_bodies\x18\x06 \x03(\t\x12\x1a\n\x12keep_source_bodies\x18\x03 \x01(\x08\x12\x18\n\x10keep_tool_bodies\x18\x04 \x01(\x08\x12\x1b\n\x13propagate_tool_tags\x18\x05 \x01(\x08\"\xf9\x02\n\x07Pattern\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x0b\n\x03tag\x18\x03 \x03(\t\x12=\n\tdirection\x18\x02 \x01(\x0b\x32*.luminary.proto.geometry.Pattern.Direction\x1a\x93\x02\n\tDirection\x12\x10\n\x08quantity\x18\x01 \x01(\r\x12\x11\n\tsymmetric\x18\x02 \x01(\x08\x12\x39\n\x0elinear_spacing\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.cad.TranslationH\x00\x12T\n\x15\x63ircular_distribution\x18\x04 \x01(\x0b\x32\x33.luminary.proto.geometry.Pattern.Direction.CircularH\x00\x1aH\n\x08\x43ircular\x12.\n\x08rotation\x18\x01 \x01(\x0b\x32\x1c.luminary.proto.cad.Rotation\x12\x0c\n\x04\x66ull\x18\x02 \x01(\x08\x42\x06\n\x04type\"\x8c\x02\n\x0e\x43onfigurations\x12Q\n\rconfiguration\x18\x01 \x03(\x0b\x32:.luminary.proto.geometry.Configurations.ConfigurationEntry\x12\x0e\n\x06\x61\x63tive\x18\x02 \x01(\t\x1a*\n\rConfiguration\x12\x0c\n\x04\x62ody\x18\x01 \x03(\x04\x12\x0b\n\x03tag\x18\x02 \x03(\t\x1ak\n\x12\x43onfigurationEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.luminary.proto.geometry.Configurations.Configuration:\x02\x38\x01\"V\n\rFeatureIssues\x12\x31\n\x06issues\x18\x01 \x03(\x0b\x32!.luminary.proto.lcstatus.LCStatus\x12\x12\n\nfeature_id\x18\x02 \x01(\t\"\xde\x04\n\x07\x46\x65\x61ture\x12\x31\n\x06import\x18\x01 \x01(\x0b\x32\x1f.luminary.proto.geometry.ImportH\x00\x12\x31\n\x06\x63reate\x18\x02 \x01(\x0b\x32\x1f.luminary.proto.geometry.CreateH\x00\x12\x31\n\x06\x64\x65lete\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.geometry.DeleteH\x00\x12\x33\n\x07\x62oolean\x18\x04 \x01(\x0b\x32 .luminary.proto.geometry.BooleanH\x00\x12\x33\n\x07imprint\x18\x07 \x01(\x0b\x32 .luminary.proto.geometry.ImprintH\x00\x12\x37\n\ttransform\x18\x0c \x01(\x0b\x32\".luminary.proto.geometry.TransformH\x00\x12\x39\n\nshrinkwrap\x18\r \x01(\x0b\x32#.luminary.proto.geometry.ShrinkwrapH\x00\x12\x35\n\x08\x66\x61rfield\x18\x0e \x01(\x0b\x32!.luminary.proto.geometry.FarfieldH\x00\x12\x33\n\x07pattern\x18\x0f \x01(\x0b\x32 .luminary.proto.geometry.PatternH\x00\x12\x41\n\x0e\x63onfigurations\x18\x10 \x01(\x0b\x32\'.luminary.proto.geometry.ConfigurationsH\x00\x12\n\n\x02id\x18\x05 \x01(\t\x12\x14\n\x0c\x66\x65\x61ture_name\x18\x06 \x01(\tB\x0b\n\toperation\"@\n\x11\x43reateOrUpdateTag\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06\x62odies\x18\x02 \x03(\x05\x12\r\n\x05\x66\x61\x63\x65s\x18\x03 \x03(\x05\"/\n\tRenameTag\x12\x10\n\x08old_name\x18\x01 \x01(\t\x12\x10\n\x08new_name\x18\x02 \x01(\t\"8\n\tDeleteTag\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06\x62odies\x18\x02 \x03(\x05\x12\r\n\x05\x66\x61\x63\x65s\x18\x03 \x03(\x05\"\x1b\n\nDeleteTags\x12\r\n\x05names\x18\x01 \x03(\t\"\x91\x07\n\x0cModification\x12H\n\x08mod_type\x18\x01 \x01(\x0e\x32\x36.luminary.proto.geometry.Modification.ModificationType\x12\x31\n\x07\x66\x65\x61ture\x18\x02 \x01(\x0b\x32 .luminary.proto.geometry.Feature\x12H\n\x14\x63reate_or_update_tag\x18\x03 \x01(\x0b\x32*.luminary.proto.geometry.CreateOrUpdateTag\x12\x36\n\nrename_tag\x18\x04 \x01(\x0b\x32\".luminary.proto.geometry.RenameTag\x12\x36\n\ndelete_tag\x18\x05 \x01(\x0b\x32\".luminary.proto.geometry.DeleteTag\x12\x38\n\x0b\x64\x65lete_tags\x18\x06 \x01(\x0b\x32#.luminary.proto.geometry.DeleteTags\x12,\n$update_named_variable_set_version_id\x18\x07 \x01(\t\"\xe1\x03\n\x10ModificationType\x12!\n\x1dMODIFICATION_TYPE_UNSPECIFIED\x10\x00\x12$\n MODIFICATION_TYPE_CREATE_FEATURE\x10\x01\x12$\n MODIFICATION_TYPE_UPDATE_FEATURE\x10\x02\x12$\n MODIFICATION_TYPE_DELETE_FEATURE\x10\x03\x12\x1a\n\x16MODIFICATION_TYPE_UNDO\x10\x04\x12\x1a\n\x16MODIFICATION_TYPE_REDO\x10\x05\x12$\n MODIFICATION_TYPE_RENAME_FEATURE\x10\x06\x12 \n\x1cMODIFICATION_TYPE_CREATE_TAG\x10\x07\x12 \n\x1cMODIFICATION_TYPE_UPDATE_TAG\x10\x08\x12 \n\x1cMODIFICATION_TYPE_DELETE_TAG\x10\t\x12 \n\x1cMODIFICATION_TYPE_RENAME_TAG\x10\n\x12!\n\x1dMODIFICATION_TYPE_DELETE_TAGS\x10\x0b\x12/\n+MODIFICATION_TYPE_UPDATE_NAMED_VARIABLE_SET\x10\x0c\"\x85\x01\n\x04\x46\x61\x63\x65\x12\n\n\x02id\x18\x01 \x01(\t\x12.\n\x08\x62\x62ox_min\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12.\n\x08\x62\x62ox_max\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\x11\n\tnative_id\x18\x04 \x01(\x04\"\x82\x01\n\x04\x42ody\x12\n\n\x02id\x18\x01 \x01(\x04\x12.\n\x08\x62\x62ox_min\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12.\n\x08\x62\x62ox_max\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\x0e\n\x06lcn_id\x18\x04 \x01(\x04\"\"\n\x06Volume\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xc2\x01\n\x04Tags\x12/\n\x04tags\x18\x01 \x03(\x0b\x32!.luminary.proto.geometry.Tags.Tag\x1a\x88\x01\n\x03Tag\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06\x62odies\x18\x03 \x03(\x05\x12\x12\n\nlcn_bodies\x18\x04 \x03(\x05\x12\r\n\x05\x66\x61\x63\x65s\x18\x05 \x03(\x05\x12\x17\n\x0f\x62odies_of_faces\x18\x06 \x03(\x05\x12\x1b\n\x13lcn_bodies_of_faces\x18\x07 \x03(\x05*S\n\nEntityType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x08\n\x04\x42ODY\x10\x01\x12\n\n\x06VOLUME\x10\x02\x12\x08\n\x04\x46\x41\x43\x45\x10\x03\x12\x08\n\x04\x45\x44GE\x10\x04\x12\n\n\x06VERTEX\x10\x05*8\n\x0eShrinkwrapMode\x12\r\n\tAUTOMATIC\x10\x00\x12\n\n\x06MINMAX\x10\x01\x12\x0b\n\x07UNIFORM\x10\x02*7\n\nKernelType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x0e\n\nCONTINUOUS\x10\x01\x12\x0c\n\x08\x44ISCRETE\x10\x02\x42\'Z%luminarycloud.com/core/proto/geometryb\x06proto3')
26
25
 
27
26
  _ENTITYTYPE = DESCRIPTOR.enum_types_by_name['EntityType']
28
27
  EntityType = enum_type_wrapper.EnumTypeWrapper(_ENTITYTYPE)
@@ -265,66 +264,66 @@ if _descriptor._USE_C_DESCRIPTORS == False:
265
264
  DESCRIPTOR._serialized_options = b'Z%luminarycloud.com/core/proto/geometry'
266
265
  _CONFIGURATIONS_CONFIGURATIONENTRY._options = None
267
266
  _CONFIGURATIONS_CONFIGURATIONENTRY._serialized_options = b'8\001'
268
- _ENTITYTYPE._serialized_start=4948
269
- _ENTITYTYPE._serialized_end=5031
270
- _SHRINKWRAPMODE._serialized_start=5033
271
- _SHRINKWRAPMODE._serialized_end=5089
272
- _KERNELTYPE._serialized_start=5091
273
- _KERNELTYPE._serialized_end=5146
274
- _IMPORT._serialized_start=291
275
- _IMPORT._serialized_end=426
276
- _CREATE._serialized_start=429
277
- _CREATE._serialized_end=749
278
- _DELETE._serialized_start=751
279
- _DELETE._serialized_end=837
280
- _BOOLEAN._serialized_start=840
281
- _BOOLEAN._serialized_end=1099
282
- _IMPRINT._serialized_start=1102
283
- _IMPRINT._serialized_end=1264
284
- _IMPRINT_IMPRINTBEHAVIOR._serialized_start=1208
285
- _IMPRINT_IMPRINTBEHAVIOR._serialized_end=1264
286
- _TRANSFORM._serialized_start=1267
287
- _TRANSFORM._serialized_end=1587
288
- _SHRINKWRAP._serialized_start=1590
289
- _SHRINKWRAP._serialized_end=1797
290
- _FARFIELD._serialized_start=1800
291
- _FARFIELD._serialized_end=1978
292
- _PATTERN._serialized_start=1981
293
- _PATTERN._serialized_end=2358
294
- _PATTERN_DIRECTION._serialized_start=2083
295
- _PATTERN_DIRECTION._serialized_end=2358
296
- _PATTERN_DIRECTION_CIRCULAR._serialized_start=2278
297
- _PATTERN_DIRECTION_CIRCULAR._serialized_end=2350
298
- _CONFIGURATIONS._serialized_start=2361
299
- _CONFIGURATIONS._serialized_end=2629
300
- _CONFIGURATIONS_CONFIGURATION._serialized_start=2478
301
- _CONFIGURATIONS_CONFIGURATION._serialized_end=2520
302
- _CONFIGURATIONS_CONFIGURATIONENTRY._serialized_start=2522
303
- _CONFIGURATIONS_CONFIGURATIONENTRY._serialized_end=2629
304
- _FEATUREISSUES._serialized_start=2631
305
- _FEATUREISSUES._serialized_end=2717
306
- _FEATURE._serialized_start=2720
307
- _FEATURE._serialized_end=3326
308
- _CREATEORUPDATETAG._serialized_start=3328
309
- _CREATEORUPDATETAG._serialized_end=3392
310
- _RENAMETAG._serialized_start=3394
311
- _RENAMETAG._serialized_end=3441
312
- _DELETETAG._serialized_start=3443
313
- _DELETETAG._serialized_end=3499
314
- _DELETETAGS._serialized_start=3501
315
- _DELETETAGS._serialized_end=3528
316
- _MODIFICATION._serialized_start=3531
317
- _MODIFICATION._serialized_end=4444
318
- _MODIFICATION_MODIFICATIONTYPE._serialized_start=3963
319
- _MODIFICATION_MODIFICATIONTYPE._serialized_end=4444
320
- _FACE._serialized_start=4447
321
- _FACE._serialized_end=4580
322
- _BODY._serialized_start=4583
323
- _BODY._serialized_end=4713
324
- _VOLUME._serialized_start=4715
325
- _VOLUME._serialized_end=4749
326
- _TAGS._serialized_start=4752
327
- _TAGS._serialized_end=4946
328
- _TAGS_TAG._serialized_start=4810
329
- _TAGS_TAG._serialized_end=4946
267
+ _ENTITYTYPE._serialized_start=4897
268
+ _ENTITYTYPE._serialized_end=4980
269
+ _SHRINKWRAPMODE._serialized_start=4982
270
+ _SHRINKWRAPMODE._serialized_end=5038
271
+ _KERNELTYPE._serialized_start=5040
272
+ _KERNELTYPE._serialized_end=5095
273
+ _IMPORT._serialized_start=240
274
+ _IMPORT._serialized_end=375
275
+ _CREATE._serialized_start=378
276
+ _CREATE._serialized_end=698
277
+ _DELETE._serialized_start=700
278
+ _DELETE._serialized_end=786
279
+ _BOOLEAN._serialized_start=789
280
+ _BOOLEAN._serialized_end=1048
281
+ _IMPRINT._serialized_start=1051
282
+ _IMPRINT._serialized_end=1213
283
+ _IMPRINT_IMPRINTBEHAVIOR._serialized_start=1157
284
+ _IMPRINT_IMPRINTBEHAVIOR._serialized_end=1213
285
+ _TRANSFORM._serialized_start=1216
286
+ _TRANSFORM._serialized_end=1536
287
+ _SHRINKWRAP._serialized_start=1539
288
+ _SHRINKWRAP._serialized_end=1746
289
+ _FARFIELD._serialized_start=1749
290
+ _FARFIELD._serialized_end=1927
291
+ _PATTERN._serialized_start=1930
292
+ _PATTERN._serialized_end=2307
293
+ _PATTERN_DIRECTION._serialized_start=2032
294
+ _PATTERN_DIRECTION._serialized_end=2307
295
+ _PATTERN_DIRECTION_CIRCULAR._serialized_start=2227
296
+ _PATTERN_DIRECTION_CIRCULAR._serialized_end=2299
297
+ _CONFIGURATIONS._serialized_start=2310
298
+ _CONFIGURATIONS._serialized_end=2578
299
+ _CONFIGURATIONS_CONFIGURATION._serialized_start=2427
300
+ _CONFIGURATIONS_CONFIGURATION._serialized_end=2469
301
+ _CONFIGURATIONS_CONFIGURATIONENTRY._serialized_start=2471
302
+ _CONFIGURATIONS_CONFIGURATIONENTRY._serialized_end=2578
303
+ _FEATUREISSUES._serialized_start=2580
304
+ _FEATUREISSUES._serialized_end=2666
305
+ _FEATURE._serialized_start=2669
306
+ _FEATURE._serialized_end=3275
307
+ _CREATEORUPDATETAG._serialized_start=3277
308
+ _CREATEORUPDATETAG._serialized_end=3341
309
+ _RENAMETAG._serialized_start=3343
310
+ _RENAMETAG._serialized_end=3390
311
+ _DELETETAG._serialized_start=3392
312
+ _DELETETAG._serialized_end=3448
313
+ _DELETETAGS._serialized_start=3450
314
+ _DELETETAGS._serialized_end=3477
315
+ _MODIFICATION._serialized_start=3480
316
+ _MODIFICATION._serialized_end=4393
317
+ _MODIFICATION_MODIFICATIONTYPE._serialized_start=3912
318
+ _MODIFICATION_MODIFICATIONTYPE._serialized_end=4393
319
+ _FACE._serialized_start=4396
320
+ _FACE._serialized_end=4529
321
+ _BODY._serialized_start=4532
322
+ _BODY._serialized_end=4662
323
+ _VOLUME._serialized_start=4664
324
+ _VOLUME._serialized_end=4698
325
+ _TAGS._serialized_start=4701
326
+ _TAGS._serialized_end=4895
327
+ _TAGS_TAG._serialized_start=4759
328
+ _TAGS_TAG._serialized_end=4895
330
329
  # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,49 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: proto/namedvariableset/namedvariableset.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import descriptor_pool as _descriptor_pool
7
+ from google.protobuf import message as _message
8
+ from google.protobuf import reflection as _reflection
9
+ from google.protobuf import symbol_database as _symbol_database
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+ from luminarycloud._proto.base import base_pb2 as proto_dot_base_dot_base__pb2
16
+
17
+
18
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n-proto/namedvariableset/namedvariableset.proto\x12\x1fluminary.proto.namedvariableset\x1a\x15proto/base/base.proto\"\xe5\x01\n\x17NamedVariableSetVersion\x12\n\n\x02id\x18\x01 \x01(\t\x12\x65\n\x0fnamed_variables\x18\x02 \x03(\x0b\x32L.luminary.proto.namedvariableset.NamedVariableSetVersion.NamedVariablesEntry\x1aW\n\x13NamedVariablesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12/\n\x05value\x18\x02 \x01(\x0b\x32 .luminary.proto.base.AdFloatType:\x02\x38\x01\x42/Z-luminarycloud.com/core/proto/namedvariablesetb\x06proto3')
19
+
20
+
21
+
22
+ _NAMEDVARIABLESETVERSION = DESCRIPTOR.message_types_by_name['NamedVariableSetVersion']
23
+ _NAMEDVARIABLESETVERSION_NAMEDVARIABLESENTRY = _NAMEDVARIABLESETVERSION.nested_types_by_name['NamedVariablesEntry']
24
+ NamedVariableSetVersion = _reflection.GeneratedProtocolMessageType('NamedVariableSetVersion', (_message.Message,), {
25
+
26
+ 'NamedVariablesEntry' : _reflection.GeneratedProtocolMessageType('NamedVariablesEntry', (_message.Message,), {
27
+ 'DESCRIPTOR' : _NAMEDVARIABLESETVERSION_NAMEDVARIABLESENTRY,
28
+ '__module__' : 'proto.namedvariableset.namedvariableset_pb2'
29
+ # @@protoc_insertion_point(class_scope:luminary.proto.namedvariableset.NamedVariableSetVersion.NamedVariablesEntry)
30
+ })
31
+ ,
32
+ 'DESCRIPTOR' : _NAMEDVARIABLESETVERSION,
33
+ '__module__' : 'proto.namedvariableset.namedvariableset_pb2'
34
+ # @@protoc_insertion_point(class_scope:luminary.proto.namedvariableset.NamedVariableSetVersion)
35
+ })
36
+ _sym_db.RegisterMessage(NamedVariableSetVersion)
37
+ _sym_db.RegisterMessage(NamedVariableSetVersion.NamedVariablesEntry)
38
+
39
+ if _descriptor._USE_C_DESCRIPTORS == False:
40
+
41
+ DESCRIPTOR._options = None
42
+ DESCRIPTOR._serialized_options = b'Z-luminarycloud.com/core/proto/namedvariableset'
43
+ _NAMEDVARIABLESETVERSION_NAMEDVARIABLESENTRY._options = None
44
+ _NAMEDVARIABLESETVERSION_NAMEDVARIABLESENTRY._serialized_options = b'8\001'
45
+ _NAMEDVARIABLESETVERSION._serialized_start=106
46
+ _NAMEDVARIABLESETVERSION._serialized_end=335
47
+ _NAMEDVARIABLESETVERSION_NAMEDVARIABLESENTRY._serialized_start=248
48
+ _NAMEDVARIABLESETVERSION_NAMEDVARIABLESENTRY._serialized_end=335
49
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,53 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import builtins
6
+ import collections.abc
7
+ import google.protobuf.descriptor
8
+ import google.protobuf.internal.containers
9
+ import google.protobuf.message
10
+ import luminarycloud._proto.base.base_pb2
11
+ import sys
12
+
13
+ if sys.version_info >= (3, 8):
14
+ import typing as typing_extensions
15
+ else:
16
+ import typing_extensions
17
+
18
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
19
+
20
+ class NamedVariableSetVersion(google.protobuf.message.Message):
21
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
22
+
23
+ class NamedVariablesEntry(google.protobuf.message.Message):
24
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
25
+
26
+ KEY_FIELD_NUMBER: builtins.int
27
+ VALUE_FIELD_NUMBER: builtins.int
28
+ key: builtins.str
29
+ @property
30
+ def value(self) -> luminarycloud._proto.base.base_pb2.AdFloatType: ...
31
+ def __init__(
32
+ self,
33
+ *,
34
+ key: builtins.str = ...,
35
+ value: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
36
+ ) -> None: ...
37
+ def HasField(self, field_name: typing_extensions.Literal["value", b"value"]) -> builtins.bool: ...
38
+ def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...
39
+
40
+ ID_FIELD_NUMBER: builtins.int
41
+ NAMED_VARIABLES_FIELD_NUMBER: builtins.int
42
+ id: builtins.str
43
+ @property
44
+ def named_variables(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, luminarycloud._proto.base.base_pb2.AdFloatType]: ...
45
+ def __init__(
46
+ self,
47
+ *,
48
+ id: builtins.str = ...,
49
+ named_variables: collections.abc.Mapping[builtins.str, luminarycloud._proto.base.base_pb2.AdFloatType] | None = ...,
50
+ ) -> None: ...
51
+ def ClearField(self, field_name: typing_extensions.Literal["id", b"id", "named_variables", b"named_variables"]) -> None: ...
52
+
53
+ global___NamedVariableSetVersion = NamedVariableSetVersion