Skip to content

Commit 912464d

Browse files
Add tasks to webapi
1 parent faf0199 commit 912464d

File tree

8 files changed

+509
-4
lines changed

8 files changed

+509
-4
lines changed

Untitled.ipynb

Lines changed: 474 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/notebooks

Submodule notebooks updated 164 files

test_task.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import tidy3d as td
2+
import tidy3d.web as web
3+
4+
task = web.load("he-172a2b2e-f576-4a3e-a90b-06a64194ed51")
5+
print(task)

tidy3d/plugins/smatrix/__init__.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@
44

55
import warnings
66

7-
from .component_modelers.modal import AbstractComponentModeler, ComponentModeler, ModalPortDataArray
7+
from tidy3d.plugins.smatrix.data.data import ComponentModelerData, TerminalComponentModelerData
8+
from .component_modelers.modal import AbstractComponentModeler, ComponentModeler
89
from .component_modelers.terminal import TerminalComponentModeler
910
from .data.data_array import PortDataArray, TerminalPortDataArray
11+
from tidy3d.plugins.smatrix.data.data import TerminalComponentModelerData, ComponentModelerData
1012
from .ports.coaxial_lumped import CoaxialLumpedPort
11-
from .ports.modal import Port
13+
from .ports.modal import ModalPortDataArray, Port
1214
from .ports.rectangular_lumped import LumpedPort
1315
from .ports.wave import WavePort
1416

@@ -24,11 +26,13 @@
2426
"AbstractComponentModeler",
2527
"CoaxialLumpedPort",
2628
"ComponentModeler",
29+
"ComponentModelerData"
2730
"LumpedPort",
2831
"ModalPortDataArray",
2932
"Port",
3033
"PortDataArray",
3134
"TerminalComponentModeler",
35+
"TerminalComponentModelerData"
3236
"TerminalPortDataArray",
3337
"WavePort",
3438
]

tidy3d/plugins/smatrix/data/data.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,9 @@ class MicrowaveSMatrixData(Tidy3dBaseModel):
4646
"by terminal ports, representing the scattering parameters between them.",
4747
)
4848

49+
class ComponentModelerData(Tidy3dBaseModel):
50+
pass
51+
4952

5053
class TerminalComponentModelerData(Tidy3dBaseModel):
5154
"""

tidy3d/web/api/tidy3d_stub.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
from tidy3d.components.tcad.simulation.heat import HeatSimulation
2727
from tidy3d.components.tcad.simulation.heat_charge import HeatChargeSimulation
2828
from tidy3d.plugins.mode.mode_solver import ModeSolver
29+
from tidy3d.plugins.smatrix import ComponentModeler, ComponentModelerData, TerminalComponentModeler, TerminalComponentModelerData
2930
from tidy3d.web.core.file_util import (
3031
read_simulation_from_hdf5,
3132
read_simulation_from_hdf5_gz,
@@ -42,6 +43,8 @@
4243
ModeSolver,
4344
ModeSimulation,
4445
VolumeMesher,
46+
ComponentModeler,
47+
TerminalComponentModeler,
4548
]
4649
SimulationDataType = Union[
4750
SimulationData,
@@ -50,6 +53,8 @@
5053
EMESimulationData,
5154
ModeSolverData,
5255
ModeSimulationData,
56+
ComponentModelerData,
57+
TerminalComponentModelerData
5358
]
5459

5560

@@ -100,6 +105,10 @@ def from_file(cls, file_path: str) -> SimulationType:
100105
sim = ModeSimulation.from_file(file_path)
101106
elif type_ == "VolumeMesher":
102107
sim = VolumeMesher.from_file(file_path)
108+
elif type_ == "ComponentModeler":
109+
sim = ComponentModeler.from_file(file_path)
110+
elif type_ == "TerminalComponentModeler":
111+
sim = TerminalComponentModeler.from_file(file_path)
103112

104113
return sim
105114

@@ -162,6 +171,10 @@ def get_type(self) -> str:
162171
return TaskType.MODE.name
163172
elif isinstance(self.simulation, VolumeMesher):
164173
return TaskType.VOLUME_MESH.name
174+
elif isinstance(self.simulation, ComponentModeler):
175+
return TaskType.COMPONENT_MODELER.name
176+
elif isinstance(self.simulation, TerminalComponentModeler):
177+
return TaskType.TERMINAL_COMPONENT_MODELER.name
165178

166179
def validate_pre_upload(self, source_required) -> None:
167180
"""Perform some pre-checks on instances of component"""
@@ -216,6 +229,10 @@ def from_file(cls, file_path: str) -> SimulationDataType:
216229
sim_data = ModeSimulationData.from_file(file_path)
217230
elif type_ == "VolumeMesherData":
218231
sim_data = VolumeMesherData.from_file(file_path)
232+
elif type_ == "ComponentModelerData":
233+
sim_data = ComponentModelerData.from_file(file_path)
234+
elif type_ == "TerminalComponentModelerData":
235+
sim_data = TerminalComponentModelerData.from_file(file_path)
219236

220237
return sim_data
221238

tidy3d/web/core/types.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ class TaskType(str, Enum):
5555
EME = "EME"
5656
MODE = "MODE"
5757
VOLUME_MESH = "VOLUME_MESH"
58+
COMPONENT_MODELER = "COMPONENT_MODELER"
59+
TERMINAL_COMPONENT_MODELER = "TERMINAL_COMPONENT_MODELER"
5860

5961

6062
class PayType(str, Enum):

0 commit comments

Comments
 (0)