tidy3d.components.microwave.data.monitor_data.MicrowaveModeDataBase#

class MicrowaveModeDataBase[source]#

Bases: MicrowaveBaseModel

Base class for microwave mode data that extends standard mode data with RF/microwave features.

Parameters:
  • attrs (dict = {}) – Dictionary storing arbitrary metadata for a Tidy3D object. This dictionary can be freely used by the user for storing data without affecting the operation of Tidy3D as it is not used internally. Note that, unlike regular Tidy3D fields, attrs are mutable. For example, the following is allowed for setting an attr obj.attrs['foo'] = bar. Also note that Tidy3D will raise a TypeError if attrs contain objects that can not be serialized. One can check if attrs are serializable by calling obj.json().

  • transmission_line_data (Optional[TransmissionLineDataset] = None) – Additional data relevant to transmission lines in RF and microwave applications, like characteristic impedance. This field is populated when a MicrowaveModeSpec has been used to set up the monitor or mode solver.

  • classes (This base class adds microwave-specific functionality to mode data)

  • including

  • data (- Transmission line) – current coefficients for transmission line analysis

  • modes_info (- Enhanced)

  • handling (- Group index)

  • reordering (- Mode)

Notes

This is a mixin class that must be combined with mode data classes (ModeData or ModeSolverData). It uses super() to call methods on the mixed-in class, extending their functionality rather than replacing it.

The mixin should be placed first in the inheritance list to ensure its method overrides are used.

Attributes

alpha

The attenuation constant (real part of \(-\gamma\)).

beta

The phase constant (imaginary part of \(\gamma\)).

distance_40dB

Distance at which the field amplitude drops by 40 dB.

effective_relative_permittivity

Effective relative permittivity (real part of n_eff²).

free_space_wavenumber

The free space wavenumber (k_0) in rad/m.

gamma

The propagation constant with SI units.

group_velocity

Group velocity (v_g = c/n_group) in m/s.

mode_classifications

List of mode classifications (TEM, quasi-TEM, TE, TM, or Hybrid) for each mode.

modes_info

Dataset collecting various properties of the stored modes.

phase_velocity

Phase velocity (v_p = c/n_eff) in m/s.

wave_impedance

Compute the wave impedance associated with the waveguide mode.

attrs

Methods

Inherited Common Usage

transmission_line_data#
property modes_info#

Dataset collecting various properties of the stored modes.

property mode_classifications#

List of mode classifications (TEM, quasi-TEM, TE, TM, or Hybrid) for each mode.

property free_space_wavenumber#

The free space wavenumber (k_0) in rad/m.

property gamma#

The propagation constant with SI units.

In the physics convention, where time-harmonic fields evolve with \(e^{-j\omega t}\), a wave propagating in the +z direction varies as:

\[E(z) = E_0 e^{\gamma z} = E_0 e^{-\alpha z} e^{j\beta z}\]

where \(\gamma = -\alpha + j\beta\).

property alpha#

The attenuation constant (real part of \(-\gamma\)).

Causes exponential decay of the field amplitude:

\[E(z) = E_0 e^{-\alpha z} e^{j\beta z}\]

Units: Nepers/meter (Np/m).

property beta#

The phase constant (imaginary part of \(\gamma\)).

Determines the phase variation of the field:

\[E(z) = E_0 e^{-\alpha z} e^{j\beta z}\]

Units: radians/meter (rad/m).

property distance_40dB#

Distance at which the field amplitude drops by 40 dB.

For a lossy transmission line, this is the distance where the signal attenuates by 40 dB:

\[d_{40\text{dB}} = \frac{40\,\text{dB}}{20 \log_{10}(e) \cdot \alpha} = \frac{40}{8.686 \cdot \alpha}\]

where \(\alpha\) is the attenuation constant in Nepers/meter.

Units: meters.

property effective_relative_permittivity#

Effective relative permittivity (real part of n_eff²).

property phase_velocity#

Phase velocity (v_p = c/n_eff) in m/s.

property group_velocity#

Group velocity (v_g = c/n_group) in m/s.

property wave_impedance#

Compute the wave impedance associated with the waveguide mode. The wave impedance is defined as:

\[Z_{\rm wave} = \frac{\int |E_t|^2 \, {\rm d}S}{2 P}.\]

where \(E_t\) is the transverse electric field and \(P\) is the complex power flow.

__hash__()#

Hash method.