luminarycloud 0.19.0__py3-none-any.whl → 0.19.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +83 -25
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +214 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py +34 -0
- luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi +12 -0
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +60 -60
- luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +5 -1
- luminarycloud/_proto/client/simulation_pb2.py +342 -331
- luminarycloud/_proto/client/simulation_pb2.pyi +37 -3
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py +29 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.pyi +7 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py +70 -0
- luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi +30 -0
- luminarycloud/params/enum/_enum_wrappers.py +25 -0
- luminarycloud/params/simulation/material/material_solid_.py +15 -1
- luminarycloud/physics_ai/architectures.py +58 -0
- luminarycloud/physics_ai/training_jobs.py +37 -0
- luminarycloud/pipelines/api.py +7 -6
- luminarycloud/simulation.py +2 -0
- luminarycloud/simulation_template.py +2 -1
- {luminarycloud-0.19.0.dist-info → luminarycloud-0.19.1.dist-info}/METADATA +1 -1
- {luminarycloud-0.19.0.dist-info → luminarycloud-0.19.1.dist-info}/RECORD +22 -17
- {luminarycloud-0.19.0.dist-info → luminarycloud-0.19.1.dist-info}/WHEEL +0 -0
|
@@ -599,6 +599,31 @@ TEMPERATURE_DEPENDENT_LAMINAR_VISCOSITY: LaminarViscosityModelNewtonian.ValueTyp
|
|
|
599
599
|
"""Tabulated dynamic viscosity values vs temperature."""
|
|
600
600
|
global___LaminarViscosityModelNewtonian = LaminarViscosityModelNewtonian
|
|
601
601
|
|
|
602
|
+
class _ThermalConductivityModelSolid:
|
|
603
|
+
ValueType = typing.NewType("ValueType", builtins.int)
|
|
604
|
+
V: typing_extensions.TypeAlias = ValueType
|
|
605
|
+
|
|
606
|
+
class _ThermalConductivityModelSolidEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_ThermalConductivityModelSolid.ValueType], builtins.type): # noqa: F821
|
|
607
|
+
DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
|
|
608
|
+
INVALID_THERMAL_CONDUCTIVITY_MODEL_SOLID: _ThermalConductivityModelSolid.ValueType # 0
|
|
609
|
+
ISOTROPIC_CONDUCTIVITY: _ThermalConductivityModelSolid.ValueType # 52316
|
|
610
|
+
"""Equal thermal conductivity in all directions."""
|
|
611
|
+
ORTHOTROPIC_CONDUCTIVITY: _ThermalConductivityModelSolid.ValueType # 60601
|
|
612
|
+
"""Different thermal conductivity along each axis of the frames to which
|
|
613
|
+
the volumes of this material are assigned.
|
|
614
|
+
"""
|
|
615
|
+
|
|
616
|
+
class ThermalConductivityModelSolid(_ThermalConductivityModelSolid, metaclass=_ThermalConductivityModelSolidEnumTypeWrapper): ...
|
|
617
|
+
|
|
618
|
+
INVALID_THERMAL_CONDUCTIVITY_MODEL_SOLID: ThermalConductivityModelSolid.ValueType # 0
|
|
619
|
+
ISOTROPIC_CONDUCTIVITY: ThermalConductivityModelSolid.ValueType # 52316
|
|
620
|
+
"""Equal thermal conductivity in all directions."""
|
|
621
|
+
ORTHOTROPIC_CONDUCTIVITY: ThermalConductivityModelSolid.ValueType # 60601
|
|
622
|
+
"""Different thermal conductivity along each axis of the frames to which
|
|
623
|
+
the volumes of this material are assigned.
|
|
624
|
+
"""
|
|
625
|
+
global___ThermalConductivityModelSolid = ThermalConductivityModelSolid
|
|
626
|
+
|
|
602
627
|
class _MaterialSolidPreset:
|
|
603
628
|
ValueType = typing.NewType("ValueType", builtins.int)
|
|
604
629
|
V: typing_extensions.TypeAlias = ValueType
|
|
@@ -3086,7 +3111,9 @@ class MaterialSolid(google.protobuf.message.Message):
|
|
|
3086
3111
|
|
|
3087
3112
|
CONSTANT_DENSITY_VALUE_SOLID_FIELD_NUMBER: builtins.int
|
|
3088
3113
|
SPECIFIC_HEAT_CP_SOLID_FIELD_NUMBER: builtins.int
|
|
3114
|
+
THERMAL_CONDUCTIVITY_MODEL_SOLID_FIELD_NUMBER: builtins.int
|
|
3089
3115
|
THERMAL_CONDUCTIVITY_CONSTANT_SOLID_FIELD_NUMBER: builtins.int
|
|
3116
|
+
THERMAL_CONDUCTIVITY_ORTHOTROPIC_SOLID_FIELD_NUMBER: builtins.int
|
|
3090
3117
|
THERMAL_CONDUCTIVITY_TABLE_DATA_FIELD_NUMBER: builtins.int
|
|
3091
3118
|
MATERIAL_SOLID_PRESET_FIELD_NUMBER: builtins.int
|
|
3092
3119
|
@property
|
|
@@ -3094,10 +3121,15 @@ class MaterialSolid(google.protobuf.message.Message):
|
|
|
3094
3121
|
"""Constant density value."""
|
|
3095
3122
|
@property
|
|
3096
3123
|
def specific_heat_cp_solid(self) -> luminarycloud._proto.base.base_pb2.AdFloatType:
|
|
3097
|
-
"""Specific heat
|
|
3124
|
+
"""Specific heat."""
|
|
3125
|
+
thermal_conductivity_model_solid: global___ThermalConductivityModelSolid.ValueType
|
|
3126
|
+
"""Uniform or direction-dependent conductivity models."""
|
|
3098
3127
|
@property
|
|
3099
3128
|
def thermal_conductivity_constant_solid(self) -> luminarycloud._proto.base.base_pb2.AdFloatType:
|
|
3100
3129
|
"""The thermal conductivity of the material."""
|
|
3130
|
+
@property
|
|
3131
|
+
def thermal_conductivity_orthotropic_solid(self) -> luminarycloud._proto.base.base_pb2.AdVector3:
|
|
3132
|
+
"""The thermal conductivities of the material along each axis."""
|
|
3101
3133
|
thermal_conductivity_table_data: builtins.str
|
|
3102
3134
|
"""Correlation between thermal conductivity and temperature."""
|
|
3103
3135
|
material_solid_preset: global___MaterialSolidPreset.ValueType
|
|
@@ -3107,12 +3139,14 @@ class MaterialSolid(google.protobuf.message.Message):
|
|
|
3107
3139
|
*,
|
|
3108
3140
|
constant_density_value_solid: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
|
|
3109
3141
|
specific_heat_cp_solid: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
|
|
3142
|
+
thermal_conductivity_model_solid: global___ThermalConductivityModelSolid.ValueType = ...,
|
|
3110
3143
|
thermal_conductivity_constant_solid: luminarycloud._proto.base.base_pb2.AdFloatType | None = ...,
|
|
3144
|
+
thermal_conductivity_orthotropic_solid: luminarycloud._proto.base.base_pb2.AdVector3 | None = ...,
|
|
3111
3145
|
thermal_conductivity_table_data: builtins.str = ...,
|
|
3112
3146
|
material_solid_preset: global___MaterialSolidPreset.ValueType = ...,
|
|
3113
3147
|
) -> None: ...
|
|
3114
|
-
def HasField(self, field_name: typing_extensions.Literal["constant_density_value_solid", b"constant_density_value_solid", "specific_heat_cp_solid", b"specific_heat_cp_solid", "thermal_conductivity_constant_solid", b"thermal_conductivity_constant_solid"]) -> builtins.bool: ...
|
|
3115
|
-
def ClearField(self, field_name: typing_extensions.Literal["constant_density_value_solid", b"constant_density_value_solid", "material_solid_preset", b"material_solid_preset", "specific_heat_cp_solid", b"specific_heat_cp_solid", "thermal_conductivity_constant_solid", b"thermal_conductivity_constant_solid", "thermal_conductivity_table_data", b"thermal_conductivity_table_data"]) -> None: ...
|
|
3148
|
+
def HasField(self, field_name: typing_extensions.Literal["constant_density_value_solid", b"constant_density_value_solid", "specific_heat_cp_solid", b"specific_heat_cp_solid", "thermal_conductivity_constant_solid", b"thermal_conductivity_constant_solid", "thermal_conductivity_orthotropic_solid", b"thermal_conductivity_orthotropic_solid"]) -> builtins.bool: ...
|
|
3149
|
+
def ClearField(self, field_name: typing_extensions.Literal["constant_density_value_solid", b"constant_density_value_solid", "material_solid_preset", b"material_solid_preset", "specific_heat_cp_solid", b"specific_heat_cp_solid", "thermal_conductivity_constant_solid", b"thermal_conductivity_constant_solid", "thermal_conductivity_model_solid", b"thermal_conductivity_model_solid", "thermal_conductivity_orthotropic_solid", b"thermal_conductivity_orthotropic_solid", "thermal_conductivity_table_data", b"thermal_conductivity_table_data"]) -> None: ...
|
|
3116
3150
|
|
|
3117
3151
|
global___MaterialSolid = MaterialSolid
|
|
3118
3152
|
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# source: proto/physicsaitrainingservice/physicsaitrainingservice.proto
|
|
4
|
+
"""Generated protocol buffer code."""
|
|
5
|
+
from google.protobuf import descriptor as _descriptor
|
|
6
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
7
|
+
from google.protobuf import message as _message
|
|
8
|
+
from google.protobuf import reflection as _reflection
|
|
9
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
10
|
+
# @@protoc_insertion_point(imports)
|
|
11
|
+
|
|
12
|
+
_sym_db = _symbol_database.Default()
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from luminarycloud._proto.api.v0.luminarycloud.physics_ai import physics_ai_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n=proto/physicsaitrainingservice/physicsaitrainingservice.proto\x12\'luminary.proto.physicsaitrainingservice\x1a\x36proto/api/v0/luminarycloud/physics_ai/physics_ai.proto2\xc7\x01\n\x18PhysicsAiTrainingService\x12\xaa\x01\n\x11SubmitTrainingJob\x12H.luminary.proto.api.v0.luminarycloud.physics_ai.SubmitTrainingJobRequest\x1aI.luminary.proto.api.v0.luminarycloud.physics_ai.SubmitTrainingJobResponse\"\x00\x42\x37Z5luminarycloud.com/core/proto/physicsaitrainingserviceb\x06proto3')
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
_PHYSICSAITRAININGSERVICE = DESCRIPTOR.services_by_name['PhysicsAiTrainingService']
|
|
23
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
24
|
+
|
|
25
|
+
DESCRIPTOR._options = None
|
|
26
|
+
DESCRIPTOR._serialized_options = b'Z5luminarycloud.com/core/proto/physicsaitrainingservice'
|
|
27
|
+
_PHYSICSAITRAININGSERVICE._serialized_start=163
|
|
28
|
+
_PHYSICSAITRAININGSERVICE._serialized_end=362
|
|
29
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
|
+
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
|
+
import grpc
|
|
4
|
+
|
|
5
|
+
from luminarycloud._proto.api.v0.luminarycloud.physics_ai import physics_ai_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class PhysicsAiTrainingServiceStub(object):
|
|
9
|
+
"""PhysicsAiTrainingService provides training functionality for Physics AI
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
def __init__(self, channel):
|
|
13
|
+
"""Constructor.
|
|
14
|
+
|
|
15
|
+
Args:
|
|
16
|
+
channel: A grpc.Channel.
|
|
17
|
+
"""
|
|
18
|
+
self.SubmitTrainingJob = channel.unary_unary(
|
|
19
|
+
'/luminary.proto.physicsaitrainingservice.PhysicsAiTrainingService/SubmitTrainingJob',
|
|
20
|
+
request_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobRequest.SerializeToString,
|
|
21
|
+
response_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobResponse.FromString,
|
|
22
|
+
)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class PhysicsAiTrainingServiceServicer(object):
|
|
26
|
+
"""PhysicsAiTrainingService provides training functionality for Physics AI
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
def SubmitTrainingJob(self, request, context):
|
|
30
|
+
"""Submit a physics AI training job
|
|
31
|
+
"""
|
|
32
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
33
|
+
context.set_details('Method not implemented!')
|
|
34
|
+
raise NotImplementedError('Method not implemented!')
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def add_PhysicsAiTrainingServiceServicer_to_server(servicer, server):
|
|
38
|
+
rpc_method_handlers = {
|
|
39
|
+
'SubmitTrainingJob': grpc.unary_unary_rpc_method_handler(
|
|
40
|
+
servicer.SubmitTrainingJob,
|
|
41
|
+
request_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobRequest.FromString,
|
|
42
|
+
response_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobResponse.SerializeToString,
|
|
43
|
+
),
|
|
44
|
+
}
|
|
45
|
+
generic_handler = grpc.method_handlers_generic_handler(
|
|
46
|
+
'luminary.proto.physicsaitrainingservice.PhysicsAiTrainingService', rpc_method_handlers)
|
|
47
|
+
server.add_generic_rpc_handlers((generic_handler,))
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
# This class is part of an EXPERIMENTAL API.
|
|
51
|
+
class PhysicsAiTrainingService(object):
|
|
52
|
+
"""PhysicsAiTrainingService provides training functionality for Physics AI
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
@staticmethod
|
|
56
|
+
def SubmitTrainingJob(request,
|
|
57
|
+
target,
|
|
58
|
+
options=(),
|
|
59
|
+
channel_credentials=None,
|
|
60
|
+
call_credentials=None,
|
|
61
|
+
insecure=False,
|
|
62
|
+
compression=None,
|
|
63
|
+
wait_for_ready=None,
|
|
64
|
+
timeout=None,
|
|
65
|
+
metadata=None):
|
|
66
|
+
return grpc.experimental.unary_unary(request, target, '/luminary.proto.physicsaitrainingservice.PhysicsAiTrainingService/SubmitTrainingJob',
|
|
67
|
+
proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobRequest.SerializeToString,
|
|
68
|
+
proto_dot_api_dot_v0_dot_luminarycloud_dot_physics__ai_dot_physics__ai__pb2.SubmitTrainingJobResponse.FromString,
|
|
69
|
+
options, channel_credentials,
|
|
70
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"""
|
|
2
|
+
@generated by mypy-protobuf. Do not edit manually!
|
|
3
|
+
isort:skip_file
|
|
4
|
+
Copyright 2025 Luminary Cloud, Inc. All Rights Reserved."""
|
|
5
|
+
import abc
|
|
6
|
+
import grpc
|
|
7
|
+
import luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2
|
|
8
|
+
|
|
9
|
+
class PhysicsAiTrainingServiceStub:
|
|
10
|
+
"""PhysicsAiTrainingService provides training functionality for Physics AI"""
|
|
11
|
+
|
|
12
|
+
def __init__(self, channel: grpc.Channel) -> None: ...
|
|
13
|
+
SubmitTrainingJob: grpc.UnaryUnaryMultiCallable[
|
|
14
|
+
luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobRequest,
|
|
15
|
+
luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobResponse,
|
|
16
|
+
]
|
|
17
|
+
"""Submit a physics AI training job"""
|
|
18
|
+
|
|
19
|
+
class PhysicsAiTrainingServiceServicer(metaclass=abc.ABCMeta):
|
|
20
|
+
"""PhysicsAiTrainingService provides training functionality for Physics AI"""
|
|
21
|
+
|
|
22
|
+
@abc.abstractmethod
|
|
23
|
+
def SubmitTrainingJob(
|
|
24
|
+
self,
|
|
25
|
+
request: luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobRequest,
|
|
26
|
+
context: grpc.ServicerContext,
|
|
27
|
+
) -> luminarycloud._proto.api.v0.luminarycloud.physics_ai.physics_ai_pb2.SubmitTrainingJobResponse:
|
|
28
|
+
"""Submit a physics AI training job"""
|
|
29
|
+
|
|
30
|
+
def add_PhysicsAiTrainingServiceServicer_to_server(servicer: PhysicsAiTrainingServiceServicer, server: grpc.Server) -> None: ...
|
|
@@ -541,6 +541,31 @@ class MaterialFluidPreset(_IntEnum):
|
|
|
541
541
|
CUSTOM_MATERIAL_FLUID = _clientpb.CUSTOM_MATERIAL_FLUID
|
|
542
542
|
|
|
543
543
|
|
|
544
|
+
class ThermalConductivityModelSolid(_IntEnum):
|
|
545
|
+
"""
|
|
546
|
+
Uniform or direction-dependent conductivity models.
|
|
547
|
+
|
|
548
|
+
Attributes
|
|
549
|
+
----------
|
|
550
|
+
ISOTROPIC_CONDUCTIVITY
|
|
551
|
+
Equal thermal conductivity in all directions.
|
|
552
|
+
ORTHOTROPIC_CONDUCTIVITY
|
|
553
|
+
Different thermal conductivity along each axis of the frames to which
|
|
554
|
+
the volumes of this material are assigned.
|
|
555
|
+
|
|
556
|
+
|
|
557
|
+
Examples
|
|
558
|
+
--------
|
|
559
|
+
>>> from luminarycloud.params.enum import ThermalConductivityModelSolid
|
|
560
|
+
>>> ThermalConductivityModelSolid.ISOTROPIC_CONDUCTIVITY
|
|
561
|
+
>>> ThermalConductivityModelSolid.ORTHOTROPIC_CONDUCTIVITY
|
|
562
|
+
"""
|
|
563
|
+
|
|
564
|
+
INVALID = _clientpb.INVALID_THERMAL_CONDUCTIVITY_MODEL_SOLID
|
|
565
|
+
ISOTROPIC_CONDUCTIVITY = _clientpb.ISOTROPIC_CONDUCTIVITY
|
|
566
|
+
ORTHOTROPIC_CONDUCTIVITY = _clientpb.ORTHOTROPIC_CONDUCTIVITY
|
|
567
|
+
|
|
568
|
+
|
|
544
569
|
class MaterialSolidPreset(_IntEnum):
|
|
545
570
|
"""
|
|
546
571
|
Select a predefined set of material properties or allow a custom set of properties.
|
|
@@ -25,9 +25,15 @@ class MaterialSolid(CodeRepr, ParamGroupWrapper[clientpb.MaterialSolid]):
|
|
|
25
25
|
density: LcFloat = 2700
|
|
26
26
|
"Constant density value."
|
|
27
27
|
specific_heat_cp: LcFloat = 896
|
|
28
|
-
"Specific heat
|
|
28
|
+
"Specific heat."
|
|
29
|
+
conductivity_model: enum.ThermalConductivityModelSolid = (
|
|
30
|
+
enum.ThermalConductivityModelSolid.ISOTROPIC_CONDUCTIVITY
|
|
31
|
+
)
|
|
32
|
+
"Uniform or direction-dependent conductivity models."
|
|
29
33
|
thermal_conductivity: LcFloat = 167
|
|
30
34
|
"The thermal conductivity of the material."
|
|
35
|
+
orthotropic_conductivity: Vector3 = field(default_factory=lambda: Vector3(167, 167, 167))
|
|
36
|
+
"The thermal conductivities of the material along each axis."
|
|
31
37
|
thermal_conductivity_table: RectilinearTable | None = None
|
|
32
38
|
"Correlation between thermal conductivity and temperature."
|
|
33
39
|
preset: enum.MaterialSolidPreset = enum.MaterialSolidPreset.ALUMINUM
|
|
@@ -37,7 +43,11 @@ class MaterialSolid(CodeRepr, ParamGroupWrapper[clientpb.MaterialSolid]):
|
|
|
37
43
|
_proto = clientpb.MaterialSolid()
|
|
38
44
|
_proto.constant_density_value_solid.CopyFrom(_to_ad_proto(self.density))
|
|
39
45
|
_proto.specific_heat_cp_solid.CopyFrom(_to_ad_proto(self.specific_heat_cp))
|
|
46
|
+
_proto.thermal_conductivity_model_solid = self.conductivity_model.value
|
|
40
47
|
_proto.thermal_conductivity_constant_solid.CopyFrom(_to_ad_proto(self.thermal_conductivity))
|
|
48
|
+
_proto.thermal_conductivity_orthotropic_solid.CopyFrom(
|
|
49
|
+
self.orthotropic_conductivity._to_ad_proto()
|
|
50
|
+
)
|
|
41
51
|
if self.thermal_conductivity_table is not None:
|
|
42
52
|
if self.thermal_conductivity_table.table_type != _param_name_to_table_type(
|
|
43
53
|
"thermal_conductivity_table_data"
|
|
@@ -50,7 +60,11 @@ class MaterialSolid(CodeRepr, ParamGroupWrapper[clientpb.MaterialSolid]):
|
|
|
50
60
|
def _from_proto(self, proto: clientpb.MaterialSolid) -> None:
|
|
51
61
|
self.density = _from_ad_proto(proto.constant_density_value_solid)
|
|
52
62
|
self.specific_heat_cp = _from_ad_proto(proto.specific_heat_cp_solid)
|
|
63
|
+
self.conductivity_model = enum.ThermalConductivityModelSolid(
|
|
64
|
+
proto.thermal_conductivity_model_solid
|
|
65
|
+
)
|
|
53
66
|
self.thermal_conductivity = _from_ad_proto(proto.thermal_conductivity_constant_solid)
|
|
67
|
+
self.orthotropic_conductivity._from_ad_proto(proto.thermal_conductivity_orthotropic_solid)
|
|
54
68
|
if proto.thermal_conductivity_table_data != "":
|
|
55
69
|
self.thermal_conductivity_table = RectilinearTable(
|
|
56
70
|
id=proto.thermal_conductivity_table_data,
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
# Copyright 2025 Luminary Cloud, Inc. All Rights Reserved.
|
|
2
2
|
from typing import List, Optional
|
|
3
|
+
import json
|
|
3
4
|
|
|
4
5
|
from .._client import get_default_client
|
|
5
6
|
from .._proto.api.v0.luminarycloud.physics_ai import physics_ai_pb2 as physaipb
|
|
@@ -7,6 +8,8 @@ from .._wrapper import ProtoWrapper, ProtoWrapperBase
|
|
|
7
8
|
from ..types.ids import PhysicsAiArchitectureID, PhysicsAiArchitectureVersionID
|
|
8
9
|
from ..enum.physics_ai_lifecycle_state import PhysicsAiLifecycleState
|
|
9
10
|
|
|
11
|
+
from .training_jobs import PhysicsAiTrainingJob
|
|
12
|
+
|
|
10
13
|
|
|
11
14
|
@ProtoWrapper(physaipb.PhysicsAiArchitectureVersion)
|
|
12
15
|
class PhysicsAiArchitectureVersion(ProtoWrapperBase):
|
|
@@ -18,10 +21,65 @@ class PhysicsAiArchitectureVersion(ProtoWrapperBase):
|
|
|
18
21
|
|
|
19
22
|
id: PhysicsAiArchitectureVersionID
|
|
20
23
|
name: str
|
|
24
|
+
architecture_name: str
|
|
21
25
|
changelog: str
|
|
22
26
|
lifecycle_state: PhysicsAiLifecycleState
|
|
23
27
|
_proto: physaipb.PhysicsAiArchitectureVersion
|
|
24
28
|
|
|
29
|
+
def get_training_description(self, config: dict) -> str:
|
|
30
|
+
if config.get("description"):
|
|
31
|
+
return config["description"]
|
|
32
|
+
|
|
33
|
+
desc = f"Training job for architecture {self.name}"
|
|
34
|
+
if config.get("custom_args"):
|
|
35
|
+
desc += f" with custom args: {config['custom_args']}"
|
|
36
|
+
return desc
|
|
37
|
+
|
|
38
|
+
def train(self, config: dict) -> PhysicsAiTrainingJob:
|
|
39
|
+
"""
|
|
40
|
+
Submit a training job for this architecture version.
|
|
41
|
+
|
|
42
|
+
Parameters
|
|
43
|
+
----------
|
|
44
|
+
config : dict, optional
|
|
45
|
+
Training configuration dictionary
|
|
46
|
+
|
|
47
|
+
Returns
|
|
48
|
+
-------
|
|
49
|
+
PhysicsAiTrainingJob
|
|
50
|
+
The submitted training job object
|
|
51
|
+
"""
|
|
52
|
+
|
|
53
|
+
if "custom_args" not in config:
|
|
54
|
+
config["custom_args"] = ""
|
|
55
|
+
if "priority_class" not in config:
|
|
56
|
+
config["priority_class"] = "prod-batch-priority"
|
|
57
|
+
if "resources" not in config:
|
|
58
|
+
config["resources"] = {}
|
|
59
|
+
if "process_gpus" not in config["resources"]:
|
|
60
|
+
config["resources"]["process_gpus"] = 8
|
|
61
|
+
if "train_gpus" not in config["resources"]:
|
|
62
|
+
config["resources"]["train_gpus"] = 8
|
|
63
|
+
if "test_gpus" not in config["resources"]:
|
|
64
|
+
config["resources"]["test_gpus"] = 8
|
|
65
|
+
if "mode" not in config:
|
|
66
|
+
config["mode"] = "full-gpu"
|
|
67
|
+
|
|
68
|
+
training_config_json = json.dumps(config, indent=2)
|
|
69
|
+
external_dataset_uri = f"gs://training-data/architecture-{self.id}"
|
|
70
|
+
req = physaipb.SubmitTrainingJobRequest(
|
|
71
|
+
architecture_version_id=self.id,
|
|
72
|
+
training_description=self.get_training_description(config),
|
|
73
|
+
external_dataset_uri=external_dataset_uri,
|
|
74
|
+
training_config=training_config_json,
|
|
75
|
+
initialization_type=physaipb.MODEL_INITIALIZATION_TYPE_RANDOM,
|
|
76
|
+
base_model_version_id="",
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
response = get_default_client().SubmitTrainingJob(req)
|
|
80
|
+
|
|
81
|
+
return PhysicsAiTrainingJob(response.training_job)
|
|
82
|
+
|
|
25
83
|
|
|
26
84
|
@ProtoWrapper(physaipb.PhysicsAiArchitecture)
|
|
27
85
|
class PhysicsAiArchitecture(ProtoWrapperBase):
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Copyright 2025 Luminary Cloud, Inc. All Rights Reserved.
|
|
2
|
+
from typing import List, Optional
|
|
3
|
+
from datetime import datetime
|
|
4
|
+
|
|
5
|
+
from .._client import get_default_client
|
|
6
|
+
from .._proto.api.v0.luminarycloud.physics_ai import physics_ai_pb2 as physaipb
|
|
7
|
+
from .._proto.base import base_pb2 as basepb
|
|
8
|
+
from .._wrapper import ProtoWrapper, ProtoWrapperBase
|
|
9
|
+
from ..types.ids import PhysicsAiArchitectureVersionID
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@ProtoWrapper(physaipb.PhysicsAiTrainingJob)
|
|
13
|
+
class PhysicsAiTrainingJob(ProtoWrapperBase):
|
|
14
|
+
"""
|
|
15
|
+
Represents a Physics AI training job.
|
|
16
|
+
|
|
17
|
+
.. warning:: This feature is experimental and may change or be removed without notice.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
id: str
|
|
21
|
+
architecture_version_id: PhysicsAiArchitectureVersionID
|
|
22
|
+
user_id: str
|
|
23
|
+
training_config: str
|
|
24
|
+
training_data_source_type: physaipb.TrainingDataSourceType
|
|
25
|
+
training_description: str
|
|
26
|
+
external_dataset_uri: str
|
|
27
|
+
initialization_type: physaipb.ModelInitializationType
|
|
28
|
+
base_model_version_id: str
|
|
29
|
+
status: basepb.JobStatus
|
|
30
|
+
error_message: str
|
|
31
|
+
output_model_version_id: str
|
|
32
|
+
creation_time: datetime
|
|
33
|
+
update_time: datetime
|
|
34
|
+
_proto: physaipb.PhysicsAiTrainingJob
|
|
35
|
+
|
|
36
|
+
def get_status(self) -> str:
|
|
37
|
+
return basepb.JobStatusType.Name(self.status.typ)
|
luminarycloud/pipelines/api.py
CHANGED
|
@@ -88,7 +88,7 @@ def create_pipeline(
|
|
|
88
88
|
"description": description,
|
|
89
89
|
}
|
|
90
90
|
res = get_default_client().http.post("/rest/v0/pipelines", body)
|
|
91
|
-
return PipelineRecord.from_json(res)
|
|
91
|
+
return PipelineRecord.from_json(res["data"])
|
|
92
92
|
|
|
93
93
|
|
|
94
94
|
def list_pipelines() -> list[PipelineRecord]:
|
|
@@ -96,7 +96,7 @@ def list_pipelines() -> list[PipelineRecord]:
|
|
|
96
96
|
List all pipelines.
|
|
97
97
|
"""
|
|
98
98
|
res = get_default_client().http.get("/rest/v0/pipelines")
|
|
99
|
-
return [PipelineRecord.from_json(p) for p in res]
|
|
99
|
+
return [PipelineRecord.from_json(p) for p in res["data"]]
|
|
100
100
|
|
|
101
101
|
|
|
102
102
|
def get_pipeline(id: str) -> PipelineRecord:
|
|
@@ -109,7 +109,7 @@ def get_pipeline(id: str) -> PipelineRecord:
|
|
|
109
109
|
ID of the pipeline to fetch.
|
|
110
110
|
"""
|
|
111
111
|
res = get_default_client().http.get(f"/rest/v0/pipelines/{id}")
|
|
112
|
-
return PipelineRecord.from_json(res)
|
|
112
|
+
return PipelineRecord.from_json(res["data"])
|
|
113
113
|
|
|
114
114
|
|
|
115
115
|
def create_pipeline_job(
|
|
@@ -135,13 +135,14 @@ def create_pipeline_job(
|
|
|
135
135
|
arg_rows = [row.row_values for row in args.rows]
|
|
136
136
|
body = {
|
|
137
137
|
"name": name,
|
|
138
|
+
"description": description,
|
|
138
139
|
"project_id": project_id,
|
|
139
140
|
"argument_names": [p.name for p in args.params],
|
|
140
141
|
"argument_rows": arg_rows,
|
|
141
142
|
}
|
|
142
143
|
|
|
143
144
|
res = get_default_client().http.post(f"/rest/v0/pipelines/{pipeline_id}/pipeline_jobs", body)
|
|
144
|
-
return PipelineJobRecord.from_json(res)
|
|
145
|
+
return PipelineJobRecord.from_json(res["data"])
|
|
145
146
|
|
|
146
147
|
|
|
147
148
|
def get_pipeline_job(id: str) -> PipelineJobRecord:
|
|
@@ -149,7 +150,7 @@ def get_pipeline_job(id: str) -> PipelineJobRecord:
|
|
|
149
150
|
Get a pipeline job by ID.
|
|
150
151
|
"""
|
|
151
152
|
res = get_default_client().http.get(f"/rest/v0/pipeline_jobs/{id}")
|
|
152
|
-
return PipelineJobRecord.from_json(res)
|
|
153
|
+
return PipelineJobRecord.from_json(res["data"])
|
|
153
154
|
|
|
154
155
|
|
|
155
156
|
def list_pipeline_jobs() -> list[PipelineJobRecord]:
|
|
@@ -157,4 +158,4 @@ def list_pipeline_jobs() -> list[PipelineJobRecord]:
|
|
|
157
158
|
List all pipeline jobs.
|
|
158
159
|
"""
|
|
159
160
|
res = get_default_client().http.get("/rest/v0/pipeline_jobs")
|
|
160
|
-
return [PipelineJobRecord.from_json(p) for p in res]
|
|
161
|
+
return [PipelineJobRecord.from_json(p) for p in res["data"]]
|
luminarycloud/simulation.py
CHANGED
|
@@ -57,6 +57,8 @@ class Simulation(ProtoWrapperBase):
|
|
|
57
57
|
"ID of the simulation mesh."
|
|
58
58
|
project_id: ProjectID
|
|
59
59
|
"ID of the project containing this simulation."
|
|
60
|
+
doe_name: str
|
|
61
|
+
"Name of the design of experiments that created this simulation."
|
|
60
62
|
|
|
61
63
|
_proto: simulationpb.Simulation
|
|
62
64
|
|
|
@@ -490,7 +490,8 @@ class SimulationTemplate(ProtoWrapperBase):
|
|
|
490
490
|
code += "\n\n\n"
|
|
491
491
|
code += '# Create a new simulation template or modify the one that is synced with the UI "Setup" tab.\n'
|
|
492
492
|
code += f'project = luminarycloud.get_project("{self.project_id}")\n'
|
|
493
|
-
|
|
493
|
+
escaped_name = self.name.replace('\\','\\\\').replace('"','\\"')
|
|
494
|
+
code += f'template = project.create_simulation_template(name="{escaped_name}")\n'
|
|
494
495
|
code += '# TODO(USER): To modify the "Setup" template, uncomment the line below and comment out the line above.\n'
|
|
495
496
|
code += "# template = project.list_simulation_templates()[0] # Setup template\n\n"
|
|
496
497
|
|
|
@@ -10,10 +10,10 @@ luminarycloud/mesh.py,sha256=ohEQty2M0oqUF5jBOHj59e4GXVo1GOi-bZuF31BpbtM,4819
|
|
|
10
10
|
luminarycloud/named_variable_set.py,sha256=RsfGJDoZFajbJ2a2fWc-ZHRsZts5U7ZY6rIXSjXL7bY,4568
|
|
11
11
|
luminarycloud/project.py,sha256=fizJxgQ9PhHmPUfQ4vR0DVv90Rw_tlpAXlulVeg0708,32194
|
|
12
12
|
luminarycloud/reference_values.py,sha256=vWIX1VXMctspeQIjNtjmZdex55K0jHf1xz5gsGeMCfo,4357
|
|
13
|
-
luminarycloud/simulation.py,sha256=
|
|
13
|
+
luminarycloud/simulation.py,sha256=nFC7PJnMXHAjs-CelJUFYbbVVXy6oVeHvPo3MczGbzg,13108
|
|
14
14
|
luminarycloud/simulation_param.py,sha256=fKad0d0rCUL4EbdLvQS7WTK6_US3vQ2pbG8uaSrhxx4,16732
|
|
15
15
|
luminarycloud/simulation_queue.py,sha256=dbrxDxGROlxpCVaUmHItZ8uftfLQinCj53nYZ-CRleI,4702
|
|
16
|
-
luminarycloud/simulation_template.py,sha256=
|
|
16
|
+
luminarycloud/simulation_template.py,sha256=ZsvgsUjW2nAJQ_JnZCsVdaRoogjpBIRNwhdXRxTmcSI,21526
|
|
17
17
|
luminarycloud/solution.py,sha256=xS04WDjoPenJaBxx9xm7t8A4YrNIcq_oQfl4WJ8gAic,6770
|
|
18
18
|
luminarycloud/tables.py,sha256=i6KMjthjRbks4Vxv6Eu6VLulRC9U8fhkzwknR2Ax3Nc,6922
|
|
19
19
|
luminarycloud/tag.py,sha256=aC1xnHFVOEk7V6tp16b0wdwuGAJoqq7u3tzuYwbkkY0,1384
|
|
@@ -82,10 +82,10 @@ luminarycloud/_proto/api/v0/luminarycloud/output_node/output_node_pb2.py,sha256=
|
|
|
82
82
|
luminarycloud/_proto/api/v0/luminarycloud/output_node/output_node_pb2.pyi,sha256=H2K7EGKLHOe5xNunVkFuY4sHN3LTVjZHLlnTwYqFk-A,7654
|
|
83
83
|
luminarycloud/_proto/api/v0/luminarycloud/output_node/output_node_pb2_grpc.py,sha256=lLpk0zvSn4XsvE5JEJVF7V2x2ZAX6rCHTgIzjVN9xU0,11209
|
|
84
84
|
luminarycloud/_proto/api/v0/luminarycloud/output_node/output_node_pb2_grpc.pyi,sha256=N7KiftsEfElduhrGpevNqC7Ri3FGpYsiZ1LQJ4RwDrw,3738
|
|
85
|
-
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py,sha256=
|
|
86
|
-
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi,sha256=
|
|
87
|
-
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py,sha256=
|
|
88
|
-
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi,sha256=
|
|
85
|
+
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py,sha256=X0g0D6gWEntJNlC2n_1QxDpmvUe0zCHHagaEfMQqQo8,17953
|
|
86
|
+
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi,sha256=2-Fw6lmbiU072BpR-gDnORHk9YJPGYGbjWoegBNpLO0,23657
|
|
87
|
+
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py,sha256=WMjycj2H85rdfZ9_JOe1BZhg3k3x9UamYJm5N2LO_5U,9498
|
|
88
|
+
luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi,sha256=xynVc9ide5kxdAwOs9XYL8cQU3BrZaiHLMTKTk5uNPQ,3400
|
|
89
89
|
luminarycloud/_proto/api/v0/luminarycloud/project/project_pb2.py,sha256=INzCXfjQQyzuBrbnqs6Uvle_kpEnotrEhhgHIx8ZeV0,17209
|
|
90
90
|
luminarycloud/_proto/api/v0/luminarycloud/project/project_pb2.pyi,sha256=HaHlJdQlPHccQOpaS7t6JW7M9I4RGSZXB12zImp_qGk,14982
|
|
91
91
|
luminarycloud/_proto/api/v0/luminarycloud/project/project_pb2_grpc.py,sha256=pmYkibMi49G82r9Dh4f83IiNaAWFOqKp6-TbBRA3Llo,20258
|
|
@@ -94,8 +94,8 @@ luminarycloud/_proto/api/v0/luminarycloud/project_ui_state/project_ui_state_pb2.
|
|
|
94
94
|
luminarycloud/_proto/api/v0/luminarycloud/project_ui_state/project_ui_state_pb2.pyi,sha256=-vtlNWPz2kbOPyD26lVOPI5YWsDc35ZWWdWHQV8H40g,3166
|
|
95
95
|
luminarycloud/_proto/api/v0/luminarycloud/project_ui_state/project_ui_state_pb2_grpc.py,sha256=5EC2wbMzDyXuFROZzH1ief__dT6x4N8qJwsPtSy16sA,8038
|
|
96
96
|
luminarycloud/_proto/api/v0/luminarycloud/project_ui_state/project_ui_state_pb2_grpc.pyi,sha256=hGkGk-DMn0Lo6QBtLALBF2HLLV6rgs6zMRmqmDzBZco,2513
|
|
97
|
-
luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py,sha256=
|
|
98
|
-
luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi,sha256=
|
|
97
|
+
luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py,sha256=B-RmO5ezNyk8rTkj4V1lfOoHIl9zhE34gb1ig9UOMYE,31350
|
|
98
|
+
luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi,sha256=H8t7i8Tmw2RzTeWoF4T2YCXxItKi9IXDZBSglsVFZbA,37149
|
|
99
99
|
luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.py,sha256=09Mqc5yVuRwDEnV7oKd9zw0WZS0X7-IB0VVo5Lf3Vus,27538
|
|
100
100
|
luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.pyi,sha256=rzENHjHuDfNZ11S-_1YUcEfwhVJFk1qkBwHksgpqY1M,11699
|
|
101
101
|
luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.py,sha256=K0PmW_-cCzfQpykeHh9qqnlnItAZqnVQExHAOKPDVqc,17287
|
|
@@ -138,8 +138,8 @@ luminarycloud/_proto/cadmetadata/cadmetadata_pb2.py,sha256=bJoJXDLcAqmtHfgR6JKNZ
|
|
|
138
138
|
luminarycloud/_proto/cadmetadata/cadmetadata_pb2.pyi,sha256=ilRDD1oOkFffy4bpgPblZHU2j_2PR_gqdL-_5tRBiU0,4463
|
|
139
139
|
luminarycloud/_proto/client/entity_pb2.py,sha256=LmCbzEBTtsBnfgofVEsYFvVCvw-tDzU9o3eOn0-JqmY,1442
|
|
140
140
|
luminarycloud/_proto/client/entity_pb2.pyi,sha256=nUZ93BId89hhsZhyzMoFohDRRYtKUza458dOLNJVENk,1111
|
|
141
|
-
luminarycloud/_proto/client/simulation_pb2.py,sha256=
|
|
142
|
-
luminarycloud/_proto/client/simulation_pb2.pyi,sha256=
|
|
141
|
+
luminarycloud/_proto/client/simulation_pb2.py,sha256=9LlqhXvoIsKqURxjnXAWh9ENucl6TZsWeQ2GRqdJgxk,436868
|
|
142
|
+
luminarycloud/_proto/client/simulation_pb2.pyi,sha256=cE211nn96MhVg9x-357scg8nsJzb4zDgAO2X1_sPynE,372215
|
|
143
143
|
luminarycloud/_proto/condition/condition_pb2.py,sha256=0WWoUz2yYAJ8Ux9J7Yqap6UdvvzLxnF_tlBceqk76Us,5144
|
|
144
144
|
luminarycloud/_proto/condition/condition_pb2.pyi,sha256=eZ6hTW0F9RDDCDni4IELnCHBSyPZmcw6aKayrKGuQSU,5914
|
|
145
145
|
luminarycloud/_proto/entitygroup/entitygroup_pb2.py,sha256=tkyRcUY1HzMaV0u6_rhotd60iR8lkszoLNqiDVOK4b8,3877
|
|
@@ -194,6 +194,10 @@ luminarycloud/_proto/parametricworker/parametricworker_pb2.py,sha256=vldSHCCpERE
|
|
|
194
194
|
luminarycloud/_proto/parametricworker/parametricworker_pb2.pyi,sha256=R1j0hXIlvccrdQ5Vf45xV6my7dzcPJ94igVZrZ2BjSg,10158
|
|
195
195
|
luminarycloud/_proto/parametricworker/parametricworker_pb2_grpc.py,sha256=sxVIAGz_rFE52RMWGcLpm2o6Qs-lCcoSuDcJSv94f0M,10008
|
|
196
196
|
luminarycloud/_proto/parametricworker/parametricworker_pb2_grpc.pyi,sha256=T8RFKXUxrTOGMpXpjAE-b43Nw8LJjetckFC_d-aDIu4,3378
|
|
197
|
+
luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py,sha256=ulfXXYAKvBK6RPLT8JXeEDtH7UxtmPnzJbx5_ty2kPU,1651
|
|
198
|
+
luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.pyi,sha256=VbmaLisaneVcvS68mWV2faJnoF4vrS4wYBvDZezwPpk,221
|
|
199
|
+
luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py,sha256=6VYOuVOIegaK5c3qrNEx9Etk9Gd52PdZ6RKMSSNkRZ8,3271
|
|
200
|
+
luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi,sha256=Weofl41CRNCGP-fX2cmKCr9k9r6wvQjnel0sJH31U8s,1359
|
|
197
201
|
luminarycloud/_proto/quantity/quantity_options_pb2.py,sha256=TypSq4HRGXvh2UoDhXLpWnDsI6FMaL5vk2Z9tzTtYZw,7063
|
|
198
202
|
luminarycloud/_proto/quantity/quantity_options_pb2.pyi,sha256=oBJBtX4_N7omjABzrEIGgzlxgytK8GEwokpkb10bNfg,13065
|
|
199
203
|
luminarycloud/_proto/quantity/quantity_pb2.py,sha256=rHmcTfnAHkIafFzI5_37B9oMR2fYJgIMMb-gt6ds6BU,135198
|
|
@@ -240,7 +244,7 @@ luminarycloud/outputs/output_definitions.py,sha256=E85hRbAiCphGq-YTUjFYYz64vjg7z
|
|
|
240
244
|
luminarycloud/outputs/stopping_conditions.py,sha256=JSYEViCUaz3d1YiKEBvyCWPlY1z6CYrBLGrVYLDqjF4,8638
|
|
241
245
|
luminarycloud/params/__init__.py,sha256=d9DXzEw3oV1iOMXWpmYYEg2mYndFcxYW3NxrW6x-EFs,175
|
|
242
246
|
luminarycloud/params/enum/__init__.py,sha256=vNvQ8Q-2d7Vd2bbN0x-qlSeYMAxBfEEl3fUbcf1xWPQ,158
|
|
243
|
-
luminarycloud/params/enum/_enum_wrappers.py,sha256=
|
|
247
|
+
luminarycloud/params/enum/_enum_wrappers.py,sha256=jF65YFpX3VOH0kwAk9fkS7xZsrd6r2M6HP63bgMzxkA,63072
|
|
244
248
|
luminarycloud/params/enum/residual_output.py,sha256=wRYCRbvDk-1hJWVFzRyz4Ndr1FagB4-h_JSE9sENszw,1520
|
|
245
249
|
luminarycloud/params/geometry/__init__.py,sha256=X_XNImpQcZ3LaVsXab5jVI5R_0Ep6jyIDtCyok8GgOE,454
|
|
246
250
|
luminarycloud/params/geometry/geometry.py,sha256=MVKaHnIQ-iK04Mr69LwW08NQ909r-mMpr4J93URpWmw,629
|
|
@@ -279,7 +283,7 @@ luminarycloud/params/simulation/entity_relationships/volume_material_relationshi
|
|
|
279
283
|
luminarycloud/params/simulation/entity_relationships/volume_physics_relationship_.py,sha256=yFf7BchW_OYyiXp7KcMaEv2DH1nY5fj3ZXACphGxLvM,2076
|
|
280
284
|
luminarycloud/params/simulation/material/__init__.py,sha256=_wXdstxqZYBo4bopH00rl0wJJ_ltRnO3Kyzy9hGoKWs,106
|
|
281
285
|
luminarycloud/params/simulation/material/material_fluid_.py,sha256=AGBCnCt5-64giB7HeklEFegd1kW7iL1a4-zV2QbQ1Lw,15311
|
|
282
|
-
luminarycloud/params/simulation/material/material_solid_.py,sha256=
|
|
286
|
+
luminarycloud/params/simulation/material/material_solid_.py,sha256=0DyP_b7asi4gqwS99cL4I9NlnhGrZe2cunrB2EorJAY,3833
|
|
283
287
|
luminarycloud/params/simulation/material/fluid/__init__.py,sha256=_JggccSu5o-OUlthHLyDrR_mtb9O7fXv3gBAxxQ5mc8,356
|
|
284
288
|
luminarycloud/params/simulation/material/fluid/boussinesq_approximation_.py,sha256=Zj-jDu7pmB98SSOo0KGmlpMLjgsR76gtjj38HbK4yoo,1018
|
|
285
289
|
luminarycloud/params/simulation/material/fluid/material_model_.py,sha256=iaTNTnykmP8AWYvZyG4pXJ5f05BFpZFFUrLCULArV80,936
|
|
@@ -490,14 +494,15 @@ luminarycloud/params/simulation/time/time_step_ramp/__init__.py,sha256=fBLjMyx7n
|
|
|
490
494
|
luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_off_.py,sha256=K91Qd0rlNS8XvUF96et38VRbw_aCN-CSE8m8Ff17DIQ,1089
|
|
491
495
|
luminarycloud/params/simulation/time/time_step_ramp/time_step_ramp_on_.py,sha256=IYtJRE1urILLXfhCYcFhEExELObHgYzAeAmHDix_1Yc,1445
|
|
492
496
|
luminarycloud/physics_ai/__init__.py,sha256=zSdYA5L3kqGsCfHZVvbYpXd25j8CyAjaHZQFCaQp8ps,478
|
|
493
|
-
luminarycloud/physics_ai/architectures.py,sha256=
|
|
497
|
+
luminarycloud/physics_ai/architectures.py,sha256=hfU9F0qxfOOh3G85Bs3fABDJESHAtREK1RTuOkPZPQA,4393
|
|
494
498
|
luminarycloud/physics_ai/inference.py,sha256=Q9k1GAKio5GVLM0jMqvEWTfkA872V-8BfvGP1n_A4a4,7597
|
|
495
499
|
luminarycloud/physics_ai/models.py,sha256=USuz1LKbt4U3nRAYUYGQz7bRLhPIBnb3Q3xQwFam6Z0,2135
|
|
496
500
|
luminarycloud/physics_ai/solution.py,sha256=IdQFEobvCAu0HJ4KwWvvpUGfRktC6thPhALpoDEIDF0,2423
|
|
501
|
+
luminarycloud/physics_ai/training_jobs.py,sha256=e00WETgMqAps6N_PM8C3LmIcrUx3a-6UcwtfPbv1trs,1242
|
|
497
502
|
luminarycloud/pipeline_util/dictable.py,sha256=_YhxibnVCUqSpBH-IHBqvjiYlnAYMbuQv9dWK0eZn7Y,1073
|
|
498
503
|
luminarycloud/pipeline_util/yaml.py,sha256=RG3Gqv4ORaYX4lTyRVBsGVGE138zsxJIYzoWr4Aczrs,1883
|
|
499
504
|
luminarycloud/pipelines/__init__.py,sha256=bOu2XBDzOb5n9R5JwYFowLuLoSWXWW7I4mGm43cXdSs,1348
|
|
500
|
-
luminarycloud/pipelines/api.py,sha256=
|
|
505
|
+
luminarycloud/pipelines/api.py,sha256=t33OgewD7m3R4shCK_2CnZ-R7jLJWPeMh04y0WPcHiY,4643
|
|
501
506
|
luminarycloud/pipelines/arguments.py,sha256=cFbVzOumOUMzO4yB0aWblMH78fZvT-RMZEO-12EBWOs,3787
|
|
502
507
|
luminarycloud/pipelines/core.py,sha256=W_E8vLec2Sxi7LDGfEzkxFKrbDDnaxpD3BI3nBL4lpU,14754
|
|
503
508
|
luminarycloud/pipelines/operators.py,sha256=yYJ6SZu00zo73sSv3Hn5yfagBIKF9Z9r0ujg5b9uC08,5441
|
|
@@ -518,6 +523,6 @@ luminarycloud/vis/interactive_scene.py,sha256=iczI7MifCVQHbSK9oeK2waZ5Nh2YwPrvSx
|
|
|
518
523
|
luminarycloud/vis/primitives.py,sha256=_EDSEAddSAFTRUU9at1Gxt-5chLO723f9c8V5atTeTg,4546
|
|
519
524
|
luminarycloud/vis/vis_util.py,sha256=AWGmHcfYXGmfe5t5Jbb1Fqe2nxVdEQbBitCaWSeT89M,1821
|
|
520
525
|
luminarycloud/vis/visualization.py,sha256=vbjQGCZrCdM63_tseDNttMopZMSpN6FNO1icMgkl7Tc,56629
|
|
521
|
-
luminarycloud-0.19.
|
|
522
|
-
luminarycloud-0.19.
|
|
523
|
-
luminarycloud-0.19.
|
|
526
|
+
luminarycloud-0.19.1.dist-info/METADATA,sha256=cmu6CJCpakgB-DTXk3aRt6sw6xo5mbZs17DZ4Z4pzvc,2574
|
|
527
|
+
luminarycloud-0.19.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
528
|
+
luminarycloud-0.19.1.dist-info/RECORD,,
|
|
File without changes
|