PhaseLine
- class pmrf.models.components.lines.PhaseLine(theta: Any = 90.0, zc: Any = 50.0, f0: float = 1000000000.0, *, name: str | None = None, z0: complex = 50 + 0j)
Bases:
TransmissionLineIdeal, lossless, and dispersionless transmission line defined by electrical length at a reference frequency. Characteristic impedance is real and constant; phase scales linearly.
Mathematical Formulation
\[Z_c(\omega) = z_c\]\[\gamma L(\omega) = j \cdot \left(\theta \cdot \frac{\pi}{180}\right) \cdot \frac{\omega}{\omega_0}\]Example
import pmrf as prf from pmrf.core import PhaseLine # Create an ideal 90-degree (quarter-wave) 50-ohm line at 1 GHz quarter_wave = PhaseLine( zc=50.0, theta=90.0, f0=1e9 ) freq = prf.Frequency(start=0.5, stop=1.5, npoints=101, unit='ghz') s = quarter_wave.s(freq)
- Variables:
zc (Parameter, default=50.0) – Characteristic impedance in Ohms.
theta (Parameter, default=90.0) – Electrical length (phase shift) in degrees at reference frequency f0.
f0 (Parameter, default=1e9) – Reference frequency in Hz for theta.
- 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]
- f0: float = 1000000000.0
- theta: Parameter = 90.0
- zc: Parameter = 50.0