luminarycloud 0.21.2__py3-none-any.whl → 0.22.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.
Files changed (69) hide show
  1. luminarycloud/__init__.py +3 -1
  2. luminarycloud/_client/authentication_plugin.py +49 -0
  3. luminarycloud/_client/client.py +38 -8
  4. luminarycloud/_client/http_client.py +1 -1
  5. luminarycloud/_client/retry_interceptor.py +64 -2
  6. luminarycloud/_feature_flag.py +22 -0
  7. luminarycloud/_helpers/_create_simulation.py +7 -2
  8. luminarycloud/_helpers/download.py +11 -0
  9. luminarycloud/_helpers/proto_decorator.py +13 -5
  10. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2.py +55 -0
  11. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2.pyi +52 -0
  12. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2_grpc.py +72 -0
  13. luminarycloud/_proto/api/v0/luminarycloud/feature_flag/feature_flag_pb2_grpc.pyi +35 -0
  14. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.py +132 -132
  15. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +36 -8
  16. luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.py +74 -73
  17. luminarycloud/_proto/api/v0/luminarycloud/mesh/mesh_pb2.pyi +8 -1
  18. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +53 -23
  19. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +54 -1
  20. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2.py +195 -0
  21. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2.pyi +361 -0
  22. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2_grpc.py +172 -0
  23. luminarycloud/_proto/api/v0/luminarycloud/physicsaiinference/physicsaiinference_pb2_grpc.pyi +66 -0
  24. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.py +97 -61
  25. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2.pyi +68 -3
  26. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.py +34 -0
  27. luminarycloud/_proto/api/v0/luminarycloud/simulation/simulation_pb2_grpc.pyi +12 -0
  28. luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.py +33 -31
  29. luminarycloud/_proto/api/v0/luminarycloud/simulation_template/simulation_template_pb2.pyi +23 -2
  30. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.py +88 -65
  31. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.pyi +42 -0
  32. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.py +34 -0
  33. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.pyi +12 -0
  34. luminarycloud/_proto/base/base_pb2.py +7 -6
  35. luminarycloud/_proto/base/base_pb2.pyi +4 -0
  36. luminarycloud/_proto/cad/shape_pb2.py +39 -19
  37. luminarycloud/_proto/cad/shape_pb2.pyi +86 -34
  38. luminarycloud/_proto/client/simulation_pb2.py +3 -3
  39. luminarycloud/_proto/geometry/geometry_pb2.py +77 -63
  40. luminarycloud/_proto/geometry/geometry_pb2.pyi +42 -3
  41. luminarycloud/_proto/hexmesh/hexmesh_pb2.py +22 -18
  42. luminarycloud/_proto/hexmesh/hexmesh_pb2.pyi +18 -2
  43. luminarycloud/_proto/physicsaiinferenceservice/physicsaiinferenceservice_pb2.py +30 -0
  44. luminarycloud/_proto/physicsaiinferenceservice/physicsaiinferenceservice_pb2.pyi +7 -0
  45. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2.py +2 -2
  46. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.py +34 -0
  47. luminarycloud/_proto/physicsaitrainingservice/physicsaitrainingservice_pb2_grpc.pyi +12 -0
  48. luminarycloud/enum/vis_enums.py +6 -0
  49. luminarycloud/feature_modification.py +32 -1
  50. luminarycloud/geometry.py +67 -7
  51. luminarycloud/geometry_version.py +4 -0
  52. luminarycloud/mesh.py +4 -0
  53. luminarycloud/meshing/mesh_generation_params.py +13 -14
  54. luminarycloud/meshing/sizing_strategy/sizing_strategies.py +1 -2
  55. luminarycloud/physics_ai/solution.py +4 -0
  56. luminarycloud/pipelines/api.py +99 -8
  57. luminarycloud/pipelines/core.py +12 -2
  58. luminarycloud/pipelines/stages.py +22 -9
  59. luminarycloud/project.py +5 -8
  60. luminarycloud/simulation.py +57 -0
  61. luminarycloud/types/vector3.py +1 -2
  62. luminarycloud/vis/data_extraction.py +7 -7
  63. luminarycloud/vis/interactive_report.py +163 -7
  64. luminarycloud/vis/report.py +113 -1
  65. luminarycloud/volume_selection.py +71 -7
  66. {luminarycloud-0.21.2.dist-info → luminarycloud-0.22.1.dist-info}/METADATA +1 -1
  67. {luminarycloud-0.21.2.dist-info → luminarycloud-0.22.1.dist-info}/RECORD +68 -58
  68. {luminarycloud-0.21.2.dist-info → luminarycloud-0.22.1.dist-info}/WHEEL +1 -1
  69. luminarycloud/pipeline_util/dictable.py +0 -27
