luminarycloud 0.12.0__py3-none-any.whl → 0.13.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. luminarycloud/_client/client.py +10 -1
  2. luminarycloud/_client/retry_interceptor.py +1 -1
  3. luminarycloud/_client/rpc_error.py +1 -1
  4. luminarycloud/_helpers/__init__.py +23 -23
  5. luminarycloud/_helpers/{create_geometry.py → _create_geometry.py} +5 -3
  6. luminarycloud/_helpers/{create_simulation.py → _create_simulation.py} +2 -2
  7. luminarycloud/_helpers/_get_project_id.py +29 -0
  8. luminarycloud/_helpers/{simulation_params_from_json.py → _simulation_params_from_json.py} +1 -1
  9. luminarycloud/_helpers/_upload_mesh.py +7 -7
  10. luminarycloud/_helpers/_upload_table.py +2 -2
  11. luminarycloud/_helpers/{wait_for_simulation.py → _wait_for_simulation.py} +1 -1
  12. luminarycloud/_helpers/cond.py +2 -0
  13. luminarycloud/_helpers/defaults.py +8 -9
  14. luminarycloud/_helpers/proto_decorator.py +3 -1
  15. luminarycloud/_helpers/upload.py +2 -2
  16. luminarycloud/_helpers/util.py +8 -8
  17. luminarycloud/_helpers/warnings/deprecated.py +2 -0
  18. luminarycloud/_helpers/warnings/experimental.py +2 -0
  19. luminarycloud/_patch.py +3 -0
  20. luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.py +64 -64
  21. luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.pyi +5 -1
  22. luminarycloud/_proto/api/v0/luminarycloud/output_definition/output_definition_pb2.py +140 -0
  23. luminarycloud/_proto/api/v0/luminarycloud/output_definition/output_definition_pb2.pyi +196 -0
  24. luminarycloud/_proto/api/v0/luminarycloud/output_definition/output_definition_pb2_grpc.py +206 -0
  25. luminarycloud/_proto/api/v0/luminarycloud/output_definition/output_definition_pb2_grpc.pyi +78 -0
  26. luminarycloud/_proto/api/v0/luminarycloud/stopping_condition/stopping_condition_pb2.py +189 -0
  27. luminarycloud/_proto/api/v0/luminarycloud/stopping_condition/stopping_condition_pb2.pyi +342 -0
  28. luminarycloud/_proto/api/v0/luminarycloud/stopping_condition/stopping_condition_pb2_grpc.py +246 -0
  29. luminarycloud/_proto/api/v0/luminarycloud/stopping_condition/stopping_condition_pb2_grpc.pyi +104 -0
  30. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +355 -172
  31. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +517 -157
  32. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.py +131 -65
  33. luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.pyi +50 -30
  34. luminarycloud/_proto/assistant/assistant_pb2.py +160 -0
  35. luminarycloud/_proto/assistant/assistant_pb2.pyi +286 -0
  36. luminarycloud/_proto/assistant/assistant_pb2_grpc.py +236 -0
  37. luminarycloud/_proto/assistant/assistant_pb2_grpc.pyi +82 -0
  38. luminarycloud/_proto/base/base_pb2.py +29 -19
  39. luminarycloud/_proto/base/base_pb2.pyi +24 -3
  40. luminarycloud/_proto/client/simulation_pb2.py +201 -188
  41. luminarycloud/_proto/client/simulation_pb2.pyi +23 -1
  42. luminarycloud/_proto/geometry/geometry_pb2.py +56 -55
  43. luminarycloud/_proto/geometry/geometry_pb2.pyi +7 -1
  44. luminarycloud/_proto/parametricworker/parametricworker_pb2.py +150 -0
  45. luminarycloud/_proto/parametricworker/parametricworker_pb2.pyi +201 -0
  46. luminarycloud/_proto/parametricworker/parametricworker_pb2_grpc.py +203 -0
  47. luminarycloud/_proto/parametricworker/parametricworker_pb2_grpc.pyi +74 -0
  48. luminarycloud/_wrapper.py +0 -2
  49. luminarycloud/enum/__init__.py +2 -2
  50. luminarycloud/enum/output_definition_includes.py +30 -0
  51. luminarycloud/enum/vis_enums.py +41 -17
  52. luminarycloud/exceptions.py +5 -13
  53. luminarycloud/geometry.py +54 -13
  54. luminarycloud/geometry_version.py +6 -1
  55. luminarycloud/mesh.py +17 -3
  56. luminarycloud/outputs/__init__.py +26 -15
  57. luminarycloud/outputs/{output_nodes.py → output_definitions.py} +273 -160
  58. luminarycloud/outputs/stopping_conditions.py +218 -0
  59. luminarycloud/params/__init__.py +0 -1
  60. luminarycloud/params/outputs/output.py +3 -5
  61. luminarycloud/params/outputs/residual_output.py +1 -1
  62. luminarycloud/params/param_wrappers/_lib.py +71 -3
  63. luminarycloud/params/param_wrappers/simulation_param/adaptive_mesh_refinement/boundary_layer_profile_.py +2 -2
  64. luminarycloud/params/param_wrappers/simulation_param/adaptive_mesh_refinement_.py +3 -3
  65. luminarycloud/params/param_wrappers/simulation_param/adjoint_.py +2 -2
  66. luminarycloud/params/param_wrappers/simulation_param/basic/gravity/gravity_off_.py +1 -1
  67. luminarycloud/params/param_wrappers/simulation_param/basic/gravity/gravity_on_.py +1 -1
  68. luminarycloud/params/param_wrappers/simulation_param/basic/gravity_.py +2 -2
  69. luminarycloud/params/param_wrappers/simulation_param/body_frame_.py +2 -2
  70. luminarycloud/params/param_wrappers/simulation_param/entity_relationships/volume_material_relationship_.py +2 -2
  71. luminarycloud/params/param_wrappers/simulation_param/entity_relationships/volume_physics_relationship_.py +2 -2
  72. luminarycloud/params/param_wrappers/simulation_param/entity_relationships_.py +2 -2
  73. luminarycloud/params/param_wrappers/simulation_param/general_.py +4 -4
  74. luminarycloud/params/param_wrappers/simulation_param/material/fluid/boussinesq_approximation/boussinesq_off_.py +1 -1
  75. luminarycloud/params/param_wrappers/simulation_param/material/fluid/boussinesq_approximation/boussinesq_on_.py +1 -1
  76. luminarycloud/params/param_wrappers/simulation_param/material/fluid/boussinesq_approximation_.py +2 -2
  77. luminarycloud/params/param_wrappers/simulation_param/material/fluid/material_model/ideal_gas_.py +1 -1
  78. luminarycloud/params/param_wrappers/simulation_param/material/fluid/material_model/incompressible_fluid_.py +1 -1
  79. luminarycloud/params/param_wrappers/simulation_param/material/fluid/material_model/incompressible_fluid_with_energy_.py +1 -1
  80. luminarycloud/params/param_wrappers/simulation_param/material/fluid/material_model_.py +2 -2
  81. luminarycloud/params/param_wrappers/simulation_param/material/fluid/thermal_conductivity_model/prescribed_conductivity_.py +1 -1
  82. luminarycloud/params/param_wrappers/simulation_param/material/fluid/thermal_conductivity_model/prescribed_prandtl_number_.py +1 -1
  83. luminarycloud/params/param_wrappers/simulation_param/material/fluid/thermal_conductivity_model/temperature_dependent_conductivity_.py +1 -1
  84. luminarycloud/params/param_wrappers/simulation_param/material/fluid/thermal_conductivity_model_.py +2 -2
  85. luminarycloud/params/param_wrappers/simulation_param/material/fluid/viscosity_model/prescribed_viscosity_.py +1 -1
  86. luminarycloud/params/param_wrappers/simulation_param/material/fluid/viscosity_model/sutherland_.py +1 -1
  87. luminarycloud/params/param_wrappers/simulation_param/material/fluid/viscosity_model/temperature_dependent_viscosity_.py +1 -1
  88. luminarycloud/params/param_wrappers/simulation_param/material/fluid/viscosity_model_.py +2 -2
  89. luminarycloud/params/param_wrappers/simulation_param/material/material_fluid_.py +3 -3
  90. luminarycloud/params/param_wrappers/simulation_param/material/material_solid_.py +3 -3
  91. luminarycloud/params/param_wrappers/simulation_param/material_entity_.py +2 -2
  92. luminarycloud/params/param_wrappers/simulation_param/monitor_plane_.py +2 -2
  93. luminarycloud/params/param_wrappers/simulation_param/motion_data/frame_transforms/no_transform_.py +3 -3
  94. luminarycloud/params/param_wrappers/simulation_param/motion_data/frame_transforms/rotational_transform_.py +3 -3
  95. luminarycloud/params/param_wrappers/simulation_param/motion_data/frame_transforms/translational_transform_.py +3 -3
  96. luminarycloud/params/param_wrappers/simulation_param/motion_data/frame_transforms_.py +2 -2
  97. luminarycloud/params/param_wrappers/simulation_param/motion_data/motion_type/constant_angular_motion_.py +1 -1
  98. luminarycloud/params/param_wrappers/simulation_param/motion_data/motion_type/constant_translation_motion_.py +1 -1
  99. luminarycloud/params/param_wrappers/simulation_param/motion_data/motion_type_.py +2 -2
  100. luminarycloud/params/param_wrappers/simulation_param/motion_data_.py +4 -4
  101. luminarycloud/params/param_wrappers/simulation_param/multi_physics_coupling_options_.py +5 -3
  102. luminarycloud/params/param_wrappers/simulation_param/output_.py +2 -2
  103. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_normal_vector_.py +1 -1
  104. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_rotation_angles_.py +1 -1
  105. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection_.py +2 -2
  106. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/actuator_disk_.py +1 -1
  107. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/actuator_line_.py +1 -1
  108. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/probe_points_.py +1 -1
  109. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type/source_points_.py +1 -1
  110. luminarycloud/params/param_wrappers/simulation_param/particle_group/particle_group_type_.py +2 -2
  111. luminarycloud/params/param_wrappers/simulation_param/particle_group_.py +2 -2
  112. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/adjoint_controls_fluid_.py +3 -3
  113. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/basic_fluid_.py +3 -3
  114. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/farfield_.py +5 -5
  115. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/inlet/fan_curve_inlet_.py +4 -4
  116. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/inlet/mass_flow_inlet_.py +4 -4
  117. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/inlet/total_pressure_inlet_.py +4 -4
  118. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/inlet/velocity_components_inlet_.py +3 -3
  119. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/inlet/velocity_magnitude_inlet_.py +4 -4
  120. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/inlet_.py +5 -5
  121. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/outlet/outlet_strategy/fan_curve_outlet_.py +1 -1
  122. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_pressure_.py +1 -1
  123. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_corrected_mass_flow_rate_.py +1 -1
  124. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_mass_flow_rate_.py +1 -1
  125. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/outlet/outlet_strategy_.py +2 -2
  126. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/outlet_.py +4 -4
  127. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/symmetry_.py +3 -3
  128. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega/bc_komega_variables_.py +1 -1
  129. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega/bc_turbulent_viscosity_and_intensity_komega_.py +1 -1
  130. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega/bc_turbulent_viscosity_ratio_and_intensity_komega_.py +1 -1
  131. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/komega_boundary_conditions_.py +2 -2
  132. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras/bc_sa_variable_.py +1 -1
  133. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras/bc_turbulent_viscosity_ratio_sa_.py +1 -1
  134. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras/bc_turbulent_viscosity_sa_.py +1 -1
  135. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence/spalart_allmaras_boundary_conditions_.py +2 -2
  136. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/turbulence_boundary_conditions_.py +2 -2
  137. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall/energy/prescribed_heat_flux_.py +1 -1
  138. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall/energy/prescribed_temperature_.py +1 -1
  139. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall/momentum/no_slip_.py +1 -1
  140. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall/momentum/slip_.py +1 -1
  141. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall/momentum/wall_model_.py +1 -1
  142. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall/wall_energy_.py +2 -2
  143. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall/wall_momentum_.py +2 -2
  144. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions/wall_.py +3 -3
  145. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/boundary_conditions_fluid_.py +2 -2
  146. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/fluid_existing_solution_.py +3 -3
  147. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/fluid_farfield_values_.py +3 -3
  148. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/fluid_prescribed_values_.py +3 -3
  149. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega/init_farfield_values_komega_.py +1 -1
  150. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega/init_turbulent_viscosity_and_intensity_komega_.py +1 -1
  151. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega/init_turbulent_viscosity_ratio_and_intensity_komega_.py +1 -1
  152. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/komega_initialization_.py +2 -2
  153. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_farfield_values_sa_.py +1 -1
  154. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_sa_variable_.py +1 -1
  155. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_turbulent_viscosity_ratio_sa_.py +1 -1
  156. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras/init_turbulent_viscosity_sa_.py +1 -1
  157. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence/spalart_allmaras_initialization_.py +2 -2
  158. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization/turbulence_initialization_.py +2 -2
  159. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/initialization_fluid_.py +2 -2
  160. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/blade_element_airfoil_data_.py +2 -2
  161. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_blade_element_.py +1 -1
  162. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_radial_distribution_.py +1 -1
  163. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_uniform_thrust_.py +1 -1
  164. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/fan_curve_internal_.py +1 -1
  165. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model_.py +1 -1
  166. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model/actuator_line_blade_element_.py +1 -1
  167. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model_.py +1 -1
  168. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/blade_element_params_.py +2 -2
  169. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_acceleration_source_.py +1 -1
  170. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_mass_source_.py +1 -1
  171. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model_.py +1 -1
  172. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior/physical_behavior_model_.py +2 -2
  173. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/physical_behavior_.py +4 -4
  174. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/porous_behavior_.py +3 -3
  175. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/fluid_relaxation_method/fluid_explicit_relaxation_.py +1 -1
  176. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_off_.py +1 -1
  177. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_on_.py +1 -1
  178. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup_.py +2 -2
  179. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation_.py +1 -1
  180. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/fluid_relaxation_method_.py +2 -2
  181. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/pseudo_time_step_method/cfl_based_.py +1 -1
  182. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/pseudo_time_step_method/fixed_pseudo_time_step_.py +1 -1
  183. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls/pseudo_time_step_method_.py +2 -2
  184. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/solution_controls_fluid_.py +10 -8
  185. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme/ec2_.py +1 -1
  186. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme/fds_.py +1 -1
  187. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme/ld2_.py +1 -1
  188. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme/rhie_chow_.py +1 -1
  189. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme_.py +2 -2
  190. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme_order/first_order_.py +1 -1
  191. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme_order/second_order_.py +1 -1
  192. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization/convective_scheme_order_.py +2 -2
  193. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/spatial_discretization_fluid_.py +17 -11
  194. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/des_formulation/ddes_.py +1 -1
  195. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/des_formulation/ddes_vtm_.py +1 -1
  196. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/des_formulation/iddes_.py +1 -1
  197. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/des_formulation_.py +2 -2
  198. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/komega_sst/constants/custom_komega_sst_constants_.py +1 -1
  199. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/komega_sst/constants/default_komega_sst_constants_.py +1 -1
  200. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/komega_sst/komega_sst_constants_.py +2 -2
  201. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/komega_sst_.py +4 -4
  202. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/spalart_allmaras/constants/custom_spalart_allmaras_constants_.py +1 -1
  203. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/spalart_allmaras/constants/default_spalart_allmaras_constants_.py +1 -1
  204. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/spalart_allmaras/spalart_allmaras_constants_.py +2 -2
  205. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/spalart_allmaras_.py +5 -5
  206. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/sub_grid_scale_model/amd_.py +1 -1
  207. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/sub_grid_scale_model/sigma_.py +1 -1
  208. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/sub_grid_scale_model/smagorinsky_.py +1 -1
  209. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/sub_grid_scale_model/vreman_.py +1 -1
  210. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/sub_grid_scale_model/wale_.py +1 -1
  211. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence/sub_grid_scale_model_.py +2 -2
  212. luminarycloud/params/param_wrappers/simulation_param/physics/fluid/turbulence_.py +4 -4
  213. luminarycloud/params/param_wrappers/simulation_param/physics/fluid_.py +2 -2
  214. luminarycloud/params/param_wrappers/simulation_param/physics/heat/adjoint_controls_heat_.py +3 -3
  215. luminarycloud/params/param_wrappers/simulation_param/physics/heat/boundary_conditions/heat_bc_convection_.py +3 -3
  216. luminarycloud/params/param_wrappers/simulation_param/physics/heat/boundary_conditions/heat_bc_heat_flux_.py +3 -3
  217. luminarycloud/params/param_wrappers/simulation_param/physics/heat/boundary_conditions/heat_bc_integrated_heat_flux_.py +4 -3
  218. luminarycloud/params/param_wrappers/simulation_param/physics/heat/boundary_conditions/heat_bc_symmetry_.py +3 -3
  219. luminarycloud/params/param_wrappers/simulation_param/physics/heat/boundary_conditions/heat_bc_temperature_.py +3 -3
  220. luminarycloud/params/param_wrappers/simulation_param/physics/heat/boundary_conditions_heat_.py +3 -3
  221. luminarycloud/params/param_wrappers/simulation_param/physics/heat/heat_source/heat_source_type/heat_source_type_power_.py +1 -1
  222. luminarycloud/params/param_wrappers/simulation_param/physics/heat/heat_source/heat_source_type/heat_source_type_power_per_unit_of_volume_.py +1 -1
  223. luminarycloud/params/param_wrappers/simulation_param/physics/heat/heat_source/heat_source_type_.py +2 -2
  224. luminarycloud/params/param_wrappers/simulation_param/physics/heat/heat_source_.py +3 -3
  225. luminarycloud/params/param_wrappers/simulation_param/physics/heat/initialization/heat_existing_solution_.py +3 -3
  226. luminarycloud/params/param_wrappers/simulation_param/physics/heat/initialization/heat_prescribed_values_.py +3 -3
  227. luminarycloud/params/param_wrappers/simulation_param/physics/heat/initialization_heat_.py +2 -2
  228. luminarycloud/params/param_wrappers/simulation_param/physics/heat/solution_controls/heat_relaxation_method/heat_implicit_relaxation_.py +1 -1
  229. luminarycloud/params/param_wrappers/simulation_param/physics/heat/solution_controls/heat_relaxation_method_.py +2 -2
  230. luminarycloud/params/param_wrappers/simulation_param/physics/heat/solution_controls_heat_.py +8 -6
  231. luminarycloud/params/param_wrappers/simulation_param/physics/heat/spatial_discretization_heat_.py +5 -5
  232. luminarycloud/params/param_wrappers/simulation_param/physics/heat_.py +2 -2
  233. luminarycloud/params/param_wrappers/simulation_param/physics/periodic_pair/periodicity_type/rotational_periodicity_.py +1 -1
  234. luminarycloud/params/param_wrappers/simulation_param/physics/periodic_pair/periodicity_type/translational_periodicity_.py +1 -1
  235. luminarycloud/params/param_wrappers/simulation_param/physics/periodic_pair/periodicity_type_.py +2 -2
  236. luminarycloud/params/param_wrappers/simulation_param/physics/periodic_pair_.py +2 -2
  237. luminarycloud/params/param_wrappers/simulation_param/physics/solution_controls/linear_solver_type/gauss_seidel_.py +1 -1
  238. luminarycloud/params/param_wrappers/simulation_param/physics/solution_controls/linear_solver_type/krylov_amg_.py +1 -1
  239. luminarycloud/params/param_wrappers/simulation_param/physics/solution_controls/linear_solver_type_.py +2 -2
  240. luminarycloud/params/param_wrappers/simulation_param/physics_.py +2 -2
  241. luminarycloud/params/param_wrappers/simulation_param/sliding_interfaces_.py +3 -3
  242. luminarycloud/params/param_wrappers/simulation_param/surface_name_.py +2 -2
  243. luminarycloud/params/param_wrappers/simulation_param/time/compute_statistics/compute_statistics_off_.py +1 -1
  244. luminarycloud/params/param_wrappers/simulation_param/time/compute_statistics/compute_statistics_on_.py +1 -1
  245. luminarycloud/params/param_wrappers/simulation_param/time/compute_statistics_.py +2 -2
  246. luminarycloud/params/param_wrappers/simulation_param/time/time_marching/time_explicit_.py +1 -1
  247. luminarycloud/params/param_wrappers/simulation_param/time/time_marching/time_implicit_.py +1 -1
  248. luminarycloud/params/param_wrappers/simulation_param/time/time_marching_.py +2 -2
  249. luminarycloud/params/param_wrappers/simulation_param/time/time_step_ramp/time_step_ramp_off_.py +1 -1
  250. luminarycloud/params/param_wrappers/simulation_param/time/time_step_ramp/time_step_ramp_on_.py +1 -1
  251. luminarycloud/params/param_wrappers/simulation_param/time/time_step_ramp_.py +2 -2
  252. luminarycloud/params/param_wrappers/simulation_param/time_.py +3 -3
  253. luminarycloud/params/param_wrappers/simulation_param/volume_entity_.py +2 -2
  254. luminarycloud/params/param_wrappers/simulation_param_.py +2 -2
  255. luminarycloud/project.py +52 -71
  256. luminarycloud/reference_values.py +3 -1
  257. luminarycloud/simulation.py +2 -2
  258. luminarycloud/simulation_param.py +88 -39
  259. luminarycloud/simulation_template.py +291 -6
  260. luminarycloud/solution.py +10 -1
  261. luminarycloud/tables.py +10 -8
  262. luminarycloud/types/adfloat.py +33 -25
  263. luminarycloud/types/vector3.py +1 -5
  264. luminarycloud/vis/__init__.py +9 -3
  265. luminarycloud/vis/display.py +8 -0
  266. luminarycloud/vis/filters.py +100 -46
  267. luminarycloud/vis/interactive_scene.py +85 -0
  268. luminarycloud/vis/visualization.py +306 -160
  269. luminarycloud/volume_selection.py +46 -18
  270. {luminarycloud-0.12.0.dist-info → luminarycloud-0.13.0.dist-info}/METADATA +19 -14
  271. {luminarycloud-0.12.0.dist-info → luminarycloud-0.13.0.dist-info}/RECORD +274 -259
  272. {luminarycloud-0.12.0.dist-info → luminarycloud-0.13.0.dist-info}/WHEEL +1 -2
  273. luminarycloud/params/convergence_criteria/__init__.py +0 -3
  274. luminarycloud/params/convergence_criteria/convergence_criteria.py +0 -92
  275. luminarycloud/params/convergence_criteria/stopping_condition.py +0 -32
  276. luminarycloud/vis/util.py +0 -46
  277. luminarycloud-0.12.0.dist-info/top_level.txt +0 -1
  278. /luminarycloud/_helpers/{timestamp_to_datetime.py → _timestamp_to_datetime.py} +0 -0
  279. /luminarycloud/_helpers/{wait_for_mesh.py → _wait_for_mesh.py} +0 -0
