luminarycloud 0.22.2__py3-none-any.whl → 0.23.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- luminarycloud/__init__.py +9 -3
- luminarycloud/_client/client.py +1 -1
- luminarycloud/_client/retry_interceptor.py +13 -2
- luminarycloud/_helpers/_code_representation.py +1 -0
- luminarycloud/_helpers/_create_simulation.py +5 -1
- luminarycloud/_helpers/proto_decorator.py +46 -38
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.py +214 -137
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +152 -0
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.py +103 -0
- luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2_grpc.pyi +40 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2.py +25 -3
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2.pyi +30 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2_grpc.py +34 -0
- luminarycloud/_proto/api/v0/luminarycloud/named_variable_set/named_variable_set_pb2_grpc.pyi +12 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +155 -59
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +252 -22
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py +102 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi +36 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +94 -71
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +46 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.py +35 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.pyi +16 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.py +25 -3
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.pyi +32 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2_grpc.py +34 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2_grpc.pyi +12 -0
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.py +68 -21
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2.pyi +119 -0
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.py +33 -0
- luminarycloud/_proto/api/v0/luminarycloud/vis/vis_pb2_grpc.pyi +10 -0
- luminarycloud/_proto/client/simulation_pb2.py +405 -346
- luminarycloud/_proto/client/simulation_pb2.pyi +175 -21
- luminarycloud/_proto/clusterconfig/clusterconfig_pb2.py +273 -0
- luminarycloud/_proto/clusterconfig/clusterconfig_pb2.pyi +808 -0
- luminarycloud/_proto/geometry/geometry_pb2.pyi +1 -1
- luminarycloud/_proto/lcstatus/details/geometry/geometry_pb2.py +256 -0
- luminarycloud/_proto/lcstatus/details/geometry/geometry_pb2.pyi +472 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py +2 -2
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py +102 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi +36 -0
- luminarycloud/_proto/quantity/quantity_pb2.pyi +1 -1
- luminarycloud/enum/__init__.py +1 -0
- luminarycloud/enum/gpu_type.py +42 -7
- luminarycloud/enum/vis_enums.py +18 -0
- luminarycloud/geometry.py +81 -0
- luminarycloud/geometry_contacts.py +222 -0
- luminarycloud/meshing/mesh_generation_params.py +4 -4
- luminarycloud/meshing/sizing_strategy/__init__.py +0 -1
- luminarycloud/meshing/sizing_strategy/sizing_strategies.py +0 -20
- luminarycloud/params/geometry/shapes.py +137 -31
- luminarycloud/params/outputs/__init__.py +0 -2
- luminarycloud/params/outputs/output.py +17 -5
- luminarycloud/params/simulation/__init__.py +2 -0
- luminarycloud/params/simulation/adaptive_mesh_refinement/active_region_.py +1 -1
- luminarycloud/params/simulation/adaptive_mesh_refinement/boundary_layer_profile_.py +1 -1
- luminarycloud/params/simulation/adaptive_mesh_refinement_.py +1 -1
- luminarycloud/params/simulation/adjoint_.py +8 -5
- luminarycloud/params/simulation/basic/gravity/gravity_off_.py +1 -1
- luminarycloud/params/simulation/basic/gravity/gravity_on_.py +1 -1
- luminarycloud/params/simulation/basic/gravity_.py +1 -1
- luminarycloud/params/simulation/body_frame_.py +1 -1
- luminarycloud/params/simulation/entity_relationships/volume_material_relationship_.py +1 -1
- luminarycloud/params/simulation/entity_relationships/volume_physics_relationship_.py +1 -1
- luminarycloud/params/simulation/entity_relationships_.py +1 -1
- luminarycloud/params/simulation/general_.py +1 -1
- luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_off_.py +1 -1
- luminarycloud/params/simulation/material/fluid/boussinesq_approximation/boussinesq_on_.py +1 -1
- luminarycloud/params/simulation/material/fluid/boussinesq_approximation_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/__init__.py +2 -0
- luminarycloud/params/simulation/material/fluid/material_model/ideal_gas_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/incompressible_fluid_with_energy_.py +1 -1
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend/__init__.py +2 -0
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend/real_gas_coolprop_.py +43 -0
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend/real_gas_polynomial_.py +53 -0
- luminarycloud/params/simulation/material/fluid/material_model/real_gas_backend_.py +29 -0
- luminarycloud/params/simulation/material/fluid/material_model_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_conductivity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/prescribed_prandtl_number_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model/temperature_dependent_conductivity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/thermal_conductivity_model_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model/prescribed_viscosity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model/sutherland_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model/temperature_dependent_viscosity_.py +1 -1
- luminarycloud/params/simulation/material/fluid/viscosity_model_.py +1 -1
- luminarycloud/params/simulation/material/material_fluid_.py +78 -2
- luminarycloud/params/simulation/material/material_solid_.py +1 -1
- luminarycloud/params/simulation/material_entity_.py +1 -1
- luminarycloud/params/simulation/monitor_plane_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms/no_transform_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms/rotational_transform_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms/translational_transform_.py +1 -1
- luminarycloud/params/simulation/motion_data/frame_transforms_.py +1 -1
- luminarycloud/params/simulation/motion_data/motion_type/constant_angular_motion_.py +1 -1
- luminarycloud/params/simulation/motion_data/motion_type/constant_translation_motion_.py +1 -1
- luminarycloud/params/simulation/motion_data/motion_type_.py +1 -1
- luminarycloud/params/simulation/motion_data_.py +1 -1
- luminarycloud/params/simulation/multi_physics_coupling_options_.py +1 -1
- luminarycloud/params/simulation/nonlinear_control/__init__.py +1 -0
- luminarycloud/params/simulation/nonlinear_control/nonlinear_control_system_.py +48 -0
- luminarycloud/params/simulation/nonlinear_control_.py +61 -0
- luminarycloud/params/simulation/output_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_normal_vector_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection/actuator_disk_specify_rotation_angles_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk/actuator_disk_orientation_selection_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_disk_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/actuator_line_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/probe_points_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type/source_points_.py +1 -1
- luminarycloud/params/simulation/particle_group/particle_group_type_.py +1 -1
- luminarycloud/params/simulation/particle_group_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/adjoint_controls_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/basic_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/farfield_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/fan_curve_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mach_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/mass_flow_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/total_pressure_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_components_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet/velocity_magnitude_inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/inlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/fan_curve_outlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_pressure_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_corrected_mass_flow_rate_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy/outlet_target_mass_flow_rate_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet/outlet_strategy_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/outlet_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/symmetry_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/turbulence_boundary_conditions_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_heat_flux_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/energy/prescribed_temperature_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/no_slip_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/slip_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/momentum/wall_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_energy_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall/wall_momentum_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions/wall_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/boundary_conditions_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/initialization/__init__.py +1 -0
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_existing_solution_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_farfield_values_.py +14 -1
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_initialization_per_zone_.py +48 -0
- luminarycloud/params/simulation/physics/fluid/initialization/fluid_prescribed_values_.py +14 -1
- luminarycloud/params/simulation/physics/fluid/initialization/turbulence_initialization_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/initialization_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/blade_element_airfoil_data_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_blade_element_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_radial_distribution_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/actuator_disk_uniform_thrust_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model/fan_curve_internal_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_disk_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model/actuator_line_blade_element_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/actuator_line_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/blade_element_params_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_acceleration_source_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model/general_mass_source_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model/particle_source_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior/physical_behavior_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/physical_behavior_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/porous_behavior_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_explicit_relaxation_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_auto_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_off_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_on_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/cfl_based_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method/fixed_pseudo_time_step_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls/pseudo_time_step_method_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/solution_controls_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ec2_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/fds_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/ld2_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme/rhie_chow_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/first_order_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order/second_order_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization/convective_scheme_order_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/spatial_discretization_fluid_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/ddes_vtm_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation/iddes_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/des_formulation_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/custom_komega_sst_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/constants/default_komega_sst_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst/komega_sst_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/komega_sst_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/custom_spalart_allmaras_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/constants/default_spalart_allmaras_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras/spalart_allmaras_constants_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/spalart_allmaras_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/amd_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/sigma_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/smagorinsky_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/vreman_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model/wale_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence/sub_grid_scale_model_.py +1 -1
- luminarycloud/params/simulation/physics/fluid/turbulence_.py +1 -1
- luminarycloud/params/simulation/physics/fluid_.py +1 -1
- luminarycloud/params/simulation/physics/heat/adjoint_controls_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_convection_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_heat_flux_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_integrated_heat_flux_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_symmetry_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions/heat_bc_temperature_.py +1 -1
- luminarycloud/params/simulation/physics/heat/boundary_conditions_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type/heat_source_type_power_per_unit_of_volume_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source/heat_source_type_.py +1 -1
- luminarycloud/params/simulation/physics/heat/heat_source_.py +1 -1
- luminarycloud/params/simulation/physics/heat/initialization/__init__.py +1 -0
- luminarycloud/params/simulation/physics/heat/initialization/heat_existing_solution_.py +1 -1
- luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values/__init__.py +1 -0
- luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values/heat_initialization_per_zone_.py +40 -0
- luminarycloud/params/simulation/physics/heat/initialization/heat_prescribed_values_.py +14 -1
- luminarycloud/params/simulation/physics/heat/initialization_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method/heat_implicit_relaxation_.py +1 -1
- luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method_.py +1 -1
- luminarycloud/params/simulation/physics/heat/solution_controls_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat/spatial_discretization_heat_.py +1 -1
- luminarycloud/params/simulation/physics/heat_.py +1 -1
- luminarycloud/params/simulation/physics/periodic_pair_.py +5 -1
- luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/gauss_seidel_.py +1 -1
- luminarycloud/params/simulation/physics/solution_controls/linear_solver_type/krylov_amg_.py +1 -1
- luminarycloud/params/simulation/physics/solution_controls/linear_solver_type_.py +1 -1
- luminarycloud/params/simulation/physics_.py +1 -1
- luminarycloud/params/simulation/simulation_param_.py +8 -1
- luminarycloud/params/simulation/sliding_interfaces_.py +1 -1
- luminarycloud/params/simulation/surface_name_.py +1 -1
- luminarycloud/params/simulation/time/compute_statistics/compute_statistics_off_.py +1 -1
- luminarycloud/params/simulation/time/compute_statistics/compute_statistics_on_.py +1 -1
- luminarycloud/params/simulation/time/compute_statistics_.py +1 -1
- luminarycloud/params/simulation/time/time_marching/time_explicit_.py +1 -1
- luminarycloud/params/simulation/time/time_marching/time_implicit_.py +1 -1
- luminarycloud/params/simulation/time/time_marching_.py +1 -1
- luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_off_.py +1 -1
- luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_on_.py +1 -1
- luminarycloud/params/simulation/time/time_step_ramp_.py +1 -1
- luminarycloud/params/simulation/time_.py +1 -1
- luminarycloud/params/simulation/volume_entity_.py +1 -1
- luminarycloud/physics_ai/__init__.py +17 -0
- luminarycloud/physics_ai/architectures.py +130 -18
- luminarycloud/physics_ai/datasets.py +301 -0
- luminarycloud/physics_ai/training_jobs.py +50 -4
- luminarycloud/pipelines/__init__.py +16 -4
- luminarycloud/pipelines/api.py +192 -17
- luminarycloud/pipelines/arguments.py +8 -3
- luminarycloud/pipelines/core.py +296 -45
- luminarycloud/pipelines/flowables.py +138 -0
- luminarycloud/pipelines/stages.py +34 -55
- luminarycloud/pipelines/user_code_validation.py +122 -0
- luminarycloud/project.py +0 -14
- luminarycloud/simulation.py +42 -11
- luminarycloud/simulation_param.py +0 -62
- luminarycloud/simulation_template.py +1 -11
- luminarycloud/types/adfloat.py +48 -4
- luminarycloud/types/matrix3.py +9 -9
- luminarycloud/types/vector3.py +52 -23
- luminarycloud/vis/__init__.py +3 -0
- luminarycloud/vis/visualization.py +88 -0
- luminarycloud/volume_selection.py +29 -17
- {luminarycloud-0.22.2.dist-info → luminarycloud-0.23.0.dist-info}/METADATA +1 -1
- {luminarycloud-0.22.2.dist-info → luminarycloud-0.23.0.dist-info}/RECORD +266 -249
- luminarycloud/params/outputs/residual_output.py +0 -24
- /luminarycloud/params/{simulation/_lib.py → _lib.py} +0 -0
- {luminarycloud-0.22.2.dist-info → luminarycloud-0.23.0.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
# Copyright 2025 Luminary Cloud, Inc. All Rights Reserved.
|
|
2
|
+
from dataclasses import dataclass, field
|
|
3
|
+
from datetime import datetime
|
|
4
|
+
from typing import TYPE_CHECKING, List, Optional, Union
|
|
5
|
+
|
|
6
|
+
from google.protobuf.json_format import ParseDict
|
|
7
|
+
from google.protobuf.struct_pb2 import Struct
|
|
8
|
+
|
|
9
|
+
from .._client import get_default_client
|
|
10
|
+
from .._proto.api.v0.luminarycloud.physics_ai import physics_ai_pb2 as physaipb
|
|
11
|
+
from .._wrapper import ProtoWrapper, ProtoWrapperBase
|
|
12
|
+
from ..enum import QuantityType
|
|
13
|
+
|
|
14
|
+
if TYPE_CHECKING:
|
|
15
|
+
from ..solution import Solution
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
@dataclass
|
|
19
|
+
class ParameterDefinition:
|
|
20
|
+
"""
|
|
21
|
+
Defines a parameter in a dataset's parameter schema.
|
|
22
|
+
|
|
23
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
24
|
+
|
|
25
|
+
Parameters
|
|
26
|
+
----------
|
|
27
|
+
name : str
|
|
28
|
+
Parameter name (e.g., "stream_velocity", "air_density").
|
|
29
|
+
type : str
|
|
30
|
+
Parameter type: "scalar" for single values, "vector" for multi-dimensional values.
|
|
31
|
+
dimension : int
|
|
32
|
+
Number of dimensions: 1 for scalar, N for N-dimensional vector.
|
|
33
|
+
default_reference : list[float], optional
|
|
34
|
+
Default reference value(s) for normalization. Length must match dimension if provided.
|
|
35
|
+
description : str, optional
|
|
36
|
+
Description of the parameter.
|
|
37
|
+
|
|
38
|
+
Examples
|
|
39
|
+
--------
|
|
40
|
+
>>> # Scalar parameter
|
|
41
|
+
>>> air_density = ParameterDefinition(name="air_density", type="scalar", dimension=1, default_reference=[1.225])
|
|
42
|
+
>>> # Vector parameter (3D velocity)
|
|
43
|
+
>>> velocity = ParameterDefinition(name="inlet_velocity", type="vector", dimension=3, default_reference=[30.0, 0.0, 0.0])
|
|
44
|
+
>>> # 1D velocity (stream velocity magnitude)
|
|
45
|
+
>>> stream_velocity = ParameterDefinition(name="stream_velocity", type="vector", dimension=1, default_reference=[148.28])
|
|
46
|
+
"""
|
|
47
|
+
|
|
48
|
+
name: str
|
|
49
|
+
type: str # "scalar" or "vector"
|
|
50
|
+
dimension: int = 1
|
|
51
|
+
default_reference: List[float] = field(default_factory=list)
|
|
52
|
+
description: str = ""
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
@dataclass(kw_only=True)
|
|
56
|
+
class ExportConfig:
|
|
57
|
+
"""
|
|
58
|
+
Configuration for exporting Physics AI dataset cases.
|
|
59
|
+
|
|
60
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
61
|
+
|
|
62
|
+
Parameters
|
|
63
|
+
----------
|
|
64
|
+
exclude_surfaces : List[str], optional
|
|
65
|
+
Raw mesh boundary names to exclude from export.
|
|
66
|
+
exclude_tags : List[str], optional
|
|
67
|
+
Geometry tag names to exclude. These are resolved to mesh boundary names
|
|
68
|
+
server-side based on the geometry tags.
|
|
69
|
+
fill_holes : float, optional
|
|
70
|
+
Size threshold for filling holes in the surface mesh. Default is 0 (no filling).
|
|
71
|
+
single_precision : bool, optional
|
|
72
|
+
If True, export floating point fields in single precision. Default is True.
|
|
73
|
+
process_volume : bool, optional
|
|
74
|
+
If True, include volume mesh data in the export. Default is False.
|
|
75
|
+
surface_fields_to_keep : List[QuantityType], optional
|
|
76
|
+
Surface fields to include in the export. If empty, all fields are kept.
|
|
77
|
+
volume_fields_to_keep : List[QuantityType], optional
|
|
78
|
+
Volume fields to include in the export. If empty, all fields are kept.
|
|
79
|
+
"""
|
|
80
|
+
|
|
81
|
+
exclude_surfaces: List[str] = field(default_factory=list)
|
|
82
|
+
exclude_tags: List[str] = field(default_factory=list)
|
|
83
|
+
fill_holes: float = 0.0
|
|
84
|
+
single_precision: bool = True
|
|
85
|
+
process_volume: bool = False
|
|
86
|
+
surface_fields_to_keep: List[QuantityType] = field(default_factory=list)
|
|
87
|
+
volume_fields_to_keep: List[QuantityType] = field(default_factory=list)
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
@dataclass
|
|
91
|
+
class DatasetCaseInput:
|
|
92
|
+
"""
|
|
93
|
+
Input for a case in a Physics AI dataset.
|
|
94
|
+
|
|
95
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
96
|
+
|
|
97
|
+
Parameters
|
|
98
|
+
----------
|
|
99
|
+
solution : Solution
|
|
100
|
+
The solution to include in the dataset.
|
|
101
|
+
params : dict, optional
|
|
102
|
+
Physics parameters for this case (e.g., {"alpha": 5.0, "stream_velocity": 50.0}).
|
|
103
|
+
These are used as conditioning inputs during training.
|
|
104
|
+
"""
|
|
105
|
+
|
|
106
|
+
solution: "Solution"
|
|
107
|
+
params: dict = field(default_factory=dict)
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
@ProtoWrapper(physaipb.PhysicsAiDatasetCase)
|
|
111
|
+
class PhysicsAiDatasetCase(ProtoWrapperBase):
|
|
112
|
+
"""
|
|
113
|
+
Represents a case in a Physics AI dataset.
|
|
114
|
+
|
|
115
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
116
|
+
"""
|
|
117
|
+
|
|
118
|
+
case_id: str
|
|
119
|
+
solution_id: str
|
|
120
|
+
simulation_id: str
|
|
121
|
+
_proto: physaipb.PhysicsAiDatasetCase
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
@ProtoWrapper(physaipb.PhysicsAiDataset)
|
|
125
|
+
class PhysicsAiDataset(ProtoWrapperBase):
|
|
126
|
+
"""
|
|
127
|
+
Represents a Physics AI dataset containing training cases.
|
|
128
|
+
|
|
129
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
130
|
+
"""
|
|
131
|
+
|
|
132
|
+
id: str
|
|
133
|
+
created_by: str
|
|
134
|
+
name: str
|
|
135
|
+
description: str
|
|
136
|
+
is_locked: bool
|
|
137
|
+
creation_time: datetime
|
|
138
|
+
update_time: datetime
|
|
139
|
+
_proto: physaipb.PhysicsAiDataset
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
def create_dataset(
|
|
143
|
+
name: str,
|
|
144
|
+
cases: List[Union["Solution", DatasetCaseInput]],
|
|
145
|
+
export_config: Optional[ExportConfig] = None,
|
|
146
|
+
description: str = "",
|
|
147
|
+
parameter_schema: Optional[List[ParameterDefinition]] = None,
|
|
148
|
+
) -> PhysicsAiDataset:
|
|
149
|
+
"""
|
|
150
|
+
Create a Physics AI dataset from simulation solutions.
|
|
151
|
+
|
|
152
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
153
|
+
|
|
154
|
+
Parameters
|
|
155
|
+
----------
|
|
156
|
+
name : str
|
|
157
|
+
Name of the dataset
|
|
158
|
+
cases : List[Union[Solution, DatasetCaseInput]]
|
|
159
|
+
List of solutions or DatasetCaseInput objects. For simple cases, pass
|
|
160
|
+
Solution objects directly. For cases with physics parameters (e.g., alpha,
|
|
161
|
+
stream_velocity), wrap in DatasetCaseInput.
|
|
162
|
+
export_config : ExportConfig, optional
|
|
163
|
+
Export configuration. If not provided, uses defaults (single_precision=True).
|
|
164
|
+
description : str, optional
|
|
165
|
+
Description of the dataset
|
|
166
|
+
parameter_schema : List[ParameterDefinition], optional
|
|
167
|
+
List of parameter definitions for this dataset. Each parameter defines
|
|
168
|
+
the type, dimension, and optional default reference value.
|
|
169
|
+
|
|
170
|
+
Returns
|
|
171
|
+
-------
|
|
172
|
+
PhysicsAiDataset
|
|
173
|
+
The created dataset
|
|
174
|
+
|
|
175
|
+
Examples
|
|
176
|
+
--------
|
|
177
|
+
Simple usage with solutions (uses default export config):
|
|
178
|
+
|
|
179
|
+
>>> dataset = create_dataset(
|
|
180
|
+
... name="my-dataset",
|
|
181
|
+
... cases=[solution1, solution2, solution3],
|
|
182
|
+
... parameter_schema=[
|
|
183
|
+
... ParameterDefinition(name="stream_velocity", type="vector", dimension=1),
|
|
184
|
+
... ],
|
|
185
|
+
... )
|
|
186
|
+
|
|
187
|
+
With custom export config:
|
|
188
|
+
|
|
189
|
+
>>> dataset = create_dataset(
|
|
190
|
+
... name="my-dataset",
|
|
191
|
+
... cases=[solution1, solution2, solution3],
|
|
192
|
+
... export_config=ExportConfig(
|
|
193
|
+
... exclude_tags=["Farfield", "Symmetry"],
|
|
194
|
+
... surface_fields_to_keep=[QuantityType.PRESSURE, QuantityType.WALL_SHEAR_STRESS],
|
|
195
|
+
... ),
|
|
196
|
+
... parameter_schema=[
|
|
197
|
+
... ParameterDefinition(name="stream_velocity", type="vector", dimension=1, default_reference=[148.28]),
|
|
198
|
+
... ParameterDefinition(name="air_density", type="scalar", dimension=1, default_reference=[0.38]),
|
|
199
|
+
... ],
|
|
200
|
+
... )
|
|
201
|
+
|
|
202
|
+
With physics parameters:
|
|
203
|
+
|
|
204
|
+
>>> dataset = create_dataset(
|
|
205
|
+
... name="parametric-dataset",
|
|
206
|
+
... cases=[
|
|
207
|
+
... DatasetCaseInput(solution1, params={"alpha": 5.0}),
|
|
208
|
+
... DatasetCaseInput(solution2, params={"alpha": 10.0}),
|
|
209
|
+
... ],
|
|
210
|
+
... export_config=ExportConfig(process_volume=True),
|
|
211
|
+
... parameter_schema=[
|
|
212
|
+
... ParameterDefinition(name="alpha", type="scalar", dimension=1),
|
|
213
|
+
... ],
|
|
214
|
+
... )
|
|
215
|
+
"""
|
|
216
|
+
# Use default export config if not provided
|
|
217
|
+
if export_config is None:
|
|
218
|
+
export_config = ExportConfig()
|
|
219
|
+
|
|
220
|
+
# Build case inputs
|
|
221
|
+
case_inputs = []
|
|
222
|
+
for case in cases:
|
|
223
|
+
if isinstance(case, DatasetCaseInput):
|
|
224
|
+
solution = case.solution
|
|
225
|
+
params = case.params
|
|
226
|
+
else:
|
|
227
|
+
# It's a Solution object
|
|
228
|
+
solution = case
|
|
229
|
+
params = {}
|
|
230
|
+
|
|
231
|
+
case_input = physaipb.CreatePhysicsAiDatasetCaseInput(
|
|
232
|
+
solution_id=solution.id,
|
|
233
|
+
simulation_id=solution.simulation_id,
|
|
234
|
+
)
|
|
235
|
+
if params:
|
|
236
|
+
case_input.params.CopyFrom(ParseDict(params, Struct()))
|
|
237
|
+
case_inputs.append(case_input)
|
|
238
|
+
|
|
239
|
+
# Build export config proto from dataclass
|
|
240
|
+
export_config_proto = physaipb.GetSolutionDataPhysicsAIRequest(
|
|
241
|
+
exclude_surfaces=export_config.exclude_surfaces,
|
|
242
|
+
exclude_tags=export_config.exclude_tags,
|
|
243
|
+
fill_holes=export_config.fill_holes,
|
|
244
|
+
single_precision=export_config.single_precision,
|
|
245
|
+
process_volume=export_config.process_volume,
|
|
246
|
+
)
|
|
247
|
+
if export_config.surface_fields_to_keep:
|
|
248
|
+
export_config_proto.surface_fields_to_keep.extend(export_config.surface_fields_to_keep)
|
|
249
|
+
if export_config.volume_fields_to_keep:
|
|
250
|
+
export_config_proto.volume_fields_to_keep.extend(export_config.volume_fields_to_keep)
|
|
251
|
+
|
|
252
|
+
# Build parameter schema from list of ParameterDefinition
|
|
253
|
+
param_schema_proto = physaipb.ParameterSchema()
|
|
254
|
+
if parameter_schema:
|
|
255
|
+
for param_def in parameter_schema:
|
|
256
|
+
param_schema_proto.parameters.append(
|
|
257
|
+
physaipb.ParameterDefinition(
|
|
258
|
+
name=param_def.name,
|
|
259
|
+
type=param_def.type,
|
|
260
|
+
dimension=param_def.dimension,
|
|
261
|
+
default_reference=param_def.default_reference,
|
|
262
|
+
description=param_def.description,
|
|
263
|
+
)
|
|
264
|
+
)
|
|
265
|
+
|
|
266
|
+
req = physaipb.CreateDatasetRequest(
|
|
267
|
+
name=name,
|
|
268
|
+
description=description,
|
|
269
|
+
cases=case_inputs,
|
|
270
|
+
parameter_schema=param_schema_proto,
|
|
271
|
+
export_config=export_config_proto,
|
|
272
|
+
)
|
|
273
|
+
|
|
274
|
+
response = get_default_client().CreateDataset(req)
|
|
275
|
+
return PhysicsAiDataset(response.dataset)
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
def list_datasets() -> List[PhysicsAiDataset]:
|
|
279
|
+
"""
|
|
280
|
+
List Physics AI datasets accessible to the current user.
|
|
281
|
+
|
|
282
|
+
Returns datasets created by the current user plus platform-curated datasets.
|
|
283
|
+
|
|
284
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
285
|
+
|
|
286
|
+
Returns
|
|
287
|
+
-------
|
|
288
|
+
List[PhysicsAiDataset]
|
|
289
|
+
A list of accessible Physics AI datasets, ordered by creation time (newest first).
|
|
290
|
+
|
|
291
|
+
Examples
|
|
292
|
+
--------
|
|
293
|
+
List all datasets:
|
|
294
|
+
|
|
295
|
+
>>> datasets = list_datasets()
|
|
296
|
+
>>> for ds in datasets:
|
|
297
|
+
... print(f"{ds.name}: {ds.id} (locked={ds.is_locked})")
|
|
298
|
+
"""
|
|
299
|
+
req = physaipb.ListDatasetsRequest()
|
|
300
|
+
response = get_default_client().ListDatasets(req)
|
|
301
|
+
return [PhysicsAiDataset(dataset) for dataset in response.datasets]
|
|
@@ -1,20 +1,33 @@
|
|
|
1
1
|
# Copyright 2025 Luminary Cloud, Inc. All Rights Reserved.
|
|
2
|
-
from typing import List
|
|
2
|
+
from typing import List
|
|
3
3
|
from datetime import datetime
|
|
4
4
|
|
|
5
5
|
from .._client import get_default_client
|
|
6
6
|
from .._proto.api.v0.luminarycloud.physics_ai import physics_ai_pb2 as physaipb
|
|
7
7
|
from .._proto.base import base_pb2 as basepb
|
|
8
8
|
from .._wrapper import ProtoWrapper, ProtoWrapperBase
|
|
9
|
-
from ..types.ids import PhysicsAiArchitectureVersionID
|
|
9
|
+
from ..types.ids import PhysicsAiArchitectureVersionID, PhysicsAiTrainingJobID
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def get_training_job(training_job_id: PhysicsAiTrainingJobID) -> "PhysicsAiTrainingJob":
|
|
13
|
+
"""
|
|
14
|
+
Get a Physics AI training job by ID.
|
|
15
|
+
|
|
16
|
+
Args:
|
|
17
|
+
training_job_id: The ID of the training job to retrieve.
|
|
18
|
+
|
|
19
|
+
Returns:
|
|
20
|
+
The training job.
|
|
21
|
+
"""
|
|
22
|
+
req = physaipb.GetTrainingJobRequest(training_job_id=training_job_id)
|
|
23
|
+
resp = get_default_client().GetTrainingJob(req)
|
|
24
|
+
return PhysicsAiTrainingJob(resp.training_job)
|
|
10
25
|
|
|
11
26
|
|
|
12
27
|
@ProtoWrapper(physaipb.PhysicsAiTrainingJob)
|
|
13
28
|
class PhysicsAiTrainingJob(ProtoWrapperBase):
|
|
14
29
|
"""
|
|
15
30
|
Represents a Physics AI training job.
|
|
16
|
-
|
|
17
|
-
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
18
31
|
"""
|
|
19
32
|
|
|
20
33
|
id: str
|
|
@@ -24,6 +37,7 @@ class PhysicsAiTrainingJob(ProtoWrapperBase):
|
|
|
24
37
|
training_data_source_type: physaipb.TrainingDataSourceType
|
|
25
38
|
training_description: str
|
|
26
39
|
external_dataset_uri: str
|
|
40
|
+
dataset_id: str
|
|
27
41
|
initialization_type: physaipb.ModelInitializationType
|
|
28
42
|
base_model_version_id: str
|
|
29
43
|
status: basepb.JobStatus
|
|
@@ -35,3 +49,35 @@ class PhysicsAiTrainingJob(ProtoWrapperBase):
|
|
|
35
49
|
|
|
36
50
|
def get_status(self) -> str:
|
|
37
51
|
return basepb.JobStatusType.Name(self.status.typ)
|
|
52
|
+
|
|
53
|
+
def cancel(self) -> None:
|
|
54
|
+
"""
|
|
55
|
+
Cancel this training job.
|
|
56
|
+
|
|
57
|
+
This method requests cancellation of the training job. If the job is already
|
|
58
|
+
suspended or suspending, this is a no-op.
|
|
59
|
+
"""
|
|
60
|
+
req = physaipb.CancelTrainingJobRequest(training_job_id=self.id)
|
|
61
|
+
get_default_client().CancelTrainingJob(req)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
def list_training_jobs() -> List[PhysicsAiTrainingJob]:
|
|
65
|
+
"""
|
|
66
|
+
List Physics AI training jobs for the current user.
|
|
67
|
+
|
|
68
|
+
Returns
|
|
69
|
+
-------
|
|
70
|
+
List[PhysicsAiTrainingJob]
|
|
71
|
+
A list of training jobs, ordered by creation time (newest first).
|
|
72
|
+
|
|
73
|
+
Examples
|
|
74
|
+
--------
|
|
75
|
+
List all training jobs:
|
|
76
|
+
|
|
77
|
+
>>> jobs = list_training_jobs()
|
|
78
|
+
>>> for job in jobs:
|
|
79
|
+
... print(f"{job.id}: {job.get_status()}")
|
|
80
|
+
"""
|
|
81
|
+
req = physaipb.ListTrainingJobsRequest()
|
|
82
|
+
response = get_default_client().ListTrainingJobs(req)
|
|
83
|
+
return [PhysicsAiTrainingJob(job) for job in response.training_jobs]
|
|
@@ -2,8 +2,12 @@
|
|
|
2
2
|
from .core import (
|
|
3
3
|
Pipeline as Pipeline,
|
|
4
4
|
PipelineParameter as PipelineParameter,
|
|
5
|
+
stage as stage,
|
|
5
6
|
# Stage base class, mainly exported for testing
|
|
6
7
|
Stage as Stage,
|
|
8
|
+
# RunScript stage lives in core because it's a special snowflake
|
|
9
|
+
RunScript as RunScript,
|
|
10
|
+
StopRun as StopRun,
|
|
7
11
|
)
|
|
8
12
|
|
|
9
13
|
from .parameters import (
|
|
@@ -23,28 +27,36 @@ from .stages import (
|
|
|
23
27
|
ReadGeometryOutputs as ReadGeometryOutputs,
|
|
24
28
|
ReadMesh as ReadMesh,
|
|
25
29
|
ReadMeshOutputs as ReadMeshOutputs,
|
|
26
|
-
ModifyGeometry as ModifyGeometry,
|
|
27
|
-
ModifyGeometryOutputs as ModifyGeometryOutputs,
|
|
28
30
|
Mesh as Mesh,
|
|
29
31
|
MeshOutputs as MeshOutputs,
|
|
32
|
+
WaitForMesh as WaitForMesh,
|
|
33
|
+
WaitForMeshOutputs as WaitForMeshOutputs,
|
|
30
34
|
Simulate as Simulate,
|
|
31
35
|
SimulateOutputs as SimulateOutputs,
|
|
32
36
|
)
|
|
33
37
|
|
|
34
38
|
from .arguments import (
|
|
35
39
|
PipelineArgs as PipelineArgs,
|
|
40
|
+
PP_NAMED_VARIABLE_SET_ID as PP_NAMED_VARIABLE_SET_ID,
|
|
36
41
|
ArgNamedVariableSet as ArgNamedVariableSet,
|
|
37
42
|
)
|
|
38
43
|
|
|
44
|
+
from .flowables import (
|
|
45
|
+
FlowableType as FlowableType,
|
|
46
|
+
FlowableIOSchema as FlowableIOSchema,
|
|
47
|
+
)
|
|
48
|
+
|
|
39
49
|
from .api import (
|
|
40
50
|
create_pipeline as create_pipeline,
|
|
41
|
-
|
|
51
|
+
iterate_pipelines as iterate_pipelines,
|
|
42
52
|
get_pipeline as get_pipeline,
|
|
43
53
|
create_pipeline_job as create_pipeline_job,
|
|
44
54
|
get_pipeline_job as get_pipeline_job,
|
|
45
|
-
|
|
55
|
+
iterate_pipeline_jobs as iterate_pipeline_jobs,
|
|
46
56
|
PipelineJobRecord as PipelineJobRecord,
|
|
47
57
|
PipelineRecord as PipelineRecord,
|
|
48
58
|
PipelineJobRunRecord as PipelineJobRunRecord,
|
|
59
|
+
PipelineTaskRecord as PipelineTaskRecord,
|
|
60
|
+
StageDefinition as StageDefinition,
|
|
49
61
|
LogLine as LogLine,
|
|
50
62
|
)
|