RLGCLine

class pmrf.models.components.lines.RLGCLine(length: Any = 1.0, *, name: str | None = None, z0: complex = 50 + 0j)

Bases: TransmissionLine, ABC

Abstract base class for a transmission line defined by its per-unit-length RLGC (Resistance, Inductance, Conductance, Capacitance) parameters.

Derived classes must implement rlgc to define how these parameters behave over frequency.

Mathematical Formulation

The characteristic impedance (\(Z_c\)) and complex propagation constant (\(\gamma\)) are derived as:

\[Z_c = \sqrt{\frac{R + j\omega L}{G + j\omega C}}\]
\[\gamma = \sqrt{(R + j\omega L)(G + j\omega C)}\]

The total complex electrical length is \(\gamma L\).

Variables:

length (Parameter, default=1.0) – Physical length of the line in meters.

abstractmethod rlgc(freq: Frequency) tuple[Array, Array, Array, Array]

Calculates the frequency-dependent RLGC parameters.

Parameters:

freq (Frequency) – The frequency axis.

Returns:

The R, L, G, and C parameter vectors.

Return type:

tuple

zc_and_gammaL(frequency: Frequency) Array

Calculates characteristic impedance (\(Z_c\)) and complex electrical length (\(\gamma L\)).

Parameters:

frequency (Frequency) – The frequency axis.

Returns:

Array of characteristic impedance (\(Z_c\)) and complex electrical length (\(\gamma L\)).

Return type:

tuple[jnp.ndarray, jnp.ndarray]

length: Parameter = 1.0