tidy3d.ModeTimeMonitor#
- class ModeTimeMonitor[source]#
Bases:
TimeMonitor,PlanarMonitorMonitorthat records time-domain modal amplitudes at a waveguide cross-section.- Parameters:
center (tuple[Union[float, autograd.tracer.Box], Union[float, autograd.tracer.Box], Union[float, autograd.tracer.Box]] = (0.0, 0.0, 0.0)) – [units = um]. Center of object in x, y, and z.
size (tuple[Union[NonNegativeFloat, autograd.tracer.Box], Union[NonNegativeFloat, autograd.tracer.Box], Union[NonNegativeFloat, autograd.tracer.Box]]) – [units = um]. Size in x, y, and z directions.
name (str) – Unique name for monitor.
interval_space (tuple[Literal[1], Literal[1], Literal[1]] = (1, 1, 1)) – Number of grid step intervals between monitor recordings. If equal to 1, there will be no downsampling. If greater than 1, the step will be applied, but the first and last point of the monitor grid are always included. Not all monitors support values different from 1.
colocate (Literal[False] = False) – Hard-coded to
False:ModeTimeMonitoroverlaps Yee-native fields against per-component primal / dual mode profiles, so colocation to the primal grid is not used.use_colocated_integration (Literal[False] = False) – Hard-coded to
False: overlap weights are built from per-axis primal × dual cell widths, matching the Yee-staggered field sampling.start (NonNegativeFloat = 0.0) – [units = sec]. Time at which to start monitor recording.
stop (Optional[NonNegativeFloat] = None) – [units = sec]. Time at which to stop monitor recording. If not specified, record until end of simulation.
interval (Literal[1] = 1) – Sampling rate of the monitor: number of time steps between each measurement. Currently must be
1(downsampling of time-domain modal amplitudes is not yet supported).mode_spec (
ModeSpec= ModeSpec()) – Parameters to feed to mode solver which determine modes measured by monitor.freq_spec (Optional[PositiveFloat] = None) – Single frequency at which the mode profiles are solved for the time-domain modal decomposition. If
None, the central frequency of the first source is used (so at least one source is required).
Notes
Records a complex-valued modal amplitude time series at the monitor plane for each mode and propagation direction. The set of monitored modes is the first
mode_spec.num_modesmodes returned by the mode solver.When the simulation contains lossy media within the mode plane region, the presence of a
ModeTimeMonitorcauses the simulation cost to approximately double, because complex-valued field storage is needed to accurately project onto modes with complex effective indices.Example
>>> mode_spec = ModeSpec(num_modes=3) >>> monitor = ModeTimeMonitor( ... center=(1,2,3), ... size=(2,2,0), ... start=1e-13, ... stop=5e-13, ... mode_spec=mode_spec, ... name='mode_time')
See also
ModeMonitorFrequency-domain mode monitor using DFT overlap.
FluxTimeMonitorTime-domain total flux monitor.
Attributes
startstopinterval_spacenamesizecenterMethods
storage_size(num_cells, tmesh)Size of the final
modeAmpspayload returned to the user.- mode_spec#
- freq_spec#
- interval#
- colocate#
- use_colocated_integration#