@@ -0,0 +1,172 @@
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.physicsaiinference import physicsaiinference_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2
6
+
7
+
8
+ class PhysicsAiInferenceServiceStub(object):
9
+ """Manages physics AI inference jobs.
10
+ """
11
+
12
+ def __init__(self, channel):
13
+ """Constructor.
14
+
15
+ Args:
16
+ channel: A grpc.Channel.
17
+ """
18
+ self.CreateInferenceServiceJob = channel.unary_unary(
19
+ '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/CreateInferenceServiceJob',
20
+ request_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.CreateInferenceServiceJobRequest.SerializeToString,
21
+ response_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.FromString,
22
+ )
23
+ self.CreateInferenceServiceJobAsync = channel.unary_unary(
24
+ '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/CreateInferenceServiceJobAsync',
25
+ request_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.CreateInferenceServiceJobRequest.SerializeToString,
26
+ response_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.FromString,
27
+ )
28
+ self.GetInferenceServiceJob = channel.unary_unary(
29
+ '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/GetInferenceServiceJob',
30
+ request_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobRequest.SerializeToString,
31
+ response_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.FromString,
32
+ )
33
+ self.ListInferenceServiceJobs = channel.unary_unary(
34
+ '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/ListInferenceServiceJobs',
35
+ request_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.ListInferenceServiceJobsRequest.SerializeToString,
36
+ response_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.ListInferenceServiceJobsResponse.FromString,
37
+ )
38
+
39
+
40
+ class PhysicsAiInferenceServiceServicer(object):
41
+ """Manages physics AI inference jobs.
42
+ """
43
+
44
+ def CreateInferenceServiceJob(self, request, context):
45
+ """Creates an inference service job synchronously, waiting for completion.
46
+ """
47
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
48
+ context.set_details('Method not implemented!')
49
+ raise NotImplementedError('Method not implemented!')
50
+
51
+ def CreateInferenceServiceJobAsync(self, request, context):
52
+ """Creates an inference service job asynchronously without waiting for completion.
53
+ """
54
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
55
+ context.set_details('Method not implemented!')
56
+ raise NotImplementedError('Method not implemented!')
57
+
58
+ def GetInferenceServiceJob(self, request, context):
59
+ """Retrieves an inference service job by its ID.
60
+ """
61
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
62
+ context.set_details('Method not implemented!')
63
+ raise NotImplementedError('Method not implemented!')
64
+
65
+ def ListInferenceServiceJobs(self, request, context):
66
+ """Lists all inference service jobs for a given project.
67
+ """
68
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
69
+ context.set_details('Method not implemented!')
70
+ raise NotImplementedError('Method not implemented!')
71
+
72
+
73
+ def add_PhysicsAiInferenceServiceServicer_to_server(servicer, server):
74
+ rpc_method_handlers = {
75
+ 'CreateInferenceServiceJob': grpc.unary_unary_rpc_method_handler(
76
+ servicer.CreateInferenceServiceJob,
77
+ request_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.CreateInferenceServiceJobRequest.FromString,
78
+ response_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.SerializeToString,
79
+ ),
80
+ 'CreateInferenceServiceJobAsync': grpc.unary_unary_rpc_method_handler(
81
+ servicer.CreateInferenceServiceJobAsync,
82
+ request_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.CreateInferenceServiceJobRequest.FromString,
83
+ response_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.SerializeToString,
84
+ ),
85
+ 'GetInferenceServiceJob': grpc.unary_unary_rpc_method_handler(
86
+ servicer.GetInferenceServiceJob,
87
+ request_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobRequest.FromString,
88
+ response_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.SerializeToString,
89
+ ),
90
+ 'ListInferenceServiceJobs': grpc.unary_unary_rpc_method_handler(
91
+ servicer.ListInferenceServiceJobs,
92
+ request_deserializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.ListInferenceServiceJobsRequest.FromString,
93
+ response_serializer=proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.ListInferenceServiceJobsResponse.SerializeToString,
94
+ ),
95
+ }
96
+ generic_handler = grpc.method_handlers_generic_handler(
97
+ 'luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService', rpc_method_handlers)
98
+ server.add_generic_rpc_handlers((generic_handler,))
99
+
100
+
101
+ # This class is part of an EXPERIMENTAL API.
102
+ class PhysicsAiInferenceService(object):
103
+ """Manages physics AI inference jobs.
104
+ """
105
+
106
+ @staticmethod
107
+ def CreateInferenceServiceJob(request,
108
+ target,
109
+ options=(),
110
+ channel_credentials=None,
111
+ call_credentials=None,
112
+ insecure=False,
113
+ compression=None,
114
+ wait_for_ready=None,
115
+ timeout=None,
116
+ metadata=None):
117
+ return grpc.experimental.unary_unary(request, target, '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/CreateInferenceServiceJob',
118
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.CreateInferenceServiceJobRequest.SerializeToString,
119
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.FromString,
120
+ options, channel_credentials,
121
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
122
+
123
+ @staticmethod
124
+ def CreateInferenceServiceJobAsync(request,
125
+ target,
126
+ options=(),
127
+ channel_credentials=None,
128
+ call_credentials=None,
129
+ insecure=False,
130
+ compression=None,
131
+ wait_for_ready=None,
132
+ timeout=None,
133
+ metadata=None):
134
+ return grpc.experimental.unary_unary(request, target, '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/CreateInferenceServiceJobAsync',
135
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.CreateInferenceServiceJobRequest.SerializeToString,
136
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.FromString,
137
+ options, channel_credentials,
138
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
139
+
140
+ @staticmethod
141
+ def GetInferenceServiceJob(request,
142
+ target,
143
+ options=(),
144
+ channel_credentials=None,
145
+ call_credentials=None,
146
+ insecure=False,
147
+ compression=None,
148
+ wait_for_ready=None,
149
+ timeout=None,
150
+ metadata=None):
151
+ return grpc.experimental.unary_unary(request, target, '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/GetInferenceServiceJob',
152
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobRequest.SerializeToString,
153
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.GetInferenceServiceJobResponse.FromString,
154
+ options, channel_credentials,
155
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
156
+
157
+ @staticmethod
158
+ def ListInferenceServiceJobs(request,
159
+ target,
160
+ options=(),
161
+ channel_credentials=None,
162
+ call_credentials=None,
163
+ insecure=False,
164
+ compression=None,
165
+ wait_for_ready=None,
166
+ timeout=None,
167
+ metadata=None):
168
+ return grpc.experimental.unary_unary(request, target, '/luminary.proto.api.v0.luminarycloud.physicsaiinference.PhysicsAiInferenceService/ListInferenceServiceJobs',
169
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.ListInferenceServiceJobsRequest.SerializeToString,
170
+ proto_dot_api_dot_v0_dot_luminarycloud_dot_physicsaiinference_dot_physicsaiinference__pb2.ListInferenceServiceJobsResponse.FromString,
171
+ options, channel_credentials,
172
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -0,0 +1,66 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import abc
6
+ import grpc
7
+ import luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2
8
+
9
+ class PhysicsAiInferenceServiceStub:
10
+ """Manages physics AI inference jobs."""
11
+
12
+ def __init__(self, channel: grpc.Channel) -> None: ...
13
+ CreateInferenceServiceJob: grpc.UnaryUnaryMultiCallable[
14
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.CreateInferenceServiceJobRequest,
15
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobResponse,
16
+ ]
17
+ """Creates an inference service job synchronously, waiting for completion."""
18
+ CreateInferenceServiceJobAsync: grpc.UnaryUnaryMultiCallable[
19
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.CreateInferenceServiceJobRequest,
20
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobResponse,
21
+ ]
22
+ """Creates an inference service job asynchronously without waiting for completion."""
23
+ GetInferenceServiceJob: grpc.UnaryUnaryMultiCallable[
24
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobRequest,
25
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobResponse,
26
+ ]
27
+ """Retrieves an inference service job by its ID."""
28
+ ListInferenceServiceJobs: grpc.UnaryUnaryMultiCallable[
29
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.ListInferenceServiceJobsRequest,
30
+ luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.ListInferenceServiceJobsResponse,
31
+ ]
32
+ """Lists all inference service jobs for a given project."""
33
+
34
+ class PhysicsAiInferenceServiceServicer(metaclass=abc.ABCMeta):
35
+ """Manages physics AI inference jobs."""
36
+
37
+ @abc.abstractmethod
38
+ def CreateInferenceServiceJob(
39
+ self,
40
+ request: luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.CreateInferenceServiceJobRequest,
41
+ context: grpc.ServicerContext,
42
+ ) -> luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobResponse:
43
+ """Creates an inference service job synchronously, waiting for completion."""
44
+ @abc.abstractmethod
45
+ def CreateInferenceServiceJobAsync(
46
+ self,
47
+ request: luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.CreateInferenceServiceJobRequest,
48
+ context: grpc.ServicerContext,
49
+ ) -> luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobResponse:
50
+ """Creates an inference service job asynchronously without waiting for completion."""
51
+ @abc.abstractmethod
52
+ def GetInferenceServiceJob(
53
+ self,
54
+ request: luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobRequest,
55
+ context: grpc.ServicerContext,
56
+ ) -> luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.GetInferenceServiceJobResponse:
57
+ """Retrieves an inference service job by its ID."""
58
+ @abc.abstractmethod
59
+ def ListInferenceServiceJobs(
60
+ self,
61
+ request: luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.ListInferenceServiceJobsRequest,
62
+ context: grpc.ServicerContext,
63
+ ) -> luminarycloud._proto.api.v0.luminarycloud.physicsaiinference.physicsaiinference_pb2.ListInferenceServiceJobsResponse:
64
+ """Lists all inference service jobs for a given project."""
65
+
66
+ def add_PhysicsAiInferenceServiceServicer_to_server(servicer: PhysicsAiInferenceServiceServicer, server: grpc.Server) -> None: ...
@@ -22,9 +22,10 @@ from luminarycloud._proto.output import reference_values_pb2 as proto_dot_output
22
22
  from luminarycloud._proto.output import output_pb2 as proto_dot_output_dot_output__pb2
23
23
  from luminarycloud._proto.client import simulation_pb2 as proto_dot_client_dot_simulation__pb2
24
24
  from luminarycloud._proto.api.v0.luminarycloud.common import common_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_common_dot_common__pb2
25
+ from luminarycloud._proto.api.v0.luminarycloud.simulation_template import simulation_template_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_simulation__template_dot_simulation__template__pb2
25
26
 
26
27
 
27
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6proto/api/v0/luminarycloud/simulation/simulation.proto\x12.luminary.proto.api.v0.luminarycloud.simulation\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x15proto/base/base.proto\x1a\x1dproto/quantity/quantity.proto\x1a#proto/output/reference_values.proto\x1a\x19proto/output/output.proto\x1a\x1dproto/client/simulation.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\"\x86\x04\n\nSimulation\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\x12/\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12[\n\x06status\x18\x05 \x01(\x0e\x32K.luminary.proto.api.v0.luminarycloud.simulation.Simulation.SimulationStatus\x12\x0f\n\x07mesh_id\x18\x06 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x07 \x01(\t\x12\x12\n\nproject_id\x18\x08 \x01(\t\x12\x10\n\x08\x64oe_name\x18\t \x01(\t\"\xd2\x01\n\x10SimulationStatus\x12!\n\x1dSIMULATION_STATUS_UNSPECIFIED\x10\x00\x12\x1d\n\x19SIMULATION_STATUS_PENDING\x10\x01\x12\x1c\n\x18SIMULATION_STATUS_ACTIVE\x10\x02\x12\x1f\n\x1bSIMULATION_STATUS_COMPLETED\x10\x03\x12\x1c\n\x18SIMULATION_STATUS_FAILED\x10\x04\x12\x1f\n\x1bSIMULATION_STATUS_SUSPENDED\x10\x05\"\x8c\x02\n\x11SimulationOptions\x12\x18\n\x10\x62\x61tch_processing\x18\x01 \x01(\x08\x12[\n\x08gpu_type\x18\x08 \x01(\x0e\x32I.luminary.proto.api.v0.luminarycloud.simulation.SimulationOptions.GPUType\x12\x11\n\tgpu_count\x18\t \x01(\r\"m\n\x07GPUType\x12\x18\n\x14GPU_TYPE_UNSPECIFIED\x10\x00\x12\x11\n\rGPU_TYPE_V100\x10\x01\x12\x11\n\rGPU_TYPE_A100\x10\x02\x12\x0f\n\x0bGPU_TYPE_T4\x10\x03\x12\x11\n\rGPU_TYPE_H100\x10\x04\"\xf0\x02\n\x17\x43reateSimulationRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0f\n\x07mesh_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x1e\n\x16simulation_template_id\x18\x04 \x01(\t\x12]\n\x12simulation_options\x18\x05 \x01(\x0b\x32\x41.luminary.proto.api.v0.luminarycloud.simulation.SimulationOptions\x12\x44\n\x10simulation_param\x18\x06 \x01(\x0b\x32&.luminary.proto.client.SimulationParamB\x02\x18\x01\x12!\n\x15simulation_param_json\x18\x07 \x01(\x0c\x42\x02\x18\x01\x12\x13\n\x0b\x64\x65scription\x18\x08 \x01(\t\x12%\n\x1dnamed_variable_set_version_id\x18\t \x01(\t\"j\n\x18\x43reateSimulationResponse\x12N\n\nsimulation\x18\x01 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\"\"\n\x14GetSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\"g\n\x15GetSimulationResponse\x12N\n\nsimulation\x18\x01 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\"k\n\x17UpdateSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\x04name\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_description\"j\n\x18UpdateSimulationResponse\x12N\n\nsimulation\x18\x01 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\",\n\x16ListSimulationsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"j\n\x17ListSimulationsResponse\x12O\n\x0bsimulations\x18\x01 \x03(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\"%\n\x17\x44\x65leteSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\"&\n\x18SuspendSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\xcf\x02\n#GetSimulationGlobalResidualsRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x89\x01\n\x16residual_normalization\x18\x03 \x01(\x0e\x32i.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationGlobalResidualsRequest.ResidualNormalization\"\x89\x01\n\x15ResidualNormalization\x12&\n\"RESIDUAL_NORMALIZATION_UNSPECIFIED\x10\x00\x12#\n\x1fRESIDUAL_NORMALIZATION_RELATIVE\x10\x01\x12#\n\x1fRESIDUAL_NORMALIZATION_ABSOLUTE\x10\x02J\x04\x08\x04\x10\x05\"j\n$GetSimulationGlobalResidualsResponse\x12\x42\n\x08\x63sv_file\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"\xbe\x05\n)GetSimulationSurfaceQuantityOutputRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12<\n\rquantity_type\x18\x02 \x01(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x13\n\x0bsurface_ids\x18\x03 \x03(\t\x12Y\n\x10\x63\x61lculation_type\x18\x04 \x01(\x0e\x32?.luminary.proto.api.v0.luminarycloud.simulation.CalculationType\x12\x10\n\x08\x66rame_id\x18\x06 \x01(\t\x12L\n\x0f\x66orce_direction\x18\x11 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12J\n\rmoment_center\x18\x12 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12U\n\x0e\x61veraging_type\x18\x13 \x01(\x0e\x32=.luminary.proto.api.v0.luminarycloud.simulation.AveragingType\x12@\n\x10reference_values\x18\x14 \x01(\x0b\x32&.luminary.proto.output.ReferenceValues\x12?\n\x10vector_component\x18\x15 \x01(\x0e\x32%.luminary.proto.base.Vector3Component\x12K\n\x16moment_convention_type\x18\x16 \x01(\x0e\x32+.luminary.proto.output.MomentConventionTypeJ\x04\x08\x05\x10\x06\"p\n*GetSimulationSurfaceQuantityOutputResponse\x12\x42\n\x08\x63sv_file\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"J\n#GetSimulationSurfaceSolutionRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\ttime_step\x18\x03 \x01(\rJ\x04\x08\x02\x10\x03\"l\n$GetSimulationSurfaceSolutionResponse\x12>\n\x04\x66ile\x18\x02 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.FileJ\x04\x08\x01\x10\x02\"c\n\"GetSimulationVolumeSolutionRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\ttime_step\x18\x03 \x01(\r\x12\x18\n\x10single_precision\x18\x04 \x01(\x08J\x04\x08\x02\x10\x03\"k\n#GetSimulationVolumeSolutionResponse\x12>\n\x04\x66ile\x18\x02 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.FileJ\x04\x08\x01\x10\x02\",\n\x1eGetSimulationParametersRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\xed\x01\n\x15SimulationQueueStatus\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x15\n\rsimulation_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x31\n\rcreation_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x0cstarted_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x0e\n\x06is_lma\x18\x06 \x01(\x08\x12\x10\n\x08priority\x18\x07 \x01(\x08\x42\x0f\n\r_started_time\"l\n\x1cListQueuedSimulationsRequest\x12\x16\n\tpage_size\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\npage_token\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x0c\n\n_page_sizeB\r\n\x0b_page_token\"\xa9\x01\n\x1dListQueuedSimulationsResponse\x12Z\n\x0bsimulations\x18\x01 \x03(\x0b\x32\x45.luminary.proto.api.v0.luminarycloud.simulation.SimulationQueueStatus\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0btotal_count\x18\x03 \x01(\x05*\x96\x01\n\x0f\x43\x61lculationType\x12 \n\x1c\x43\x41LCULATION_TYPE_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x43\x41LCULATION_TYPE_AGGREGATE\x10\x01\x12 \n\x1c\x43\x41LCULATION_TYPE_PER_SURFACE\x10\x02\x12\x1f\n\x1b\x43\x41LCULATION_TYPE_DIFFERENCE\x10\x03*f\n\rAveragingType\x12\x1e\n\x1a\x41VERAGING_TYPE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41VERAGING_TYPE_MASS_FLOW\x10\x01\x12\x17\n\x13\x41VERAGING_TYPE_AREA\x10\x02\x32\x89\x14\n\x11SimulationService\x12\xd7\x01\n\x10\x43reateSimulation\x12G.luminary.proto.api.v0.luminarycloud.simulation.CreateSimulationRequest\x1aH.luminary.proto.api.v0.luminarycloud.simulation.CreateSimulationResponse\"0\x82\xd3\xe4\x93\x02*\"%/v0/projects/{project_id}/simulations:\x01*\x12\xba\x01\n\rGetSimulation\x12\x44.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationRequest\x1a\x45.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\x12\x14/v0/simulations/{id}\x12\xc6\x01\n\x10UpdateSimulation\x12G.luminary.proto.api.v0.luminarycloud.simulation.UpdateSimulationRequest\x1aH.luminary.proto.api.v0.luminarycloud.simulation.UpdateSimulationResponse\"\x1f\x82\xd3\xe4\x93\x02\x19\x32\x14/v0/simulations/{id}:\x01*\x12\xd1\x01\n\x0fListSimulations\x12\x46.luminary.proto.api.v0.luminarycloud.simulation.ListSimulationsRequest\x1aG.luminary.proto.api.v0.luminarycloud.simulation.ListSimulationsResponse\"-\x82\xd3\xe4\x93\x02\'\x12%/v0/projects/{project_id}/simulations\x12\x91\x01\n\x10\x44\x65leteSimulation\x12G.luminary.proto.api.v0.luminarycloud.simulation.DeleteSimulationRequest\x1a\x16.google.protobuf.Empty\"\x1c\x82\xd3\xe4\x93\x02\x16*\x14/v0/simulations/{id}\x12\x9b\x01\n\x11SuspendSimulation\x12H.luminary.proto.api.v0.luminarycloud.simulation.SuspendSimulationRequest\x1a\x16.google.protobuf.Empty\"$\x82\xd3\xe4\x93\x02\x1e\"\x1c/v0/simulations/{id}:suspend\x12\xf7\x01\n\x1cGetSimulationGlobalResiduals\x12S.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationGlobalResidualsRequest\x1aT.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationGlobalResidualsResponse\",\x82\xd3\xe4\x93\x02&\x12$/v0/simulations/{id}:globalresiduals\x12\x8f\x02\n\"GetSimulationSurfaceQuantityOutput\x12Y.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceQuantityOutputRequest\x1aZ.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceQuantityOutputResponse\"2\x82\xd3\xe4\x93\x02,\x12*/v0/simulations/{id}:surfacequantityoutput\x12\xf7\x01\n\x1cGetSimulationSurfaceSolution\x12S.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceSolutionRequest\x1aT.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceSolutionResponse\",\x82\xd3\xe4\x93\x02&\x12$/v0/simulations/{id}:surfacesolution\x12\xf3\x01\n\x1bGetSimulationVolumeSolution\x12R.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationVolumeSolutionRequest\x1aS.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationVolumeSolutionResponse\"+\x82\xd3\xe4\x93\x02%\x12#/v0/simulations/{id}:volumesolution\x12\xba\x01\n\x17GetSimulationParameters\x12N.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationParametersRequest\x1a&.luminary.proto.client.SimulationParam\"\'\x82\xd3\xe4\x93\x02!\x12\x1f/v0/simulations/{id}/parameters\x12\xd4\x01\n\x15ListQueuedSimulations\x12L.luminary.proto.api.v0.luminarycloud.simulation.ListQueuedSimulationsRequest\x1aM.luminary.proto.api.v0.luminarycloud.simulation.ListQueuedSimulationsResponse\"\x1e\x82\xd3\xe4\x93\x02\x18\x12\x16/v0/queued-simulationsB>Z<luminarycloud.com/core/proto/api/v0/luminarycloud/simulationb\x06proto3')
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6proto/api/v0/luminarycloud/simulation/simulation.proto\x12.luminary.proto.api.v0.luminarycloud.simulation\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x15proto/base/base.proto\x1a\x1dproto/quantity/quantity.proto\x1a#proto/output/reference_values.proto\x1a\x19proto/output/output.proto\x1a\x1dproto/client/simulation.proto\x1a.proto/api/v0/luminarycloud/common/common.proto\x1aHproto/api/v0/luminarycloud/simulation_template/simulation_template.proto\"\x86\x04\n\nSimulation\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\x12/\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12[\n\x06status\x18\x05 \x01(\x0e\x32K.luminary.proto.api.v0.luminarycloud.simulation.Simulation.SimulationStatus\x12\x0f\n\x07mesh_id\x18\x06 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x07 \x01(\t\x12\x12\n\nproject_id\x18\x08 \x01(\t\x12\x10\n\x08\x64oe_name\x18\t \x01(\t\"\xd2\x01\n\x10SimulationStatus\x12!\n\x1dSIMULATION_STATUS_UNSPECIFIED\x10\x00\x12\x1d\n\x19SIMULATION_STATUS_PENDING\x10\x01\x12\x1c\n\x18SIMULATION_STATUS_ACTIVE\x10\x02\x12\x1f\n\x1bSIMULATION_STATUS_COMPLETED\x10\x03\x12\x1c\n\x18SIMULATION_STATUS_FAILED\x10\x04\x12\x1f\n\x1bSIMULATION_STATUS_SUSPENDED\x10\x05\"\x8c\x02\n\x11SimulationOptions\x12\x18\n\x10\x62\x61tch_processing\x18\x01 \x01(\x08\x12[\n\x08gpu_type\x18\x08 \x01(\x0e\x32I.luminary.proto.api.v0.luminarycloud.simulation.SimulationOptions.GPUType\x12\x11\n\tgpu_count\x18\t \x01(\r\"m\n\x07GPUType\x12\x18\n\x14GPU_TYPE_UNSPECIFIED\x10\x00\x12\x11\n\rGPU_TYPE_V100\x10\x01\x12\x11\n\rGPU_TYPE_A100\x10\x02\x12\x0f\n\x0bGPU_TYPE_T4\x10\x03\x12\x11\n\rGPU_TYPE_H100\x10\x04\"\xda\x03\n\x17\x43reateSimulationRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0f\n\x07mesh_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x1e\n\x16simulation_template_id\x18\x04 \x01(\t\x12]\n\x12simulation_options\x18\x05 \x01(\x0b\x32\x41.luminary.proto.api.v0.luminarycloud.simulation.SimulationOptions\x12\x44\n\x10simulation_param\x18\x06 \x01(\x0b\x32&.luminary.proto.client.SimulationParamB\x02\x18\x01\x12!\n\x15simulation_param_json\x18\x07 \x01(\x0c\x42\x02\x18\x01\x12\x13\n\x0b\x64\x65scription\x18\x08 \x01(\t\x12%\n\x1dnamed_variable_set_version_id\x18\t \x01(\t\x12h\n\x13simulation_template\x18\n \x01(\x0b\x32K.luminary.proto.api.v0.luminarycloud.simulation_template.SimulationTemplate\"j\n\x18\x43reateSimulationResponse\x12N\n\nsimulation\x18\x01 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\"\"\n\x14GetSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\"g\n\x15GetSimulationResponse\x12N\n\nsimulation\x18\x01 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\"k\n\x17UpdateSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\x04name\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_description\"j\n\x18UpdateSimulationResponse\x12N\n\nsimulation\x18\x01 \x01(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\",\n\x16ListSimulationsRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\"j\n\x17ListSimulationsResponse\x12O\n\x0bsimulations\x18\x01 \x03(\x0b\x32:.luminary.proto.api.v0.luminarycloud.simulation.Simulation\"%\n\x17\x44\x65leteSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\"&\n\x18SuspendSimulationRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\xcf\x02\n#GetSimulationGlobalResidualsRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x89\x01\n\x16residual_normalization\x18\x03 \x01(\x0e\x32i.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationGlobalResidualsRequest.ResidualNormalization\"\x89\x01\n\x15ResidualNormalization\x12&\n\"RESIDUAL_NORMALIZATION_UNSPECIFIED\x10\x00\x12#\n\x1fRESIDUAL_NORMALIZATION_RELATIVE\x10\x01\x12#\n\x1fRESIDUAL_NORMALIZATION_ABSOLUTE\x10\x02J\x04\x08\x04\x10\x05\"j\n$GetSimulationGlobalResidualsResponse\x12\x42\n\x08\x63sv_file\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"\xbe\x05\n)GetSimulationSurfaceQuantityOutputRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12<\n\rquantity_type\x18\x02 \x01(\x0e\x32%.luminary.proto.quantity.QuantityType\x12\x13\n\x0bsurface_ids\x18\x03 \x03(\t\x12Y\n\x10\x63\x61lculation_type\x18\x04 \x01(\x0e\x32?.luminary.proto.api.v0.luminarycloud.simulation.CalculationType\x12\x10\n\x08\x66rame_id\x18\x06 \x01(\t\x12L\n\x0f\x66orce_direction\x18\x11 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12J\n\rmoment_center\x18\x12 \x01(\x0b\x32\x33.luminary.proto.api.v0.luminarycloud.common.Vector3\x12U\n\x0e\x61veraging_type\x18\x13 \x01(\x0e\x32=.luminary.proto.api.v0.luminarycloud.simulation.AveragingType\x12@\n\x10reference_values\x18\x14 \x01(\x0b\x32&.luminary.proto.output.ReferenceValues\x12?\n\x10vector_component\x18\x15 \x01(\x0e\x32%.luminary.proto.base.Vector3Component\x12K\n\x16moment_convention_type\x18\x16 \x01(\x0e\x32+.luminary.proto.output.MomentConventionTypeJ\x04\x08\x05\x10\x06\"p\n*GetSimulationSurfaceQuantityOutputResponse\x12\x42\n\x08\x63sv_file\x18\x01 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.File\"J\n#GetSimulationSurfaceSolutionRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\ttime_step\x18\x03 \x01(\rJ\x04\x08\x02\x10\x03\"l\n$GetSimulationSurfaceSolutionResponse\x12>\n\x04\x66ile\x18\x02 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.FileJ\x04\x08\x01\x10\x02\"c\n\"GetSimulationVolumeSolutionRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\ttime_step\x18\x03 \x01(\r\x12\x18\n\x10single_precision\x18\x04 \x01(\x08J\x04\x08\x02\x10\x03\"k\n#GetSimulationVolumeSolutionResponse\x12>\n\x04\x66ile\x18\x02 \x01(\x0b\x32\x30.luminary.proto.api.v0.luminarycloud.common.FileJ\x04\x08\x01\x10\x02\",\n\x1eGetSimulationParametersRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\xed\x01\n\x15SimulationQueueStatus\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x15\n\rsimulation_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x31\n\rcreation_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x0cstarted_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x0e\n\x06is_lma\x18\x06 \x01(\x08\x12\x10\n\x08priority\x18\x07 \x01(\x08\x42\x0f\n\r_started_time\"l\n\x1cListQueuedSimulationsRequest\x12\x16\n\tpage_size\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\npage_token\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x0c\n\n_page_sizeB\r\n\x0b_page_token\"\xa9\x01\n\x1dListQueuedSimulationsResponse\x12Z\n\x0bsimulations\x18\x01 \x03(\x0b\x32\x45.luminary.proto.api.v0.luminarycloud.simulation.SimulationQueueStatus\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0btotal_count\x18\x03 \x01(\x05\"/\n\x15GetWorkflowIDsRequest\x12\x16\n\x0esimulation_ids\x18\x01 \x03(\t\"\xa5\x01\n\x16GetWorkflowIDsResponse\x12^\n\x04\x64\x61ta\x18\x01 \x03(\x0b\x32P.luminary.proto.api.v0.luminarycloud.simulation.GetWorkflowIDsResponse.DataEntry\x1a+\n\tDataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01*\x96\x01\n\x0f\x43\x61lculationType\x12 \n\x1c\x43\x41LCULATION_TYPE_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x43\x41LCULATION_TYPE_AGGREGATE\x10\x01\x12 \n\x1c\x43\x41LCULATION_TYPE_PER_SURFACE\x10\x02\x12\x1f\n\x1b\x43\x41LCULATION_TYPE_DIFFERENCE\x10\x03*f\n\rAveragingType\x12\x1e\n\x1a\x41VERAGING_TYPE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x41VERAGING_TYPE_MASS_FLOW\x10\x01\x12\x17\n\x13\x41VERAGING_TYPE_AREA\x10\x02\x32\xd3\x15\n\x11SimulationService\x12\xd7\x01\n\x10\x43reateSimulation\x12G.luminary.proto.api.v0.luminarycloud.simulation.CreateSimulationRequest\x1aH.luminary.proto.api.v0.luminarycloud.simulation.CreateSimulationResponse\"0\x82\xd3\xe4\x93\x02*\"%/v0/projects/{project_id}/simulations:\x01*\x12\xba\x01\n\rGetSimulation\x12\x44.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationRequest\x1a\x45.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationResponse\"\x1c\x82\xd3\xe4\x93\x02\x16\x12\x14/v0/simulations/{id}\x12\xc6\x01\n\x10UpdateSimulation\x12G.luminary.proto.api.v0.luminarycloud.simulation.UpdateSimulationRequest\x1aH.luminary.proto.api.v0.luminarycloud.simulation.UpdateSimulationResponse\"\x1f\x82\xd3\xe4\x93\x02\x19\x32\x14/v0/simulations/{id}:\x01*\x12\xd1\x01\n\x0fListSimulations\x12\x46.luminary.proto.api.v0.luminarycloud.simulation.ListSimulationsRequest\x1aG.luminary.proto.api.v0.luminarycloud.simulation.ListSimulationsResponse\"-\x82\xd3\xe4\x93\x02\'\x12%/v0/projects/{project_id}/simulations\x12\x91\x01\n\x10\x44\x65leteSimulation\x12G.luminary.proto.api.v0.luminarycloud.simulation.DeleteSimulationRequest\x1a\x16.google.protobuf.Empty\"\x1c\x82\xd3\xe4\x93\x02\x16*\x14/v0/simulations/{id}\x12\x9b\x01\n\x11SuspendSimulation\x12H.luminary.proto.api.v0.luminarycloud.simulation.SuspendSimulationRequest\x1a\x16.google.protobuf.Empty\"$\x82\xd3\xe4\x93\x02\x1e\"\x1c/v0/simulations/{id}:suspend\x12\xf7\x01\n\x1cGetSimulationGlobalResiduals\x12S.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationGlobalResidualsRequest\x1aT.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationGlobalResidualsResponse\",\x82\xd3\xe4\x93\x02&\x12$/v0/simulations/{id}:globalresiduals\x12\x8f\x02\n\"GetSimulationSurfaceQuantityOutput\x12Y.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceQuantityOutputRequest\x1aZ.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceQuantityOutputResponse\"2\x82\xd3\xe4\x93\x02,\x12*/v0/simulations/{id}:surfacequantityoutput\x12\xf7\x01\n\x1cGetSimulationSurfaceSolution\x12S.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceSolutionRequest\x1aT.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationSurfaceSolutionResponse\",\x82\xd3\xe4\x93\x02&\x12$/v0/simulations/{id}:surfacesolution\x12\xf3\x01\n\x1bGetSimulationVolumeSolution\x12R.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationVolumeSolutionRequest\x1aS.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationVolumeSolutionResponse\"+\x82\xd3\xe4\x93\x02%\x12#/v0/simulations/{id}:volumesolution\x12\xba\x01\n\x17GetSimulationParameters\x12N.luminary.proto.api.v0.luminarycloud.simulation.GetSimulationParametersRequest\x1a&.luminary.proto.client.SimulationParam\"\'\x82\xd3\xe4\x93\x02!\x12\x1f/v0/simulations/{id}/parameters\x12\xd4\x01\n\x15ListQueuedSimulations\x12L.luminary.proto.api.v0.luminarycloud.simulation.ListQueuedSimulationsRequest\x1aM.luminary.proto.api.v0.luminarycloud.simulation.ListQueuedSimulationsResponse\"\x1e\x82\xd3\xe4\x93\x02\x18\x12\x16/v0/queued-simulations\x12\xc7\x01\n\x0eGetWorkflowIDs\x12\x45.luminary.proto.api.v0.luminarycloud.simulation.GetWorkflowIDsRequest\x1a\x46.luminary.proto.api.v0.luminarycloud.simulation.GetWorkflowIDsResponse\"&\x82\xd3\xe4\x93\x02 \x12\x1e/v0/simulations:getworkflowidsB>Z<luminarycloud.com/core/proto/api/v0/luminarycloud/simulationb\x06proto3')
28
29
 
29
30
  _CALCULATIONTYPE = DESCRIPTOR.enum_types_by_name['CalculationType']
30
31
  CalculationType = enum_type_wrapper.EnumTypeWrapper(_CALCULATIONTYPE)
@@ -63,6 +64,9 @@ _GETSIMULATIONPARAMETERSREQUEST = DESCRIPTOR.message_types_by_name['GetSimulatio
63
64
  _SIMULATIONQUEUESTATUS = DESCRIPTOR.message_types_by_name['SimulationQueueStatus']
64
65
  _LISTQUEUEDSIMULATIONSREQUEST = DESCRIPTOR.message_types_by_name['ListQueuedSimulationsRequest']
65
66
  _LISTQUEUEDSIMULATIONSRESPONSE = DESCRIPTOR.message_types_by_name['ListQueuedSimulationsResponse']
67
+ _GETWORKFLOWIDSREQUEST = DESCRIPTOR.message_types_by_name['GetWorkflowIDsRequest']
68
+ _GETWORKFLOWIDSRESPONSE = DESCRIPTOR.message_types_by_name['GetWorkflowIDsResponse']
69
+ _GETWORKFLOWIDSRESPONSE_DATAENTRY = _GETWORKFLOWIDSRESPONSE.nested_types_by_name['DataEntry']
66
70
  _SIMULATION_SIMULATIONSTATUS = _SIMULATION.enum_types_by_name['SimulationStatus']
67
71
  _SIMULATIONOPTIONS_GPUTYPE = _SIMULATIONOPTIONS.enum_types_by_name['GPUType']
68
72
  _GETSIMULATIONGLOBALRESIDUALSREQUEST_RESIDUALNORMALIZATION = _GETSIMULATIONGLOBALRESIDUALSREQUEST.enum_types_by_name['ResidualNormalization']
@@ -234,6 +238,28 @@ ListQueuedSimulationsResponse = _reflection.GeneratedProtocolMessageType('ListQu
234
238
  })
235
239
  _sym_db.RegisterMessage(ListQueuedSimulationsResponse)
236
240
 
241
+ GetWorkflowIDsRequest = _reflection.GeneratedProtocolMessageType('GetWorkflowIDsRequest', (_message.Message,), {
242
+ 'DESCRIPTOR' : _GETWORKFLOWIDSREQUEST,
243
+ '__module__' : 'proto.api.v0.luminarycloud.simulation.simulation_pb2'
244
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.simulation.GetWorkflowIDsRequest)
245
+ })
246
+ _sym_db.RegisterMessage(GetWorkflowIDsRequest)
247
+
248
+ GetWorkflowIDsResponse = _reflection.GeneratedProtocolMessageType('GetWorkflowIDsResponse', (_message.Message,), {
249
+
250
+ 'DataEntry' : _reflection.GeneratedProtocolMessageType('DataEntry', (_message.Message,), {
251
+ 'DESCRIPTOR' : _GETWORKFLOWIDSRESPONSE_DATAENTRY,
252
+ '__module__' : 'proto.api.v0.luminarycloud.simulation.simulation_pb2'
253
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.simulation.GetWorkflowIDsResponse.DataEntry)
254
+ })
255
+ ,
256
+ 'DESCRIPTOR' : _GETWORKFLOWIDSRESPONSE,
257
+ '__module__' : 'proto.api.v0.luminarycloud.simulation.simulation_pb2'
258
+ # @@protoc_insertion_point(class_scope:luminary.proto.api.v0.luminarycloud.simulation.GetWorkflowIDsResponse)
259
+ })
260
+ _sym_db.RegisterMessage(GetWorkflowIDsResponse)
261
+ _sym_db.RegisterMessage(GetWorkflowIDsResponse.DataEntry)
262
+
237
263
  _SIMULATIONSERVICE = DESCRIPTOR.services_by_name['SimulationService']
238
264
  if _descriptor._USE_C_DESCRIPTORS == False:
239
265
 
@@ -243,6 +269,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
243
269
  _CREATESIMULATIONREQUEST.fields_by_name['simulation_param']._serialized_options = b'\030\001'
244
270
  _CREATESIMULATIONREQUEST.fields_by_name['simulation_param_json']._options = None
245
271
  _CREATESIMULATIONREQUEST.fields_by_name['simulation_param_json']._serialized_options = b'\030\001'
272
+ _GETWORKFLOWIDSRESPONSE_DATAENTRY._options = None
273
+ _GETWORKFLOWIDSRESPONSE_DATAENTRY._serialized_options = b'8\001'
246
274
  _SIMULATIONSERVICE.methods_by_name['CreateSimulation']._options = None
247
275
  _SIMULATIONSERVICE.methods_by_name['CreateSimulation']._serialized_options = b'\202\323\344\223\002*\"%/v0/projects/{project_id}/simulations:\001*'
248
276
  _SIMULATIONSERVICE.methods_by_name['GetSimulation']._options = None
@@ -267,64 +295,72 @@ if _descriptor._USE_C_DESCRIPTORS == False:
267
295
  _SIMULATIONSERVICE.methods_by_name['GetSimulationParameters']._serialized_options = b'\202\323\344\223\002!\022\037/v0/simulations/{id}/parameters'
268
296
  _SIMULATIONSERVICE.methods_by_name['ListQueuedSimulations']._options = None
269
297
  _SIMULATIONSERVICE.methods_by_name['ListQueuedSimulations']._serialized_options = b'\202\323\344\223\002\030\022\026/v0/queued-simulations'
270
- _CALCULATIONTYPE._serialized_start=4487
271
- _CALCULATIONTYPE._serialized_end=4637
272
- _AVERAGINGTYPE._serialized_start=4639
273
- _AVERAGINGTYPE._serialized_end=4741
274
- _SIMULATION._serialized_start=396
275
- _SIMULATION._serialized_end=914
276
- _SIMULATION_SIMULATIONSTATUS._serialized_start=704
277
- _SIMULATION_SIMULATIONSTATUS._serialized_end=914
278
- _SIMULATIONOPTIONS._serialized_start=917
279
- _SIMULATIONOPTIONS._serialized_end=1185
280
- _SIMULATIONOPTIONS_GPUTYPE._serialized_start=1076
281
- _SIMULATIONOPTIONS_GPUTYPE._serialized_end=1185
282
- _CREATESIMULATIONREQUEST._serialized_start=1188
283
- _CREATESIMULATIONREQUEST._serialized_end=1556
284
- _CREATESIMULATIONRESPONSE._serialized_start=1558
285
- _CREATESIMULATIONRESPONSE._serialized_end=1664
286
- _GETSIMULATIONREQUEST._serialized_start=1666
287
- _GETSIMULATIONREQUEST._serialized_end=1700
288
- _GETSIMULATIONRESPONSE._serialized_start=1702
289
- _GETSIMULATIONRESPONSE._serialized_end=1805
290
- _UPDATESIMULATIONREQUEST._serialized_start=1807
291
- _UPDATESIMULATIONREQUEST._serialized_end=1914
292
- _UPDATESIMULATIONRESPONSE._serialized_start=1916
293
- _UPDATESIMULATIONRESPONSE._serialized_end=2022
294
- _LISTSIMULATIONSREQUEST._serialized_start=2024
295
- _LISTSIMULATIONSREQUEST._serialized_end=2068
296
- _LISTSIMULATIONSRESPONSE._serialized_start=2070
297
- _LISTSIMULATIONSRESPONSE._serialized_end=2176
298
- _DELETESIMULATIONREQUEST._serialized_start=2178
299
- _DELETESIMULATIONREQUEST._serialized_end=2215
300
- _SUSPENDSIMULATIONREQUEST._serialized_start=2217
301
- _SUSPENDSIMULATIONREQUEST._serialized_end=2255
302
- _GETSIMULATIONGLOBALRESIDUALSREQUEST._serialized_start=2258
303
- _GETSIMULATIONGLOBALRESIDUALSREQUEST._serialized_end=2593
304
- _GETSIMULATIONGLOBALRESIDUALSREQUEST_RESIDUALNORMALIZATION._serialized_start=2450
305
- _GETSIMULATIONGLOBALRESIDUALSREQUEST_RESIDUALNORMALIZATION._serialized_end=2587
306
- _GETSIMULATIONGLOBALRESIDUALSRESPONSE._serialized_start=2595
307
- _GETSIMULATIONGLOBALRESIDUALSRESPONSE._serialized_end=2701
308
- _GETSIMULATIONSURFACEQUANTITYOUTPUTREQUEST._serialized_start=2704
309
- _GETSIMULATIONSURFACEQUANTITYOUTPUTREQUEST._serialized_end=3406
310
- _GETSIMULATIONSURFACEQUANTITYOUTPUTRESPONSE._serialized_start=3408
311
- _GETSIMULATIONSURFACEQUANTITYOUTPUTRESPONSE._serialized_end=3520
312
- _GETSIMULATIONSURFACESOLUTIONREQUEST._serialized_start=3522
313
- _GETSIMULATIONSURFACESOLUTIONREQUEST._serialized_end=3596
314
- _GETSIMULATIONSURFACESOLUTIONRESPONSE._serialized_start=3598
315
- _GETSIMULATIONSURFACESOLUTIONRESPONSE._serialized_end=3706
316
- _GETSIMULATIONVOLUMESOLUTIONREQUEST._serialized_start=3708
317
- _GETSIMULATIONVOLUMESOLUTIONREQUEST._serialized_end=3807
318
- _GETSIMULATIONVOLUMESOLUTIONRESPONSE._serialized_start=3809
319
- _GETSIMULATIONVOLUMESOLUTIONRESPONSE._serialized_end=3916
320
- _GETSIMULATIONPARAMETERSREQUEST._serialized_start=3918
321
- _GETSIMULATIONPARAMETERSREQUEST._serialized_end=3962
322
- _SIMULATIONQUEUESTATUS._serialized_start=3965
323
- _SIMULATIONQUEUESTATUS._serialized_end=4202
324
- _LISTQUEUEDSIMULATIONSREQUEST._serialized_start=4204
325
- _LISTQUEUEDSIMULATIONSREQUEST._serialized_end=4312
326
- _LISTQUEUEDSIMULATIONSRESPONSE._serialized_start=4315
327
- _LISTQUEUEDSIMULATIONSRESPONSE._serialized_end=4484
328
- _SIMULATIONSERVICE._serialized_start=4744
329
- _SIMULATIONSERVICE._serialized_end=7313
298
+ _SIMULATIONSERVICE.methods_by_name['GetWorkflowIDs']._options = None
299
+ _SIMULATIONSERVICE.methods_by_name['GetWorkflowIDs']._serialized_options = b'\202\323\344\223\002 \022\036/v0/simulations:getworkflowids'
300
+ _CALCULATIONTYPE._serialized_start=4884
301
+ _CALCULATIONTYPE._serialized_end=5034
302
+ _AVERAGINGTYPE._serialized_start=5036
303
+ _AVERAGINGTYPE._serialized_end=5138
304
+ _SIMULATION._serialized_start=470
305
+ _SIMULATION._serialized_end=988
306
+ _SIMULATION_SIMULATIONSTATUS._serialized_start=778
307
+ _SIMULATION_SIMULATIONSTATUS._serialized_end=988
308
+ _SIMULATIONOPTIONS._serialized_start=991
309
+ _SIMULATIONOPTIONS._serialized_end=1259
310
+ _SIMULATIONOPTIONS_GPUTYPE._serialized_start=1150
311
+ _SIMULATIONOPTIONS_GPUTYPE._serialized_end=1259
312
+ _CREATESIMULATIONREQUEST._serialized_start=1262
313
+ _CREATESIMULATIONREQUEST._serialized_end=1736
314
+ _CREATESIMULATIONRESPONSE._serialized_start=1738
315
+ _CREATESIMULATIONRESPONSE._serialized_end=1844
316
+ _GETSIMULATIONREQUEST._serialized_start=1846
317
+ _GETSIMULATIONREQUEST._serialized_end=1880
318
+ _GETSIMULATIONRESPONSE._serialized_start=1882
319
+ _GETSIMULATIONRESPONSE._serialized_end=1985
320
+ _UPDATESIMULATIONREQUEST._serialized_start=1987
321
+ _UPDATESIMULATIONREQUEST._serialized_end=2094
322
+ _UPDATESIMULATIONRESPONSE._serialized_start=2096
323
+ _UPDATESIMULATIONRESPONSE._serialized_end=2202
324
+ _LISTSIMULATIONSREQUEST._serialized_start=2204
325
+ _LISTSIMULATIONSREQUEST._serialized_end=2248
326
+ _LISTSIMULATIONSRESPONSE._serialized_start=2250
327
+ _LISTSIMULATIONSRESPONSE._serialized_end=2356
328
+ _DELETESIMULATIONREQUEST._serialized_start=2358
329
+ _DELETESIMULATIONREQUEST._serialized_end=2395
330
+ _SUSPENDSIMULATIONREQUEST._serialized_start=2397
331
+ _SUSPENDSIMULATIONREQUEST._serialized_end=2435
332
+ _GETSIMULATIONGLOBALRESIDUALSREQUEST._serialized_start=2438
333
+ _GETSIMULATIONGLOBALRESIDUALSREQUEST._serialized_end=2773
334
+ _GETSIMULATIONGLOBALRESIDUALSREQUEST_RESIDUALNORMALIZATION._serialized_start=2630
335
+ _GETSIMULATIONGLOBALRESIDUALSREQUEST_RESIDUALNORMALIZATION._serialized_end=2767
336
+ _GETSIMULATIONGLOBALRESIDUALSRESPONSE._serialized_start=2775
337
+ _GETSIMULATIONGLOBALRESIDUALSRESPONSE._serialized_end=2881
338
+ _GETSIMULATIONSURFACEQUANTITYOUTPUTREQUEST._serialized_start=2884
339
+ _GETSIMULATIONSURFACEQUANTITYOUTPUTREQUEST._serialized_end=3586
340
+ _GETSIMULATIONSURFACEQUANTITYOUTPUTRESPONSE._serialized_start=3588
341
+ _GETSIMULATIONSURFACEQUANTITYOUTPUTRESPONSE._serialized_end=3700
342
+ _GETSIMULATIONSURFACESOLUTIONREQUEST._serialized_start=3702
343
+ _GETSIMULATIONSURFACESOLUTIONREQUEST._serialized_end=3776
344
+ _GETSIMULATIONSURFACESOLUTIONRESPONSE._serialized_start=3778
345
+ _GETSIMULATIONSURFACESOLUTIONRESPONSE._serialized_end=3886
346
+ _GETSIMULATIONVOLUMESOLUTIONREQUEST._serialized_start=3888
347
+ _GETSIMULATIONVOLUMESOLUTIONREQUEST._serialized_end=3987
348
+ _GETSIMULATIONVOLUMESOLUTIONRESPONSE._serialized_start=3989
349
+ _GETSIMULATIONVOLUMESOLUTIONRESPONSE._serialized_end=4096
350
+ _GETSIMULATIONPARAMETERSREQUEST._serialized_start=4098
351
+ _GETSIMULATIONPARAMETERSREQUEST._serialized_end=4142
352
+ _SIMULATIONQUEUESTATUS._serialized_start=4145
353
+ _SIMULATIONQUEUESTATUS._serialized_end=4382
354
+ _LISTQUEUEDSIMULATIONSREQUEST._serialized_start=4384
355
+ _LISTQUEUEDSIMULATIONSREQUEST._serialized_end=4492
356
+ _LISTQUEUEDSIMULATIONSRESPONSE._serialized_start=4495
357
+ _LISTQUEUEDSIMULATIONSRESPONSE._serialized_end=4664
358
+ _GETWORKFLOWIDSREQUEST._serialized_start=4666
359
+ _GETWORKFLOWIDSREQUEST._serialized_end=4713
360
+ _GETWORKFLOWIDSRESPONSE._serialized_start=4716
361
+ _GETWORKFLOWIDSRESPONSE._serialized_end=4881
362
+ _GETWORKFLOWIDSRESPONSE_DATAENTRY._serialized_start=4838
363
+ _GETWORKFLOWIDSRESPONSE_DATAENTRY._serialized_end=4881
364
+ _SIMULATIONSERVICE._serialized_start=5141
365
+ _SIMULATIONSERVICE._serialized_end=7912
330
366
  # @@protoc_insertion_point(module_scope)
@@ -10,6 +10,7 @@ import google.protobuf.internal.enum_type_wrapper
10
10
  import google.protobuf.message
11
11
  import google.protobuf.timestamp_pb2
12
12
  import luminarycloud._proto.api.v0.luminarycloud.common.common_pb2
13
+ import luminarycloud._proto.api.v0.luminarycloud.simulation_template.simulation_template_pb2
13
14
  import luminarycloud._proto.base.base_pb2
14
15
  import luminarycloud._proto.client.simulation_pb2
15
16
  import luminarycloud._proto.output.output_pb2
@@ -230,6 +231,7 @@ class CreateSimulationRequest(google.protobuf.message.Message):
230
231
  SIMULATION_PARAM_JSON_FIELD_NUMBER: builtins.int
231
232
  DESCRIPTION_FIELD_NUMBER: builtins.int
232
233
  NAMED_VARIABLE_SET_VERSION_ID_FIELD_NUMBER: builtins.int
234
+ SIMULATION_TEMPLATE_FIELD_NUMBER: builtins.int
233
235
  project_id: builtins.str
234
236
  """Required. Project ID associated with this simulation."""
235
237
  mesh_id: builtins.str
@@ -239,7 +241,9 @@ class CreateSimulationRequest(google.protobuf.message.Message):
239
241
  Maximum allowed length is 256 characters.
240
242
  """
241
243
  simulation_template_id: builtins.str
242
- """Required. The simulation template ID containing the FVM parameters."""
244
+ """Optional. The simulation template ID containing the FVM parameters. Must be provided unless
245
+ simulation_template is provided.
246
+ """
243
247
  @property
244
248
  def simulation_options(self) -> global___SimulationOptions:
245
249
  """Optional. Various settings to configure how a simulation is run."""
@@ -261,6 +265,13 @@ class CreateSimulationRequest(google.protobuf.message.Message):
261
265
  """Named Variable Set Version ID.
262
266
  Used to resolve Named variables in the simulation template.
263
267
  """
268
+ @property
269
+ def simulation_template(self) -> luminarycloud._proto.api.v0.luminarycloud.simulation_template.simulation_template_pb2.SimulationTemplate:
270
+ """Optional. The simulation template to use for the simulation. This is an alternative to passing the
271
+ simulation_template_id, but it is not recommended since the SimulationTemplate schema evolves
272
+ over time, and we do not guarantee backwards compatibility. Passing the simulation_template_id
273
+ is the recommended way to create a simulation.
274
+ """
264
275
  def __init__(
265
276
  self,
266
277
  *,
@@ -273,9 +284,10 @@ class CreateSimulationRequest(google.protobuf.message.Message):
273
284
  simulation_param_json: builtins.bytes = ...,
274
285
  description: builtins.str = ...,
275
286
  named_variable_set_version_id: builtins.str = ...,
287
+ simulation_template: luminarycloud._proto.api.v0.luminarycloud.simulation_template.simulation_template_pb2.SimulationTemplate | None = ...,
276
288
  ) -> None: ...
277
- def HasField(self, field_name: typing_extensions.Literal["simulation_options", b"simulation_options", "simulation_param", b"simulation_param"]) -> builtins.bool: ...
278
- def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "mesh_id", b"mesh_id", "name", b"name", "named_variable_set_version_id", b"named_variable_set_version_id", "project_id", b"project_id", "simulation_options", b"simulation_options", "simulation_param", b"simulation_param", "simulation_param_json", b"simulation_param_json", "simulation_template_id", b"simulation_template_id"]) -> None: ...
289
+ def HasField(self, field_name: typing_extensions.Literal["simulation_options", b"simulation_options", "simulation_param", b"simulation_param", "simulation_template", b"simulation_template"]) -> builtins.bool: ...
290
+ def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "mesh_id", b"mesh_id", "name", b"name", "named_variable_set_version_id", b"named_variable_set_version_id", "project_id", b"project_id", "simulation_options", b"simulation_options", "simulation_param", b"simulation_param", "simulation_param_json", b"simulation_param_json", "simulation_template", b"simulation_template", "simulation_template_id", b"simulation_template_id"]) -> None: ...
279
291
 
280
292
  global___CreateSimulationRequest = CreateSimulationRequest
281
293
 
@@ -785,3 +797,56 @@ class ListQueuedSimulationsResponse(google.protobuf.message.Message):
785
797
  def ClearField(self, field_name: typing_extensions.Literal["next_page_token", b"next_page_token", "simulations", b"simulations", "total_count", b"total_count"]) -> None: ...
786
798
 
787
799
  global___ListQueuedSimulationsResponse = ListQueuedSimulationsResponse
800
+
801
+ class GetWorkflowIDsRequest(google.protobuf.message.Message):
802
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
803
+
804
+ SIMULATION_IDS_FIELD_NUMBER: builtins.int
805
+ @property
806
+ def simulation_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
807
+ """Required. The simulation IDs to look up the workflow IDs for."""
808
+ def __init__(
809
+ self,
810
+ *,
811
+ simulation_ids: collections.abc.Iterable[builtins.str] | None = ...,
812
+ ) -> None: ...
813
+ def ClearField(self, field_name: typing_extensions.Literal["simulation_ids", b"simulation_ids"]) -> None: ...
814
+
815
+ global___GetWorkflowIDsRequest = GetWorkflowIDsRequest
816
+
817
+ class GetWorkflowIDsResponse(google.protobuf.message.Message):
818
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
819
+
820
+ class DataEntry(google.protobuf.message.Message):
821
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
822
+
823
+ KEY_FIELD_NUMBER: builtins.int
824
+ VALUE_FIELD_NUMBER: builtins.int
825
+ key: builtins.str
826
+ value: builtins.str
827
+ def __init__(
828
+ self,
829
+ *,
830
+ key: builtins.str = ...,
831
+ value: builtins.str = ...,
832
+ ) -> None: ...
833
+ def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...
834
+
835
+ DATA_FIELD_NUMBER: builtins.int
836
+ @property
837
+ def data(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
838
+ """The mapping from simulation ID to workflow ID.
839
+ Only simulation IDs that were successfully resolved to workflow IDs will be present as keys.
840
+ Simulation IDs are omitted if:
841
+ - The simulation ID does not exist
842
+ - The user lacks access to the simulation's project
843
+ - The simulation has no associated workflow ID
844
+ """
845
+ def __init__(
846
+ self,
847
+ *,
848
+ data: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
849
+ ) -> None: ...
850
+ def ClearField(self, field_name: typing_extensions.Literal["data", b"data"]) -> None: ...
851
+
852
+ global___GetWorkflowIDsResponse = GetWorkflowIDsResponse