skrf.media.mline.MLine

class skrf.media.mline.MLine(frequency=None, z0_port=None, z0_override=None, z0=None, w=3, h=1.6, t=None, ep_r=4.5, mu_r=1.0, model='hammerstadjensen', disp='kirschningjansen', diel='djordjevicsvensson', rho=1.68e-08, tand=0, rough=1.5e-07, f_low=1000.0, f_high=1000000000000.0, f_epr_tand=1000000000.0, compatibility_mode=None, *args, **kwargs)[source]

A microstripline transmission line defined in terms of width, thickness and height on a given relative permittivity substrate. The line has a conductor resistivity and a tangential loss factor.

This class is highly inspired from the technical documentation [1] and sources provided by the qucs project [2] .

In addition, Djordjevic [3] /Svensson [4] wideband debye dielectric model is considered to provide more realistic modelling of broadband microstrip with as causal time domain response.

A compatibility mode is provided to mimic the behaviour of QUCS or of Keysight ADS. There is known differences in the output of these simulators.

The quasi-static models of chercteristic impedance and effective permittivity give the value at zero frequency. The dispersion models compute a frequency-dependant values of these variables.

  • Quasi-static characteristic impedance and effective permittivity models:

    • Hammerstad and Jensen (default)

    • Schneider

    • Wheeler

  • Frequency dispersion of impedance and effective permittivity models:

    • Hammerstad and Jensen

    • Kirschning and Jansen (default)

    • Kobayashi

    • Schneider

    • Yamashita

    • (No dispersion)

  • Strip thickness correction model:

    • all quasi-static models add a certain amount to W to accound for non-zero thickness of the strip. Computation with zero thickness is possible.

Parameters:
  • frequency (Frequency object) – frequency band of the media

  • z0_port (number, array-like, or None) – z0_port is the port impedance for networks generated by the media. If z0_port is not None, the networks generated by the media are renormalized (or in other words embedded) from the characteristic impedance z0 of the media to z0_port. Else if z0_port is None, the networks port impedances will be the raw characteristic impedance z0 of the media. (Default is None)

  • z0_override (number, array-like, or None) – z0_override override the characteristic impedance for the media. If z0_override is not None, the networks generated by the media have their characteristic impedance z0 overrided by z0_override. (Default is None)

  • z0 (number, array-like, or None) – deprecated parameter, alias to z0_override if z0_override is None. Emmit a deprecation warning.

  • w (number, or array-like) – width of conductor, in m

  • h (number, or array-like) – height of substrate between ground plane and conductor, in m

  • t (number, or array-like or None, optional) – conductor thickness, in m. Default is None (no width correction to account strip thickness).

  • ep_r (number, or array-like) – relative permittivity of dielectric at frequency f_epr_tand, no unit

  • mu_r (number, array-like) – relative permeability mof dielectric, no unit

  • model (str) –

    microstripline quasi-static impedance and dielectric model in:

    • ’hammerstadjensen’ (default)

    • ’schneider’

    • ’wheeler’

  • disp (str) –

    microstripline impedance and dielectric frequency dispersion model in:

    • ’hammerstadjensen’

    • ’kirschningjansen’ (default)

    • ’kobayashi’

    • ’schneider’

    • ’yamashita’

    • ’none’

  • diel (str) –

    dielectric frequency dispersion model in:

    • ’djordjevicsvensson’ (default)

    • ’frequencyinvariant’

  • rho (number, or array-like, optional) – resistivity of conductor, ohm / m

  • tand (number, or array-like) – dielectric loss factor at frequency f_epr_tand

  • rough (number, or array-like) – RMS roughness of conductor in m

  • f_low (number, or array-like) – lower frequency for wideband Debye Djordjevic/Svensson dielectric model, in Hz

  • f_high (number, or array-like) – higher frequency for wideband Debye Djordjevic/Svensson dielectric model, in Hz

  • f_epr_tand (number, or array-like) – measurement frequency for ep_r and tand of dielectric, in Hz

  • compatibility_mode (str or None (default)) –

    If set to ‘qucs’, following behavious happens :

    • Characteristic impedance will be real (no imaginary part due to tand)

    • Quasi-static relative permittivity and impedance will by used for loss computation instead of frequency-dispersed values

    • Kobayashi and Yamashita models will disperse permittivity but keep quasi-static impedance values

  • *args (arguments, keyword arguments) – passed to Media’s constructor (__init__()

  • **kwargs (arguments, keyword arguments) – passed to Media’s constructor (__init__()

Note

In the case dispersion model only include effective permittivity, no dispersion is used for impedance in QUCS mode and Kirschning Jansen is used in ADS mode. QUCS mode is the default.

When the thickness of the strip is smaller than 3 skin depth, the losses model gives over-optimistic results and the media will issue a warning. At DC, the losses of the line could be smaller than its conductor resistance, which is not physical.

References

Attributes

Z0

Characteristic Impedance

Z0_f

Alias fos Characteristic Impedance for backward compatibility.

alpha

Real (attenuation) component of gamma.

beta

Imaginary (propagating) component of gamma.

gamma

Propagation constant.

npoints

Number of points of the frequency axis.

v_g

Complex group velocity (in m/s).

v_p

Complex phase velocity (in m/s).

z0

Return Characteristic Impedance z0_characteristic.

z0_characteristic

Characteristic Impedance, \(z_0\)

z0_override

Port Impedance.

z0_port

Port Impedance.

Methods

__init__

analyse_dielectric

This function calculate the frequency dependent relative permittivity of dielectric and and tangeantial loss factor.

analyse_dispersion

This function compute the frequency dependent characteristic impedance and effective permittivity accounting for microstripline frequency dispersion.

analyse_loss

The function calculates the conductor and dielectric losses of a single microstrip line using wheeler's incremental inductance rule.

analyse_quasi_static

This function calculates the quasi-static impedance of a microstrip line, the value of the effective permittivity as per filling factor and the effective width due to the finite conductor thickness for the given microstrip line and substrate properties.

attenuator

Ideal matched attenuator of a given length.

capacitor

Capacitor.

capacitor_q

Capacitor with Q factor.

copy

Copy of this Media object.

delay_load

Delayed load.

delay_open

Delayed open transmission line.

delay_short

Delayed Short.

electrical_length

Calculate the complex electrical length for a given distance.

extract_distance

Determines physical distance from a transmission or reflection Network.

get_array_of

impedance_mismatch

Two-port network for an impedance mismatch.

inductor

Inductor.

inductor_q

Inductor with Q factor.

isolator

Two-port isolator.

line

Transmission line of a given length and impedance.

load

Load of given reflection coefficient.

lossless_mismatch

Lossless, symmetric mismatch defined by its return loss.

match

Perfect matched load (\(\Gamma_0 = 0\)).

mode

Create another mode in this medium.

open

Open (\(\Gamma_0 = 1\)).

plot

random

Complex random network.

resistor

Resistor.

short

Short (\(\Gamma_0 = -1\))

shunt

Shunts a Network.

shunt_capacitor

Shunted capacitor.

shunt_delay_load

Shunted delayed load.

shunt_delay_open

Shunted delayed open.

shunt_delay_short

Shunted delayed short.

shunt_inductor

Shunted inductor.

shunt_resistor

Shunted resistor.

splitter

Ideal, lossless n-way splitter.

tee

Ideal, lossless tee.

theta_2_d

Convert electrical length to physical distance.

thru

Matched transmission line of length 0.

to_meters

Translate various units of distance into meters.

white_gaussian_polar

Complex zero-mean gaussian white-noise network.

write_csv

write this media's frequency, gamma, Z0, and z0 to a csv file.