Skip to content

Commit b70cae3

Browse files
Agreed data with Damian
1 parent a6dd5a2 commit b70cae3

File tree

2 files changed

+34
-14
lines changed

2 files changed

+34
-14
lines changed

tidy3d/plugins/smatrix/component_modelers/terminal.py

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -290,12 +290,15 @@ def get_radiation_monitor_by_name(self, monitor_name: str) -> DirectivityMonitor
290290

291291
def run(self, path_dir: str = DEFAULT_DATA_DIR):
292292
"""Solves for the scattering matrix of the system."""
293-
from tidy3d.plugins.smatrix.data.data import SMatrixData, TerminalComponentModelerData
293+
from tidy3d.plugins.smatrix.data.data import (
294+
MicrowaveSMatrixData,
295+
TerminalComponentModelerData,
296+
)
294297

295298
_ = self.get_path_dir(path_dir)
296299
# _ = self._upload_terminal_modeler()
297300
batch_data = self._construct_smatrix()
298-
smatrix_data = SMatrixData(batch_data=batch_data)
301+
smatrix_data = MicrowaveSMatrixData(batch_data=batch_data)
299302
return TerminalComponentModelerData(simulation=self, data=(smatrix_data,))
300303

301304
##### Backwards compatibility methods #####
@@ -317,9 +320,12 @@ def _monitor_data_at_port_amplitude(
317320
monitor_data: MonitorData,
318321
a_port: Union[FreqDataArray, complex],
319322
) -> MonitorData:
320-
from tidy3d.plugins.smatrix.data.data import SMatrixData, TerminalComponentModelerData
323+
from tidy3d.plugins.smatrix.data.data import (
324+
MicrowaveSMatrixData,
325+
TerminalComponentModelerData,
326+
)
321327

322-
a = SMatrixData(a=self._construct_smatrix())
328+
a = MicrowaveSMatrixData(a=self._construct_smatrix())
323329
data = TerminalComponentModelerData(
324330
simulation=self, data=(a,)
325331
)._monitor_data_at_port_amplitude(
@@ -332,9 +338,12 @@ def get_antenna_metrics_data(
332338
port_amplitudes: Optional[dict[str, complex]] = None,
333339
monitor_name: Optional[str] = None,
334340
) -> AntennaMetricsData:
335-
from tidy3d.plugins.smatrix.data.data import SMatrixData, TerminalComponentModelerData
341+
from tidy3d.plugins.smatrix.data.data import (
342+
MicrowaveSMatrixData,
343+
TerminalComponentModelerData,
344+
)
336345

337-
a = SMatrixData(a=self._construct_smatrix())
346+
a = MicrowaveSMatrixData(a=self._construct_smatrix())
338347
data = TerminalComponentModelerData(simulation=self, data=(a,)).get_antenna_metrics_data(
339348
port_amplitudes=port_amplitudes, monitor_name=monitor_name
340349
)
@@ -356,16 +365,22 @@ def _compute_F(Z_numpy: np.array):
356365

357366
@cached_property
358367
def port_reference_impedances(self) -> PortDataArray:
359-
from tidy3d.plugins.smatrix.data.data import SMatrixData, TerminalComponentModelerData
368+
from tidy3d.plugins.smatrix.data.data import (
369+
MicrowaveSMatrixData,
370+
TerminalComponentModelerData,
371+
)
360372

361-
a = SMatrixData(a=self._construct_smatrix())
373+
a = MicrowaveSMatrixData(a=self._construct_smatrix())
362374
data = TerminalComponentModelerData(simulation=self, data=(a,)).port_reference_impedances
363375
return data
364376

365377
def _port_reference_impedances(self, batch_data) -> PortDataArray:
366-
from tidy3d.plugins.smatrix.data.data import SMatrixData, TerminalComponentModelerData
378+
from tidy3d.plugins.smatrix.data.data import (
379+
MicrowaveSMatrixData,
380+
TerminalComponentModelerData,
381+
)
367382

368-
a = SMatrixData(a=self._construct_smatrix())
383+
a = MicrowaveSMatrixData(a=self._construct_smatrix())
369384
data = TerminalComponentModelerData(simulation=self, data=(a,)).port_reference_impedances
370385
return data
371386

tidy3d/plugins/smatrix/data/data.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,13 @@
2020
from tidy3d.plugins.smatrix.data.terminal import PortDataArray, TerminalPortDataArray
2121

2222

23-
class SMatrixData(Tidy3dBaseModel):
24-
a: TerminalPortDataArray
23+
class MicrowavePortSimulationData(Tidy3dBaseModel):
24+
data: dict[str, SimulationData]
25+
26+
27+
class MicrowaveSMatrixData(Tidy3dBaseModel):
28+
port_reference_impedances: PortDataArray
29+
data: TerminalPortDataArray
2530

2631

2732
class TerminalComponentModelerData(Tidy3dBaseModel):
@@ -35,9 +40,9 @@ class TerminalComponentModelerData(Tidy3dBaseModel):
3540
description="Original :class:`TerminalComponentModeler` associated with the data.",
3641
)
3742

38-
data: tuple[SMatrixData, ...] = pd.Field(
43+
data: Union[MicrowaveSMatrixData, MicrowavePortSimulationData] = pd.Field(
3944
...,
40-
title="SMatrixData",
45+
title="MicrowaveSMatrixData",
4146
description="List of :class:`AbstractMonitorData` instances "
4247
"associated with the monitors of the original :class:`AbstractSimulation`.",
4348
)

0 commit comments

Comments
 (0)