PhysicalLine
- class pmrf.models.components.lines.empirical.PhysicalLine(length: Any, zn: Any = 50.0, ep_r: Any = 1.0, A: Any = 0.0, f_A: Any = 1.0, tand: Any = 0.0, *, name: str | None = None, metadata: Any = None)
Bases:
AbstractImmittanceLineLine defined by nominal impedance, permittivity, and loss coefficients.
Mathematical Formulation
The frequency-dependent attenuation components are computed as:
\[\alpha_c = A \cdot \sqrt{\frac{f}{f_A}} \cdot \frac{\ln(10)}{20}\]\[\alpha_d = \frac{\pi f \sqrt{\varepsilon_r}}{c} \cdot \tan\delta\]The per-unit-length parameters are
\[R = 2 z_n \alpha_c\]\[L = \frac{z_n \sqrt{\varepsilon_r}}{c}\]\[G = \frac{2 \alpha_d}{z_n}\]\[C = \frac{\sqrt{\varepsilon_r}}{z_n c}\]Example
import pmrf as prf from pmrf.models import PhysicalLine line = PhysicalLine( zn=50.0, length=1.0, ep_r=2.2, A=0.01, f_A=1.0, tand=0.001 ) freq = prf.Frequency(start=1, stop=10, npoints=101, unit='ghz') s = line.s(freq)
- Parameters:
zn (Param, default=50.0) – Nominal characteristic impedance defining the L/C ratio.
ep_r (Param, default=1.0) – Relative permittivity.
A (Param, default=0.0) – Conductor loss in dB/m/sqrt(Hz).
f_A (Param, default=1.0) – Frequency scaling reference for attenuation in Hz.
tand (Param, default=0.0) – Dielectric loss tangent.
- 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: