Skip to content

flex_rf.tidy3d.ImpedanceCalculator

Type: class Base(s): MicrowaveBaseModel

Tool for computing the characteristic impedance of a transmission line.

Create a calculator with both voltage and current path integrals defined.

v_int = AxisAlignedVoltageIntegral(
center=(0, 0, 0),
size=(0, 0, 2),
sign="+",
extrapolate_to_endpoints=True,
snap_path_to_grid=True,
)
i_int = AxisAlignedCurrentIntegral(
center=(0, 0, 0),
size=(1, 1, 0),
sign="+",
extrapolate_to_endpoints=True,
snap_contour_to_grid=True,
)
calc = ImpedanceCalculator(voltage_integral=v_int, current_integral=i_int)

You can also define only one of the integrals. At least one is required.

_ = ImpedanceCalculator(voltage_integral=v_int)
voltage_integral [VoltageIntegralType | None] = None

Definition of path integral for computing voltage.

current_integral [CurrentIntegralType | None] = None

Definition of contour integral for computing current.

check_voltage_or_current()

Raise validation error if both voltage_integral and current_integral are not provided.

compute_impedance(em_field: IntegrableMonitorDataType, return_voltage_and_current: bool = False)

Compute impedance for the supplied em_field using voltage_integral and current_integral. If only a single integral has been defined, impedance is computed using the total flux in em_field.

compute_voltage_current(em_field: IntegrableMonitorDataType)

Compute voltage and current for the supplied em_field using voltage_integral and current_integral. None is returned for the integral that is not defined.