sycan.components.rf.tline

Analytical transmission line (lossless by default, lossy via loss).

A two-port device parameterised by characteristic impedance Z0, one-way time delay td, and optional total loss loss (nepers). The small-signal ABCD matrix in the Laplace domain is

γ l = loss + s·td

[V1] [cosh(γ l) Z0 sinh(γ l)] [ V2] [I1] = [sinh(γ l) / Z0 cosh(γ l) ] [-I2]

Stamping strategy:

  • AC: write each admittance contribution straight into the MNA matrix at the four port nodes (single-ended is the special case n_in_m = n_out_m = "0").

  • DC: the inner conductor is a pure wire, so we stamp a 0 V source between n_in_p and n_out_p exactly like the W primitive. Outer conductors are assumed to share a node (usually ground); if both are ground the short is harmless, otherwise a DC solve will treat them as separately floating — that case currently isn’t modelled at DC.

Classes

TLINE(name, n_in_p, n_in_m, n_out_p, ...[, ...])

Lossless or lossy 2-port transmission line.

class sycan.components.rf.tline.TLINE(name, n_in_p, n_in_m, n_out_p, n_out_m, Z0, td, loss=<factory>, *, include_noise=None)[source]

Bases: Component

Lossless or lossy 2-port transmission line.

Set loss (total attenuation in nepers, default 0) for a lossy line. Lossless lines are noiseless; include_noise is accepted for interface uniformity.

Parameters:
  • name (str)

  • n_in_p (str)

  • n_in_m (str)

  • n_out_p (str)

  • n_out_m (str)

  • Z0 (Expr)

  • td (Expr)

  • loss (Expr)

  • include_noise (None | str | list[str] | tuple[str, ...] | frozenset[str])

name: str
n_in_p: str
n_in_m: str
n_out_p: str
n_out_m: str
Z0: Expr
td: Expr
loss: Expr
include_noise: None | str | list[str] | tuple[str, ...] | frozenset[str] = None
ports: ClassVar[tuple[str, ...]] = ('n_in_p', 'n_in_m', 'n_out_p', 'n_out_m')
SUPPORTED_NOISE: ClassVar[frozenset[str]] = frozenset({})
aux_count(mode)[source]

Number of auxiliary branch currents the component needs in mode.

Parameters:

mode (str)

Return type:

int

stamp(ctx)[source]
Parameters:

ctx (StampContext)

Return type:

None