@@ -12,6 +12,12 @@ from .._auth import Auth0Client
12
12
  from .._proto.api.v0.luminarycloud.geometry.geometry_pb2_grpc import GeometryServiceStub
13
13
  from .._proto.api.v0.luminarycloud.mesh.mesh_pb2_grpc import MeshServiceStub
14
14
  from .._proto.api.v0.luminarycloud.output_node.output_node_pb2_grpc import OutputNodeServiceStub
15
+ from .._proto.api.v0.luminarycloud.output_definition.output_definition_pb2_grpc import (
16
+ OutputDefinitionServiceStub,
17
+ )
18
+ from .._proto.api.v0.luminarycloud.stopping_condition.stopping_condition_pb2_grpc import (
19
+ StoppingConditionServiceStub,
20
+ )
15
21
  from .._proto.api.v0.luminarycloud.project.project_pb2_grpc import ProjectServiceStub
16
22
  from .._proto.api.v0.luminarycloud.simulation.simulation_pb2_grpc import (
17
23
  SimulationServiceStub,
@@ -42,6 +48,8 @@ class Client(
42
48
  UploadServiceStub,
43
49
  VisAPIServiceStub,
44
50
  OutputNodeServiceStub,
51
+ OutputDefinitionServiceStub,
52
+ StoppingConditionServiceStub,
45
53
  ):
46
54
  """
47
55
  Creates a Luminary API client.
@@ -183,7 +191,8 @@ class Client(
183
191
  SimulationTemplateServiceStub.__init__(self, self._channel)
184
192
  VisAPIServiceStub.__init__(self, self._channel)
185
193
  OutputNodeServiceStub.__init__(self, self._channel)
186
-
194
+ OutputDefinitionServiceStub.__init__(self, self._channel)
195
+ StoppingConditionServiceStub.__init__(self, self._channel)
187
196
  for name, value in self.__dict__.items():
188
197
  if isinstance(value, grpc.UnaryUnaryMultiCallable):
189
198
  setattr(self, name, rpc_error(value))
@@ -52,6 +52,6 @@ class RetryInterceptor(UnaryUnaryClientInterceptor):
52
52
  call.result()
53
53
  except grpc.RpcError as e:
54
54
  if e.code() == grpc.StatusCode.UNAUTHENTICATED:
55
- raise AuthenticationError() from None # type: ignore[type-arg]
55
+ raise AuthenticationError(e.details(), e.code()) from None
56
56
  raise
57
57
  return call
@@ -27,7 +27,7 @@ def rpc_error(func: Callable[..., Any]) -> Callable[..., Any]:
27
27
  for code, exception in _CODE_TO_EXCEPTION.items():
28
28
  if e.code() == code:
29
29
  logger.debug(f"RPC failed: {e.code().name}", exc_info=True)
30
- raise exception(e.details()) from None
30
+ raise exception(e.details(), code) from None
31
31
  raise e
32
32
 
33
33
  return wrapper
@@ -1,39 +1,39 @@
1
1
  # Copyright 2023-2024 Luminary Cloud, Inc. All Rights Reserved.
2
- from .create_geometry import (
3
- create_geometry,
2
+ from ._create_geometry import (
3
+ create_geometry as create_geometry,
4
4
  )
5
- from .create_simulation import (
6
- create_simulation,
5
+ from ._create_simulation import (
6
+ create_simulation as create_simulation,
7
7
  )
8
8
  from .download import (
9
- download_surface_solution,
10
- download_volume_solution,
11
- download_surface_deformation_template,
12
- download_surface_sensitivity_data,
13
- save_file,
9
+ download_surface_solution as download_surface_solution,
10
+ download_volume_solution as download_volume_solution,
11
+ download_surface_deformation_template as download_surface_deformation_template,
12
+ download_surface_sensitivity_data as download_surface_sensitivity_data,
13
+ save_file as save_file,
14
14
  )
15
15
  from .file_chunk_stream import (
16
- FileChunkStream,
16
+ FileChunkStream as FileChunkStream,
17
17
  )
18
- from .simulation_params_from_json import (
19
- simulation_params_from_json,
20
- simulation_params_from_json_path,
18
+ from ._simulation_params_from_json import (
19
+ simulation_params_from_json as simulation_params_from_json,
20
+ simulation_params_from_json_path as simulation_params_from_json_path,
21
21
  )
22
- from .timestamp_to_datetime import (
23
- timestamp_to_datetime,
22
+ from ._timestamp_to_datetime import (
23
+ timestamp_to_datetime as timestamp_to_datetime,
24
24
  )
25
25
  from .upload import (
26
- upload_file,
26
+ upload_file as upload_file,
27
27
  )
28
28
  from ._upload_mesh import (
29
- upload_mesh,
30
- upload_mesh_from_local_file,
31
- upload_mesh_from_url,
29
+ upload_mesh as upload_mesh,
30
+ upload_mesh_from_local_file as upload_mesh_from_local_file,
31
+ upload_mesh_from_url as upload_mesh_from_url,
32
32
  )
33
33
  from ._upload_table import (
34
- upload_table_as_json,
35
- upload_c81_as_json,
34
+ upload_table_as_json as upload_table_as_json,
35
+ upload_c81_as_json as upload_c81_as_json,
36
36
  )
37
- from .wait_for_simulation import (
38
- wait_for_simulation,
37
+ from ._wait_for_simulation import (
38
+ wait_for_simulation as wait_for_simulation,
39
39
  )
@@ -4,7 +4,7 @@ from luminarycloud._proto.upload import upload_pb2 as uploadpb
4
4
  from os import PathLike
5
5
  from .._client import Client
6
6
  from .upload import upload_file
7
- from typing import Any, Optional
7
+ from typing import Optional
8
8
  from luminarycloud._helpers import util
9
9
  import uuid
10
10
  import random
@@ -17,18 +17,19 @@ logger = logging.getLogger(__name__)
17
17
 
18
18
  def create_geometry(
19
19
  client: Client,
20
- cad_file_path: PathLike,
20
+ cad_file_path: PathLike | str,
21
21
  project_id: str,
22
22
  *,
23
23
  name: Optional[str] = None,
24
24
  scaling: Optional[float] = None,
25
25
  wait: bool = False,
26
+ convert_to_discrete: bool = False,
26
27
  ) -> geometrypb.Geometry:
27
28
 
28
29
  cad_file_meta = util.get_file_metadata(cad_file_path)
29
30
  logger.info(
30
31
  f"creating geometry in {project_id} by uploading file: {cad_file_meta.name}.{cad_file_meta.ext}, "
31
- + f"size: {cad_file_meta.size} bytes, sha256: {cad_file_meta.sha256_checksum}, "
32
+ + f"size: {cad_file_meta.size} bytes, sha256: {str(cad_file_meta.sha256_checksum)}, "
32
33
  + f"crc32c: {cad_file_meta.crc32c_checksum}"
33
34
  )
34
35
 
@@ -55,6 +56,7 @@ def create_geometry(
55
56
  scaling=scaling,
56
57
  wait=False,
57
58
  request_id=str(uuid.uuid4()),
59
+ force_discrete=convert_to_discrete,
58
60
  )
59
61
  )
60
62
  geo = create_geo_res.geometry
@@ -36,8 +36,8 @@ def create_simulation(
36
36
  description=description,
37
37
  simulation_options=SimulationOptions(
38
38
  batch_processing=batch_processing,
39
- gpu_type=gpu_type,
40
- gpu_count=gpu_count,
39
+ gpu_type=gpu_type.value if gpu_type is not None else GPUType.UNSPECIFIED.value,
40
+ gpu_count=gpu_count or 0,
41
41
  ),
42
42
  )
43
43
  )
@@ -0,0 +1,29 @@
1
+ from ..simulation import get_simulation
2
+ from ..geometry import Geometry
3
+ from ..solution import Solution
4
+ from ..mesh import Mesh
5
+
6
+
7
+ def _get_project_id(entity: Geometry | Solution | Mesh) -> str | None:
8
+ """
9
+ A helper function to get the project id from various entities.
10
+ Returns the project id or None if the entity type is unknown.
11
+
12
+ Parameters
13
+ ----------
14
+ entiry: Geometry | Solution | Mesh
15
+ The entity to get the project id from.
16
+ """
17
+ if isinstance(entity, Solution):
18
+ solution: Solution = entity
19
+ sim = get_simulation(solution.simulation_id)
20
+ return sim.project_id
21
+ elif isinstance(entity, Mesh):
22
+ mesh: Mesh = entity
23
+ return mesh.project_id
24
+ elif isinstance(entity, Geometry):
25
+ geometry: Geometry = entity
26
+ project = geometry.project()
27
+ return project.id
28
+ else:
29
+ return None
@@ -11,7 +11,7 @@ def simulation_params_from_json(text: Union[str, bytes]) -> SimulationParam:
11
11
  return Parse(text, SimulationParam(), ignore_unknown_fields=True)
12
12
 
13
13
 
14
- def simulation_params_from_json_path(json_path: PathLike) -> SimulationParam:
14
+ def simulation_params_from_json_path(json_path: PathLike | str) -> SimulationParam:
15
15
  with open(json_path, "rb") as fp:
16
16
  json_bytes = fp.read()
17
17
  return simulation_params_from_json(json_bytes)
@@ -55,7 +55,7 @@ def _upload_mesh_from_path(
55
55
  project_id: str,
56
56
  filepath: Union[os.PathLike, str],
57
57
  size: int,
58
- sha256_checksum: str,
58
+ sha256_checksum: bytes,
59
59
  crc32c_checksum: bytes,
60
60
  mesh_type: MeshType,
61
61
  *,
@@ -79,9 +79,9 @@ def _upload_mesh_from_path(
79
79
  appropriate filename extension.
80
80
  size: int
81
81
  The size of the stream to be read
82
- sha256checksum: str
82
+ sha256checksum: bytes
83
83
  The SHA256 digest of the mesh file to upload
84
- crc32c_checksum: str
84
+ crc32c_checksum: bytes
85
85
  The CRC32C digest of the mesh file to upload
86
86
  mesh_type : MeshType
87
87
  The file format of the mesh file.
@@ -110,7 +110,7 @@ def _upload_mesh_from_path(
110
110
  ext=file_ext, # note: this must be the extension without the dot
111
111
  size=size,
112
112
  sha256_checksum=sha256_checksum,
113
- crc32c_checksum=crc32c_checksum,
113
+ crc32c_checksum=crc32c_checksum.decode(),
114
114
  )
115
115
  create_upload_res: uploadpb.CreateUploadReply = client.CreateUpload(
116
116
  uploadpb.CreateUploadRequest(
@@ -118,10 +118,10 @@ def _upload_mesh_from_path(
118
118
  file_meta=file_metadata,
119
119
  resource_params=uploadpb.ResourceParams(
120
120
  mesh_params=uploadpb.MeshParams(
121
- mesh_name=name,
121
+ mesh_name=name or file_name_without_ext,
122
122
  scaling=scaling if scaling is not None else 1.0,
123
- mesh_type=mesh_type,
124
- do_not_read_zones_openfoam=do_not_read_zones_openfoam,
123
+ mesh_type=mesh_type.value,
124
+ do_not_read_zones_openfoam=do_not_read_zones_openfoam or False,
125
125
  # We force disconnect to True here because we are not exposing this parameter.
126
126
  disconnect=True,
127
127
  )
@@ -63,7 +63,7 @@ def upload_table_as_json(
63
63
  def upload_c81_as_json(
64
64
  client: Client,
65
65
  project_id: str,
66
- c81: PathLike,
66
+ c81: PathLike | str,
67
67
  ) -> str:
68
68
  """
69
69
  Uploads a c81 table and converts it to RectilinearTable json.
@@ -74,7 +74,7 @@ def upload_c81_as_json(
74
74
  A LuminaryCloud Client (see client.py)
75
75
  project_id: str
76
76
  The ID of the project to upload the table under
77
- c81: PathLike
77
+ c81: PathLike or str
78
78
  Path to c81 file to upload
79
79
 
80
80
  Returns
@@ -75,7 +75,7 @@ def _print_residuals(client: Client, simulation_id: str, last_printed_iter: int)
75
75
  residuals: GetSimulationGlobalResidualsResponse = client.GetSimulationGlobalResiduals(
76
76
  GetSimulationGlobalResidualsRequest(id=simulation_id)
77
77
  )
78
- with io.StringIO(residuals.csv_file.data.decode()) as stream:
78
+ with io.StringIO(residuals.csv_file.full_contents.decode()) as stream:
79
79
  if last_printed_iter < 0: # we haven't printed the header yet
80
80
  first_line = stream.readline().strip().split(",")
81
81
  header = "\t".join("{:>18}".format(s) for s in first_line)
@@ -1,4 +1,6 @@
1
1
  # Copyright 2024 Luminary Cloud, Inc. All Rights Reserved.
2
+ # type: ignore
3
+
2
4
  import json
3
5
  from contextlib import contextmanager
4
6
  from dataclasses import dataclass
@@ -1,14 +1,13 @@
1
1
  # Copyright 2024 Luminary Cloud, Inc. All Rights Reserved.
2
- from typing import Any
3
-
4
2
  from google.protobuf.any_pb2 import Any as AnyPB
5
3
  from google.protobuf.descriptor import FieldDescriptor
6
4
 
7
5
  import luminarycloud._proto.base.base_pb2 as basepb
8
6
  import luminarycloud._proto.options.options_pb2 as optionspb
7
+ from luminarycloud.types.vector3 import _to_vector3_proto
9
8
 
10
9
 
11
- def _reset_defaults(params):
10
+ def _reset_defaults(params: AnyPB) -> None:
12
11
  for field in params.DESCRIPTOR.fields:
13
12
  if field.label == FieldDescriptor.LABEL_REPEATED:
14
13
  for nested in getattr(params, field.name):
@@ -19,7 +18,7 @@ def _reset_defaults(params):
19
18
  _reset_defaults(getattr(params, field.name))
20
19
 
21
20
 
22
- def _set_default(params: AnyPB, name: str) -> Any:
21
+ def _set_default(params: AnyPB, name: str) -> None:
23
22
  field = params.DESCRIPTOR.fields_by_name[name]
24
23
  dfl: optionspb.Value = field.GetOptions().Extensions[optionspb.default_value]
25
24
  type = dfl.WhichOneof("typ")
@@ -30,12 +29,12 @@ def _set_default(params: AnyPB, name: str) -> Any:
30
29
  elif type == "strval":
31
30
  setattr(params, name, dfl.strval)
32
31
  elif type == "intval":
33
- param: basepb.Int = getattr(params, name)
34
- param.value = dfl.intval
32
+ int_param: basepb.Int = getattr(params, name)
33
+ int_param.value = dfl.intval
35
34
  elif type == "real":
36
- param: basepb.AdFloatType = getattr(params, name)
37
- param.CopyFrom(dfl.real)
35
+ real_param: basepb.AdFloatType = getattr(params, name)
36
+ real_param.CopyFrom(dfl.real)
38
37
  elif type == "vector3":
39
- param: basepb.Vector3 = getattr(params, name)
38
+ param: basepb.AdVector3 = getattr(params, name)
40
39
  param.CopyFrom(dfl.vector3)
41
40
  return None
@@ -21,6 +21,8 @@ class proto_decorator(Generic[P]):
21
21
  NOTE: only works for primitive and basepb.Vector3 fields right now.
22
22
  """
23
23
 
24
+ proto_type: type[P]
25
+
24
26
  def __init__(decorator, proto_type: type[P]):
25
27
  decorator.proto_type = proto_type
26
28
 
@@ -28,7 +30,7 @@ class proto_decorator(Generic[P]):
28
30
  type_hints = get_type_hints(cls)
29
31
  fields = decorator.proto_type.DESCRIPTOR.fields
30
32
 
31
- def _to_proto(self) -> decorator.proto_type:
33
+ def _to_proto(self: type[C]) -> P:
32
34
  proto = decorator.proto_type()
33
35
  for field in fields:
34
36
  _type = type_hints.get(field.name, None)
@@ -14,7 +14,7 @@ logger = logging.getLogger(__name__)
14
14
 
15
15
 
16
16
  def gcs_resumable_upload(
17
- filepath: PathLike, signed_url: str, http_headers: Mapping[str, str]
17
+ filepath: PathLike | str, signed_url: str, http_headers: Mapping[str, str]
18
18
  ) -> None:
19
19
  """
20
20
  Performs a resumable upload to a GCS signed url.
@@ -70,7 +70,7 @@ def upload_file(
70
70
  client: Client,
71
71
  project_id: str,
72
72
  resource_params: uploadpb.ResourceParams,
73
- file_path: PathLike,
73
+ file_path: PathLike | str,
74
74
  ) -> tuple[str, uploadpb.FinishUploadReply]:
75
75
  file_metadata = util.get_file_metadata(pathlib.Path(file_path))
76
76
 
@@ -5,7 +5,7 @@ import io
5
5
  import logging
6
6
  import os
7
7
  from os import PathLike
8
- from typing import Iterator, Tuple, Union
8
+ from typing import Iterator, Tuple
9
9
 
10
10
  import google_crc32c as crc32c
11
11
 
@@ -18,7 +18,7 @@ DEFAULT_CHUNK_SIZE_BYTES = 1024 * 1024
18
18
 
19
19
  def _chunker(
20
20
  stream: io.BufferedIOBase,
21
- chunk_size: int = None,
21
+ chunk_size: int | None = None,
22
22
  ) -> Iterator[Tuple[int, bytes]]:
23
23
  """
24
24
  Generator which breaks the stream into chunks.
@@ -51,9 +51,9 @@ def _chunker(
51
51
 
52
52
 
53
53
  def digest_sha256(
54
- path: Union[os.PathLike, str],
54
+ path: PathLike | str,
55
55
  *,
56
- chunk_size: int = None,
56
+ chunk_size: int | None = None,
57
57
  ) -> bytes:
58
58
  """
59
59
  Computes the sha256 digest of the file at the given path.
@@ -79,9 +79,9 @@ def digest_sha256(
79
79
 
80
80
 
81
81
  def digest_crc32c(
82
- path: Union[os.PathLike, str],
82
+ path: PathLike | str,
83
83
  *,
84
- chunk_size: int = None,
84
+ chunk_size: int | None = None,
85
85
  ) -> bytes:
86
86
  """
87
87
  Computes the crc32c digest of the file at the given path and returns it as
@@ -109,7 +109,7 @@ def digest_crc32c(
109
109
 
110
110
 
111
111
  def get_file_metadata(
112
- file_path: PathLike,
112
+ file_path: PathLike | str,
113
113
  ) -> filepb.FileMetadata:
114
114
 
115
115
  if not os.path.exists(file_path):
@@ -131,5 +131,5 @@ def get_file_metadata(
131
131
  ext=file_ext,
132
132
  size=os.path.getsize(file_path),
133
133
  sha256_checksum=digest_sha256(file_path),
134
- crc32c_checksum=digest_crc32c(file_path),
134
+ crc32c_checksum=digest_crc32c(file_path).decode(),
135
135
  )
@@ -1,3 +1,5 @@
1
+ # mypy: ignore-errors
2
+
1
3
  import warnings
2
4
  from functools import wraps
3
5
  from typing import Callable, TypeVar
@@ -1,3 +1,5 @@
1
+ # mypy: ignore-errors
2
+
1
3
  import warnings
2
4
  from functools import wraps
3
5
  from typing import Callable, TypeVar
luminarycloud/_patch.py CHANGED
@@ -1,3 +1,6 @@
1
+ # Copyright 2024 Luminary Cloud, Inc. All Rights Reserved.
2
+ # type: ignore
3
+
1
4
  from functools import wraps
2
5
  from typing import TypeVar
3
6
 
@@ -21,7 +21,7 @@ from luminarycloud._proto.api.v0.luminarycloud.common import common_pb2 as proto
21
21
  from luminarycloud._proto.upload import upload_pb2 as proto_dot_upload_dot_upload__pb2
22
22
 
23
23
 
24
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n*proto/api/v0/luminarycloud/mesh/mesh.proto\x12(luminary.proto.api.v0.luminarycloud.mesh\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x15proto/base/base.proto\x1a\x15proto/cad/shape.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\x1a\x19proto/upload/upload.proto\"\xce\x02\n\x04Mesh\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12I\n\x06status\x18\x04 \x01(\x0e\x32\x39.luminary.proto.api.v0.luminarycloud.mesh.Mesh.MeshStatus\x12 \n\x13geometry_version_id\x18\x05 \x01(\tH\x00\x88\x01\x01\"v\n\nMeshStatus\x12\x1b\n\x17MESH_STATUS_UNSPECIFIED\x10\x00\x12\x18\n\x14MESH_STATUS_CREATING\x10\x01\x12\x19\n\x15MESH_STATUS_COMPLETED\x10\x02\x12\x16\n\x12MESH_STATUS_FAILED\x10\x03\x42\x16\n\x14_geometry_version_id\"\x1c\n\x0eGetMeshRequest\x12\n\n\x02id\x18\x01 \x01(\t\"O\n\x0fGetMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"$\n\x16GetMeshMetadataRequest\x12\n\n\x02id\x18\x01 \x01(\t\"h\n\x17GetMeshMetadataResponse\x12M\n\rmesh_metadata\x18\x01 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata\"\xd2\x04\n\x0cMeshMetadata\x12J\n\x05zones\x18\x01 \x03(\x0b\x32;.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.Zone\x1a\xcd\x01\n\tMeshStats\x12\x10\n\x08n_points\x18\x01 \x01(\x03\x12\x0f\n\x07n_faces\x18\x02 \x01(\x03\x12\r\n\x05n_cvs\x18\x03 \x01(\x03\x12\x46\n\tmin_coord\x18\x05 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x46\n\tmax_coord\x18\x06 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x1ai\n\x08\x42oundary\x12\x0c\n\x04name\x18\x01 \x01(\t\x12O\n\x05stats\x18\x02 \x01(\x0b\x32@.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.MeshStats\x1a\xba\x01\n\x04Zone\x12S\n\nboundaries\x18\x01 \x03(\x0b\x32?.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.Boundary\x12O\n\x05stats\x18\x02 \x01(\x0b\x32@.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.MeshStats\x12\x0c\n\x04name\x18\x03 \x01(\t\"\'\n\x11ListMeshesRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"T\n\x12ListMeshesResponse\x12>\n\x06meshes\x18\x01 \x03(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"-\n\x11UpdateMeshRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"R\n\x12UpdateMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"\x83\x02\n\x11\x43reateMeshRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12`\n\x16mesh_adaptation_params\x18\x03 \x01(\x0b\x32>.luminary.proto.api.v0.luminarycloud.mesh.MeshAdaptationParamsH\x00\x12`\n\x16mesh_generation_params\x18\x04 \x01(\x0b\x32>.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParamsH\x00\x42\x08\n\x06params\"R\n\x12\x43reateMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"\xff\x01\n\x11UploadMeshRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07scaling\x18\x03 \x01(\x01\x12\x14\n\x0cupload_token\x18\x04 \x01(\t\x12I\n\nfile_chunk\x18\x05 \x01(\x0b\x32\x35.luminary.proto.api.v0.luminarycloud.common.FileChunk\x12\x32\n\tmesh_type\x18\x06 \x01(\x0e\x32\x1f.luminary.proto.upload.MeshType\x12\"\n\x1a\x64o_not_read_zones_openfoam\x18\x07 \x01(\x08\"h\n\x12UploadMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\x12\x14\n\x0cupload_token\x18\x02 \x01(\t\"\x1f\n\x11\x44\x65leteMeshRequest\x12\n\n\x02id\x18\x01 \x01(\t\"t\n\x14MeshAdaptationParams\x12\x1c\n\x14source_simulation_id\x18\x01 \x01(\t\x12\x17\n\x0ftarget_cv_count\x18\x02 \x01(\x04\x12\x0f\n\x07h_ratio\x18\x03 \x01(\x01\x12\x14\n\x0c\x61spect_ratio\x18\x04 \x01(\x01\"\x9e\x10\n\x14MeshGenerationParams\x12\x33\n\x0b\x62ody_x_axis\x18\x01 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12\x33\n\x0b\x62ody_y_axis\x18\x02 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12\x16\n\x0e\x61\x64\x64_refinement\x18\x03 \x01(\x08\x12\x18\n\x10proximity_layers\x18\x04 \x01(\r\x12\x62\n\rvolume_params\x18\x05 \x03(\x0b\x32K.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.VolumeParams\x12`\n\x0cmodel_params\x18\x06 \x03(\x0b\x32J.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.ModelParams\x12\x65\n\tbl_params\x18\x07 \x03(\x0b\x32R.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.BoundaryLayerParams\x12l\n\rrefine_params\x18\x08 \x03(\x0b\x32U.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.RefinementRegionParams\x12\x13\n\x0bgeometry_id\x18\t \x01(\t\x12s\n\x16mesh_complexity_params\x18\n \x01(\x0b\x32S.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshComplexityParams\x12\x64\n\x0eoverset_params\x18\x0b \x01(\x0b\x32L.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.OversetParams\x12`\n\x0cmeshing_mode\x18\x0c \x01(\x0b\x32J.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshingMode\x1a\x43\n\x0cVolumeParams\x12\x10\n\x08min_size\x18\x01 \x01(\x01\x12\x10\n\x08max_size\x18\x02 \x01(\x01\x12\x0f\n\x07volumes\x18\x03 \x03(\x03\x1a\x44\n\x0bModelParams\x12\x11\n\tcurvature\x18\x01 \x01(\x01\x12\x10\n\x08max_size\x18\x02 \x01(\x01\x12\x10\n\x08surfaces\x18\x03 \x03(\t\x1a\x64\n\x13\x42oundaryLayerParams\x12\x10\n\x08n_layers\x18\x01 \x01(\r\x12\x14\n\x0cinitial_size\x18\x02 \x01(\x01\x12\x13\n\x0bgrowth_rate\x18\x03 \x01(\x01\x12\x10\n\x08surfaces\x18\x04 \x03(\t\x1a\x8b\x03\n\x16RefinementRegionParams\x12\x0f\n\x07h_limit\x18\x01 \x01(\x01\x12,\n\x06sphere\x18\x02 \x01(\x0b\x32\x1a.luminary.proto.cad.SphereH\x00\x12\x37\n\x0csphere_shell\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.cad.SphereShellH\x00\x12(\n\x04\x63ube\x18\x04 \x01(\x0b\x32\x18.luminary.proto.cad.CubeH\x00\x12\x39\n\roriented_cube\x18\x05 \x01(\x0b\x32 .luminary.proto.cad.OrientedCubeH\x00\x12\x30\n\x08\x63ylinder\x18\x06 \x01(\x0b\x32\x1c.luminary.proto.cad.CylinderH\x00\x12?\n\x10\x61nnular_cylinder\x18\x07 \x01(\x0b\x32#.luminary.proto.cad.AnnularCylinderH\x00\x12\n\n\x02id\x18\x08 \x01(\t\x12\x0c\n\x04name\x18\t \x01(\tB\x07\n\x05shape\x1a\xe7\x01\n\x14MeshComplexityParams\x12\x14\n\x0ctarget_cells\x18\x01 \x01(\x04\x12\x17\n\x0flimit_max_cells\x18\x02 \x01(\x04\x12p\n\x04type\x18\x03 \x01(\x0e\x32\x62.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshComplexityParams.ComplexityType\".\n\x0e\x43omplexityType\x12\x07\n\x03MAX\x10\x00\x12\n\n\x06TARGET\x10\x01\x12\x07\n\x03MIN\x10\x02\x1a!\n\rOversetParams\x12\x10\n\x08surfaces\x18\x01 \x03(\t\x1a\xf0\x01\n\x0bMeshingMode\x12\x65\n\x07\x64\x65\x66\x61ult\x18\x01 \x01(\x0b\x32R.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshingMode.DefaultH\x00\x12_\n\x04\x62\x61se\x18\x02 \x01(\x0b\x32O.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshingMode.BaseH\x00\x1a\t\n\x07\x44\x65\x66\x61ult\x1a\x06\n\x04\x42\x61seB\x06\n\x04mode2\x99\t\n\x0bMeshService\x12\x97\x01\n\x07GetMesh\x12\x38.luminary.proto.api.v0.luminarycloud.mesh.GetMeshRequest\x1a\x39.luminary.proto.api.v0.luminarycloud.mesh.GetMeshResponse\"\x17\x82\xd3\xe4\x93\x02\x11\x12\x0f/v0/meshes/{id}\x12\xba\x01\n\x0fGetMeshMetadata\x12@.luminary.proto.api.v0.luminarycloud.mesh.GetMeshMetadataRequest\x1a\x41.luminary.proto.api.v0.luminarycloud.mesh.GetMeshMetadataResponse\"\"\x82\xd3\xe4\x93\x02\x1c\x12\x1a/v0/meshes:getmeshmetadata\x12\xb1\x01\n\nListMeshes\x12;.luminary.proto.api.v0.luminarycloud.mesh.ListMeshesRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.ListMeshesResponse\"(\x82\xd3\xe4\x93\x02\"\x12 /v0/projects/{project_id}/meshes\x12\xa3\x01\n\nUpdateMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.UpdateMeshRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.UpdateMeshResponse\"\x1a\x82\xd3\xe4\x93\x02\x14\x32\x0f/v0/meshes/{id}:\x01*\x12\xbb\x01\n\nUploadMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.UploadMeshRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.UploadMeshResponse\"2\x82\xd3\xe4\x93\x02,\"\'/v0/projects/{project_id}/meshes:upload:\x01*\x12z\n\nDeleteMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.DeleteMeshRequest\x1a\x16.google.protobuf.Empty\"\x17\x82\xd3\xe4\x93\x02\x11*\x0f/v0/meshes/{id}\x12\x9e\x01\n\nCreateMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.CreateMeshRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.CreateMeshResponse\"\x15\x82\xd3\xe4\x93\x02\x0f\"\n/v0/meshes:\x01*B8Z6luminarycloud.com/core/proto/api/v0/luminarycloud/meshb\x06proto3')
24
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n*proto/api/v0/luminarycloud/mesh/mesh.proto\x12(luminary.proto.api.v0.luminarycloud.mesh\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x15proto/base/base.proto\x1a\x15proto/cad/shape.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\x1a\x19proto/upload/upload.proto\"\xe2\x02\n\x04Mesh\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12I\n\x06status\x18\x04 \x01(\x0e\x32\x39.luminary.proto.api.v0.luminarycloud.mesh.Mesh.MeshStatus\x12 \n\x13geometry_version_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x12\n\nproject_id\x18\x06 \x01(\t\"v\n\nMeshStatus\x12\x1b\n\x17MESH_STATUS_UNSPECIFIED\x10\x00\x12\x18\n\x14MESH_STATUS_CREATING\x10\x01\x12\x19\n\x15MESH_STATUS_COMPLETED\x10\x02\x12\x16\n\x12MESH_STATUS_FAILED\x10\x03\x42\x16\n\x14_geometry_version_id\"\x1c\n\x0eGetMeshRequest\x12\n\n\x02id\x18\x01 \x01(\t\"O\n\x0fGetMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"$\n\x16GetMeshMetadataRequest\x12\n\n\x02id\x18\x01 \x01(\t\"h\n\x17GetMeshMetadataResponse\x12M\n\rmesh_metadata\x18\x01 \x01(\x0b\x32\x36.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata\"\xd2\x04\n\x0cMeshMetadata\x12J\n\x05zones\x18\x01 \x03(\x0b\x32;.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.Zone\x1a\xcd\x01\n\tMeshStats\x12\x10\n\x08n_points\x18\x01 \x01(\x03\x12\x0f\n\x07n_faces\x18\x02 \x01(\x03\x12\r\n\x05n_cvs\x18\x03 \x01(\x03\x12\x46\n\tmin_coord\x18\x05 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12\x46\n\tmax_coord\x18\x06 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x1ai\n\x08\x42oundary\x12\x0c\n\x04name\x18\x01 \x01(\t\x12O\n\x05stats\x18\x02 \x01(\x0b\x32@.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.MeshStats\x1a\xba\x01\n\x04Zone\x12S\n\nboundaries\x18\x01 \x03(\x0b\x32?.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.Boundary\x12O\n\x05stats\x18\x02 \x01(\x0b\x32@.luminary.proto.api.v0.luminarycloud.mesh.MeshMetadata.MeshStats\x12\x0c\n\x04name\x18\x03 \x01(\t\"\'\n\x11ListMeshesRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"T\n\x12ListMeshesResponse\x12>\n\x06meshes\x18\x01 \x03(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"-\n\x11UpdateMeshRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\"R\n\x12UpdateMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"\x83\x02\n\x11\x43reateMeshRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12`\n\x16mesh_adaptation_params\x18\x03 \x01(\x0b\x32>.luminary.proto.api.v0.luminarycloud.mesh.MeshAdaptationParamsH\x00\x12`\n\x16mesh_generation_params\x18\x04 \x01(\x0b\x32>.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParamsH\x00\x42\x08\n\x06params\"R\n\x12\x43reateMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\"\xff\x01\n\x11UploadMeshRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0f\n\x07scaling\x18\x03 \x01(\x01\x12\x14\n\x0cupload_token\x18\x04 \x01(\t\x12I\n\nfile_chunk\x18\x05 \x01(\x0b\x32\x35.luminary.proto.api.v0.luminarycloud.common.FileChunk\x12\x32\n\tmesh_type\x18\x06 \x01(\x0e\x32\x1f.luminary.proto.upload.MeshType\x12\"\n\x1a\x64o_not_read_zones_openfoam\x18\x07 \x01(\x08\"h\n\x12UploadMeshResponse\x12<\n\x04mesh\x18\x01 \x01(\x0b\x32..luminary.proto.api.v0.luminarycloud.mesh.Mesh\x12\x14\n\x0cupload_token\x18\x02 \x01(\t\"\x1f\n\x11\x44\x65leteMeshRequest\x12\n\n\x02id\x18\x01 \x01(\t\"t\n\x14MeshAdaptationParams\x12\x1c\n\x14source_simulation_id\x18\x01 \x01(\t\x12\x17\n\x0ftarget_cv_count\x18\x02 \x01(\x04\x12\x0f\n\x07h_ratio\x18\x03 \x01(\x01\x12\x14\n\x0c\x61spect_ratio\x18\x04 \x01(\x01\"\x9e\x10\n\x14MeshGenerationParams\x12\x33\n\x0b\x62ody_x_axis\x18\x01 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12\x33\n\x0b\x62ody_y_axis\x18\x02 \x01(\x0b\x32\x1e.luminary.proto.base.AdVector3\x12\x16\n\x0e\x61\x64\x64_refinement\x18\x03 \x01(\x08\x12\x18\n\x10proximity_layers\x18\x04 \x01(\r\x12\x62\n\rvolume_params\x18\x05 \x03(\x0b\x32K.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.VolumeParams\x12`\n\x0cmodel_params\x18\x06 \x03(\x0b\x32J.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.ModelParams\x12\x65\n\tbl_params\x18\x07 \x03(\x0b\x32R.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.BoundaryLayerParams\x12l\n\rrefine_params\x18\x08 \x03(\x0b\x32U.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.RefinementRegionParams\x12\x13\n\x0bgeometry_id\x18\t \x01(\t\x12s\n\x16mesh_complexity_params\x18\n \x01(\x0b\x32S.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshComplexityParams\x12\x64\n\x0eoverset_params\x18\x0b \x01(\x0b\x32L.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.OversetParams\x12`\n\x0cmeshing_mode\x18\x0c \x01(\x0b\x32J.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshingMode\x1a\x43\n\x0cVolumeParams\x12\x10\n\x08min_size\x18\x01 \x01(\x01\x12\x10\n\x08max_size\x18\x02 \x01(\x01\x12\x0f\n\x07volumes\x18\x03 \x03(\x03\x1a\x44\n\x0bModelParams\x12\x11\n\tcurvature\x18\x01 \x01(\x01\x12\x10\n\x08max_size\x18\x02 \x01(\x01\x12\x10\n\x08surfaces\x18\x03 \x03(\t\x1a\x64\n\x13\x42oundaryLayerParams\x12\x10\n\x08n_layers\x18\x01 \x01(\r\x12\x14\n\x0cinitial_size\x18\x02 \x01(\x01\x12\x13\n\x0bgrowth_rate\x18\x03 \x01(\x01\x12\x10\n\x08surfaces\x18\x04 \x03(\t\x1a\x8b\x03\n\x16RefinementRegionParams\x12\x0f\n\x07h_limit\x18\x01 \x01(\x01\x12,\n\x06sphere\x18\x02 \x01(\x0b\x32\x1a.luminary.proto.cad.SphereH\x00\x12\x37\n\x0csphere_shell\x18\x03 \x01(\x0b\x32\x1f.luminary.proto.cad.SphereShellH\x00\x12(\n\x04\x63ube\x18\x04 \x01(\x0b\x32\x18.luminary.proto.cad.CubeH\x00\x12\x39\n\roriented_cube\x18\x05 \x01(\x0b\x32 .luminary.proto.cad.OrientedCubeH\x00\x12\x30\n\x08\x63ylinder\x18\x06 \x01(\x0b\x32\x1c.luminary.proto.cad.CylinderH\x00\x12?\n\x10\x61nnular_cylinder\x18\x07 \x01(\x0b\x32#.luminary.proto.cad.AnnularCylinderH\x00\x12\n\n\x02id\x18\x08 \x01(\t\x12\x0c\n\x04name\x18\t \x01(\tB\x07\n\x05shape\x1a\xe7\x01\n\x14MeshComplexityParams\x12\x14\n\x0ctarget_cells\x18\x01 \x01(\x04\x12\x17\n\x0flimit_max_cells\x18\x02 \x01(\x04\x12p\n\x04type\x18\x03 \x01(\x0e\x32\x62.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshComplexityParams.ComplexityType\".\n\x0e\x43omplexityType\x12\x07\n\x03MAX\x10\x00\x12\n\n\x06TARGET\x10\x01\x12\x07\n\x03MIN\x10\x02\x1a!\n\rOversetParams\x12\x10\n\x08surfaces\x18\x01 \x03(\t\x1a\xf0\x01\n\x0bMeshingMode\x12\x65\n\x07\x64\x65\x66\x61ult\x18\x01 \x01(\x0b\x32R.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshingMode.DefaultH\x00\x12_\n\x04\x62\x61se\x18\x02 \x01(\x0b\x32O.luminary.proto.api.v0.luminarycloud.mesh.MeshGenerationParams.MeshingMode.BaseH\x00\x1a\t\n\x07\x44\x65\x66\x61ult\x1a\x06\n\x04\x42\x61seB\x06\n\x04mode2\x99\t\n\x0bMeshService\x12\x97\x01\n\x07GetMesh\x12\x38.luminary.proto.api.v0.luminarycloud.mesh.GetMeshRequest\x1a\x39.luminary.proto.api.v0.luminarycloud.mesh.GetMeshResponse\"\x17\x82\xd3\xe4\x93\x02\x11\x12\x0f/v0/meshes/{id}\x12\xba\x01\n\x0fGetMeshMetadata\x12@.luminary.proto.api.v0.luminarycloud.mesh.GetMeshMetadataRequest\x1a\x41.luminary.proto.api.v0.luminarycloud.mesh.GetMeshMetadataResponse\"\"\x82\xd3\xe4\x93\x02\x1c\x12\x1a/v0/meshes:getmeshmetadata\x12\xb1\x01\n\nListMeshes\x12;.luminary.proto.api.v0.luminarycloud.mesh.ListMeshesRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.ListMeshesResponse\"(\x82\xd3\xe4\x93\x02\"\x12 /v0/projects/{project_id}/meshes\x12\xa3\x01\n\nUpdateMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.UpdateMeshRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.UpdateMeshResponse\"\x1a\x82\xd3\xe4\x93\x02\x14\x32\x0f/v0/meshes/{id}:\x01*\x12\xbb\x01\n\nUploadMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.UploadMeshRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.UploadMeshResponse\"2\x82\xd3\xe4\x93\x02,\"\'/v0/projects/{project_id}/meshes:upload:\x01*\x12z\n\nDeleteMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.DeleteMeshRequest\x1a\x16.google.protobuf.Empty\"\x17\x82\xd3\xe4\x93\x02\x11*\x0f/v0/meshes/{id}\x12\x9e\x01\n\nCreateMesh\x12;.luminary.proto.api.v0.luminarycloud.mesh.CreateMeshRequest\x1a<.luminary.proto.api.v0.luminarycloud.mesh.CreateMeshResponse\"\x15\x82\xd3\xe4\x93\x02\x0f\"\n/v0/meshes:\x01*B8Z6luminarycloud.com/core/proto/api/v0/luminarycloud/meshb\x06proto3')
25
25
 
26
26
 
27
27
 
@@ -291,67 +291,67 @@ if _descriptor._USE_C_DESCRIPTORS == False:
291
291
  _MESHSERVICE.methods_by_name['CreateMesh']._options = None
292
292
  _MESHSERVICE.methods_by_name['CreateMesh']._serialized_options = b'\202\323\344\223\002\017\"\n/v0/meshes:\001*'
293
293
  _MESH._serialized_start=302
294
- _MESH._serialized_end=636
295
- _MESH_MESHSTATUS._serialized_start=494
296
- _MESH_MESHSTATUS._serialized_end=612
297
- _GETMESHREQUEST._serialized_start=638
298
- _GETMESHREQUEST._serialized_end=666
299
- _GETMESHRESPONSE._serialized_start=668
300
- _GETMESHRESPONSE._serialized_end=747
301
- _GETMESHMETADATAREQUEST._serialized_start=749
302
- _GETMESHMETADATAREQUEST._serialized_end=785
303
- _GETMESHMETADATARESPONSE._serialized_start=787
304
- _GETMESHMETADATARESPONSE._serialized_end=891
305
- _MESHMETADATA._serialized_start=894
306
- _MESHMETADATA._serialized_end=1488
307
- _MESHMETADATA_MESHSTATS._serialized_start=987
308
- _MESHMETADATA_MESHSTATS._serialized_end=1192
309
- _MESHMETADATA_BOUNDARY._serialized_start=1194
310
- _MESHMETADATA_BOUNDARY._serialized_end=1299
311
- _MESHMETADATA_ZONE._serialized_start=1302
312
- _MESHMETADATA_ZONE._serialized_end=1488
313
- _LISTMESHESREQUEST._serialized_start=1490
314
- _LISTMESHESREQUEST._serialized_end=1529
315
- _LISTMESHESRESPONSE._serialized_start=1531
316
- _LISTMESHESRESPONSE._serialized_end=1615
317
- _UPDATEMESHREQUEST._serialized_start=1617
318
- _UPDATEMESHREQUEST._serialized_end=1662
319
- _UPDATEMESHRESPONSE._serialized_start=1664
320
- _UPDATEMESHRESPONSE._serialized_end=1746
321
- _CREATEMESHREQUEST._serialized_start=1749
322
- _CREATEMESHREQUEST._serialized_end=2008
323
- _CREATEMESHRESPONSE._serialized_start=2010
324
- _CREATEMESHRESPONSE._serialized_end=2092
325
- _UPLOADMESHREQUEST._serialized_start=2095
326
- _UPLOADMESHREQUEST._serialized_end=2350
327
- _UPLOADMESHRESPONSE._serialized_start=2352
328
- _UPLOADMESHRESPONSE._serialized_end=2456
329
- _DELETEMESHREQUEST._serialized_start=2458
330
- _DELETEMESHREQUEST._serialized_end=2489
331
- _MESHADAPTATIONPARAMS._serialized_start=2491
332
- _MESHADAPTATIONPARAMS._serialized_end=2607
333
- _MESHGENERATIONPARAMS._serialized_start=2610
334
- _MESHGENERATIONPARAMS._serialized_end=4688
335
- _MESHGENERATIONPARAMS_VOLUMEPARAMS._serialized_start=3539
336
- _MESHGENERATIONPARAMS_VOLUMEPARAMS._serialized_end=3606
337
- _MESHGENERATIONPARAMS_MODELPARAMS._serialized_start=3608
338
- _MESHGENERATIONPARAMS_MODELPARAMS._serialized_end=3676
339
- _MESHGENERATIONPARAMS_BOUNDARYLAYERPARAMS._serialized_start=3678
340
- _MESHGENERATIONPARAMS_BOUNDARYLAYERPARAMS._serialized_end=3778
341
- _MESHGENERATIONPARAMS_REFINEMENTREGIONPARAMS._serialized_start=3781
342
- _MESHGENERATIONPARAMS_REFINEMENTREGIONPARAMS._serialized_end=4176
343
- _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS._serialized_start=4179
344
- _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS._serialized_end=4410
345
- _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS_COMPLEXITYTYPE._serialized_start=4364
346
- _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS_COMPLEXITYTYPE._serialized_end=4410
347
- _MESHGENERATIONPARAMS_OVERSETPARAMS._serialized_start=4412
348
- _MESHGENERATIONPARAMS_OVERSETPARAMS._serialized_end=4445
349
- _MESHGENERATIONPARAMS_MESHINGMODE._serialized_start=4448
350
- _MESHGENERATIONPARAMS_MESHINGMODE._serialized_end=4688
351
- _MESHGENERATIONPARAMS_MESHINGMODE_DEFAULT._serialized_start=4663
352
- _MESHGENERATIONPARAMS_MESHINGMODE_DEFAULT._serialized_end=4672
353
- _MESHGENERATIONPARAMS_MESHINGMODE_BASE._serialized_start=4674
354
- _MESHGENERATIONPARAMS_MESHINGMODE_BASE._serialized_end=4680
355
- _MESHSERVICE._serialized_start=4691
356
- _MESHSERVICE._serialized_end=5868
294
+ _MESH._serialized_end=656
295
+ _MESH_MESHSTATUS._serialized_start=514
296
+ _MESH_MESHSTATUS._serialized_end=632
297
+ _GETMESHREQUEST._serialized_start=658
298
+ _GETMESHREQUEST._serialized_end=686
299
+ _GETMESHRESPONSE._serialized_start=688
300
+ _GETMESHRESPONSE._serialized_end=767
301
+ _GETMESHMETADATAREQUEST._serialized_start=769
302
+ _GETMESHMETADATAREQUEST._serialized_end=805
303
+ _GETMESHMETADATARESPONSE._serialized_start=807
304
+ _GETMESHMETADATARESPONSE._serialized_end=911
305
+ _MESHMETADATA._serialized_start=914
306
+ _MESHMETADATA._serialized_end=1508
307
+ _MESHMETADATA_MESHSTATS._serialized_start=1007
308
+ _MESHMETADATA_MESHSTATS._serialized_end=1212
309
+ _MESHMETADATA_BOUNDARY._serialized_start=1214
310
+ _MESHMETADATA_BOUNDARY._serialized_end=1319
311
+ _MESHMETADATA_ZONE._serialized_start=1322
312
+ _MESHMETADATA_ZONE._serialized_end=1508
313
+ _LISTMESHESREQUEST._serialized_start=1510
314
+ _LISTMESHESREQUEST._serialized_end=1549
315
+ _LISTMESHESRESPONSE._serialized_start=1551
316
+ _LISTMESHESRESPONSE._serialized_end=1635
317
+ _UPDATEMESHREQUEST._serialized_start=1637
318
+ _UPDATEMESHREQUEST._serialized_end=1682
319
+ _UPDATEMESHRESPONSE._serialized_start=1684
320
+ _UPDATEMESHRESPONSE._serialized_end=1766
321
+ _CREATEMESHREQUEST._serialized_start=1769
322
+ _CREATEMESHREQUEST._serialized_end=2028
323
+ _CREATEMESHRESPONSE._serialized_start=2030
324
+ _CREATEMESHRESPONSE._serialized_end=2112
325
+ _UPLOADMESHREQUEST._serialized_start=2115
326
+ _UPLOADMESHREQUEST._serialized_end=2370
327
+ _UPLOADMESHRESPONSE._serialized_start=2372
328
+ _UPLOADMESHRESPONSE._serialized_end=2476
329
+ _DELETEMESHREQUEST._serialized_start=2478
330
+ _DELETEMESHREQUEST._serialized_end=2509
331
+ _MESHADAPTATIONPARAMS._serialized_start=2511
332
+ _MESHADAPTATIONPARAMS._serialized_end=2627
333
+ _MESHGENERATIONPARAMS._serialized_start=2630
334
+ _MESHGENERATIONPARAMS._serialized_end=4708
335
+ _MESHGENERATIONPARAMS_VOLUMEPARAMS._serialized_start=3559
336
+ _MESHGENERATIONPARAMS_VOLUMEPARAMS._serialized_end=3626
337
+ _MESHGENERATIONPARAMS_MODELPARAMS._serialized_start=3628
338
+ _MESHGENERATIONPARAMS_MODELPARAMS._serialized_end=3696
339
+ _MESHGENERATIONPARAMS_BOUNDARYLAYERPARAMS._serialized_start=3698
340
+ _MESHGENERATIONPARAMS_BOUNDARYLAYERPARAMS._serialized_end=3798
341
+ _MESHGENERATIONPARAMS_REFINEMENTREGIONPARAMS._serialized_start=3801
342
+ _MESHGENERATIONPARAMS_REFINEMENTREGIONPARAMS._serialized_end=4196
343
+ _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS._serialized_start=4199
344
+ _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS._serialized_end=4430
345
+ _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS_COMPLEXITYTYPE._serialized_start=4384
346
+ _MESHGENERATIONPARAMS_MESHCOMPLEXITYPARAMS_COMPLEXITYTYPE._serialized_end=4430
347
+ _MESHGENERATIONPARAMS_OVERSETPARAMS._serialized_start=4432
348
+ _MESHGENERATIONPARAMS_OVERSETPARAMS._serialized_end=4465
349
+ _MESHGENERATIONPARAMS_MESHINGMODE._serialized_start=4468
350
+ _MESHGENERATIONPARAMS_MESHINGMODE._serialized_end=4708
351
+ _MESHGENERATIONPARAMS_MESHINGMODE_DEFAULT._serialized_start=4683
352
+ _MESHGENERATIONPARAMS_MESHINGMODE_DEFAULT._serialized_end=4692
353
+ _MESHGENERATIONPARAMS_MESHINGMODE_BASE._serialized_start=4694
354
+ _MESHGENERATIONPARAMS_MESHINGMODE_BASE._serialized_end=4700
355
+ _MESHSERVICE._serialized_start=4711
356
+ _MESHSERVICE._serialized_end=5888
357
357
  # @@protoc_insertion_point(module_scope)