AbstractRLGCLine

class pmrf.models.components.lines.base.AbstractRLGCLine(length: Any, *, name: str | None = None, metadata: Any = None)

Bases: AbstractUniformLine

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\).

Parameters:

length (Param) – Physical length of the line in meters.

abstractmethod rlgc(freq: Frequency) RLGCResult

Calculates the frequency-dependent RLGC parameters.

Parameters:

freq (Frequency) – The frequency axis.

Returns:

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

Return type:

RLGCResult

zc_and_gammaL(frequency: Frequency) tuple[Array, 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: Param

Physical length of the line