AbstractImmittanceLine
- class pmrf.models.components.lines.base.AbstractImmittanceLine(length: Any, *, name: str | None = None, metadata: Any = None)
Bases:
AbstractUniformLineAbstract base class for a transmission line defined by its per-unit-length series impedance and shunt admittance.
Derived classes must implement immittance to define how those behave over frequency. \(R\), \(L\), \(G\) and \(C\) remain available as derived views on
ImmittanceResult.Mathematical Formulation
The characteristic impedance (\(Z_c\)) and complex propagation constant (\(\gamma\)) are derived as:
\[Z_c = \sqrt{\frac{Z}{Y}}\]\[\gamma = \sqrt{ZY}\]where \(Z = R + j\omega L\) and \(Y = G + j\omega C\). The total complex electrical length is \(\gamma L\).
A line with no static loss has \(Z = Y = 0\) at \(\omega = 0\), where neither root is defined. Both are continued there:
\[\gamma(0) = 0, \qquad Z_c(0) = Z_c(\omega_{min})\]with \(\omega_{min}\) the lowest non-zero frequency on the axis, matching howImmittanceResultcontinues \(L\) and \(C\). A line whose \(R\) and \(G\) are both non-zero at DC keeps its genuine \(Z_c(0) = \sqrt{R/G}\); one with \(R > 0\) and \(G = 0\) has a genuinely infinite \(Z_c(0)\), and takes the same finite continuation rather than propagating an infinity into \(S\).- Parameters:
length (Param) – Physical length of the line in meters.
- abstractmethod immittance(freq: Frequency) ImmittanceResult
Calculates the frequency-dependent per-unit-length immittance.
- Parameters:
freq (Frequency) – The frequency axis.
- Returns:
The series impedance and shunt admittance vectors.
- Return type:
- 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]