Skip to content

jsl/si/TransmissionLine

Package name: jsl/si/TransmissionLine

Transmission Line Interface

The TransmissionLine interface is intended to provide a defined set of methods for constructing the parameters needed for a particular type of transmission line. Transmission lines in the context of a board may be single-ended (think microstrip or stripline) or differential (ie, edge-coupled microstrip lines, or edge-coupled CPWG).

Summary

Data Types

TransmissionLine

Transmission Line Interface

Constructors

Function Description
TransmissionLine Constructor for defstruct TransmissionLine

Multis

Function Description
solve-Z Solve for the Transmission Line that provides a specific Characteristic Impedance.
insertion-loss-rate Computer the insertion loss rate for this structure in db/mm
Z0 Solve for the characteristic impedance for this structure in ohms.
effective-eps-r Solve for the effective relative permittivity for this structure.
phase-velocity Compute the Phase Velocity for this Structure in mm/s

TransmissionStructure

Definitions

TransmissionLine

Transmission Line Interface

public defstruct TransmissionLine :
    structure: TransmissionStructure

  • structure: TransmissionStructure - Sets where this transmission line applies to single-ended or differential pairs.

This type is intended to be inherited and overridden to provide the specific constraints for a particular structure.

TODO - Current implementation does not construct a Toleranced output This is because our Toleranced implementation does not yet include all of the necessary functions required, such as pow, sqrt, exp, log, etc in Toleranced argument form.

Constructors

TransmissionLine

Constructor for defstruct TransmissionLine

public defn TransmissionLine (structure:TransmissionStructure)

Multis

solve-Z

Solve for the Transmission Line that provides a specific Characteristic Impedance.

public defmulti solve-Z (t:TransmissionLine, Z:Double -- freq:Double = ?) -> TransmissionLine

  • t: TransmissionLine - Transmission Line Type to solve for
  • Z: Double - Target characteristic impedance for the structure.
  • freq: Double - Optional frequency to solve for - this includes the dispersion relationships.
  • Returns TransmissionLine

The goal of this function is to solve for the physical features of this transmission line that provide an impedance close to the passed Z impedance.

Some functions may have closed form impedance equations, others may need to use a solve.

Each function must document what features are expected to be valid in the passed t object and which will be override with new values.

insertion-loss-rate

Computer the insertion loss rate for this structure in db/mm

public defmulti insertion-loss-rate (t:TransmissionLine -- freq:Double = ?) -> Double

  • t: TransmissionLine - Transmission Line Structure
  • freq: Double - Optional Frequency to compute dispersion relationships. If not given, then the DC parameter is assumed. Default value is None()
  • Returns Double

Z0

Solve for the characteristic impedance for this structure in ohms.

public defmulti Z0 (t:TransmissionLine -- freq:Double = ?) -> Double

  • t: TransmissionLine - Transmission Line Structure
  • freq: Double - Optional Frequency to compute dispersion relationships. If not given, then the DC parameter is assumed. Default value is None()
  • Returns Double

effective-eps-r

Solve for the effective relative permittivity for this structure.

public defmulti effective-eps-r (t:TransmissionLine -- freq:Double = ?) -> Double

  • t: TransmissionLine - Transmission Line Structure
  • freq: Double - Optional Frequency to compute dispersion relationships. If not given, then the DC parameter is assumed. Default value is None()
  • Returns Double

This is a unitless quantity.

References
  • https://en.wikipedia.org/wiki/Relative_permittivity

phase-velocity

Compute the Phase Velocity for this Structure in mm/s

public defmulti phase-velocity (t:TransmissionLine -- freq:Double = ?) -> Double

  • t: TransmissionLine - Transmission Line Structure
  • freq: Double - Optional Frequency to compute dispersion relationships. If not given, then the DC parameter is assumed. Default value is None()
  • Returns Double

TransmissionStructure

public defenum TransmissionStructure <: Equalable & Hashable

  • Single-Ended

  • Differential

Related Packages

Forwarded by package: jsl/si