tidy3d.EMECoefficientData#
- class EMECoefficientData[source]#
Bases:
AbstractMonitorData,EMECoefficientDatasetData associated with an
EMECoefficientMonitor.- Parameters:
A (Optional[EMECoefficientDataArray] = None) – Coefficient for forward mode in this cell.
B (Optional[EMECoefficientDataArray] = None) – Coefficient for backward mode in this cell.
n_complex (Optional[EMEModeIndexDataArray] = None) – Complex-valued effective propagation indices associated with the EME modes.
flux (Optional[EMEFluxDataArray] = None) – Power flux of the EME modes.
interface_smatrices (Optional[
EMEInterfaceSMatrixDataset] = None) – S matrices associated with the interfaces between EME cells.overlaps (Optional[
EMEOverlapDataset] = None) – Overlaps between EME modes.monitor (
EMECoefficientMonitor) – EME coefficient monitor associated with this data.
Notes
Contains the forward (
A) and backward (B) mode amplitudes in each EME cell, as well as optional diagnostic quantities such as propagation indices (n_complex), power flux (flux), interface S matrices (interface_smatrices), and mode overlaps (overlaps).Example
>>> from tidy3d import EMECoefficientMonitor, EMECoefficientDataArray >>> import numpy as np >>> monitor = EMECoefficientMonitor( ... center=(0,0,0), size=(1,1,1), freqs=[2e14], num_modes=2, name="coeffs" ... ) >>> f = [2e14] >>> sweep_index = [0] >>> eme_port_index = [0, 1] >>> eme_cell_index = [0, 1] >>> mode_index_out = [0, 1] >>> mode_index_in = [0, 1] >>> coords = dict( ... f=f, sweep_index=sweep_index, eme_port_index=eme_port_index, ... eme_cell_index=eme_cell_index, ... mode_index_out=mode_index_out, mode_index_in=mode_index_in, ... ) >>> A = EMECoefficientDataArray((1+1j) * np.random.random((1, 1, 2, 2, 2, 2)), coords=coords) >>> data = EMECoefficientData(monitor=monitor, A=A, B=A)
Attributes
ABn_complexfluxinterface_smatricesoverlaps- monitor#