Union[numbers.Number, Sequence[numbers.Number], numpy.ndarray], z0: Union[numbers.Number, Sequence[numbers.Number], numpy.ndarray] = 50, s_def: str = 'power') → numpy.ndarray[source]

convert impedance parameters [1] to scattering parameters [2]

For power-waves, Eq.(18) from [3]:

\[S = F (Z – G^*) (Z + G)^{-1} F^{-1}\]

where \(G = diag([Z_0])\) and \(F = diag([1/2\sqrt{|Re(Z_0)|}])\)

For pseudo-waves, Eq.(73) from [4]:

\[S = U (Z - G) (Z + G)^{-1} U^{-1}\]

where \(U = \sqrt{Re(Z_0)}/|Z_0|\)

  • z (complex array-like) – impedance parameters
  • z0 (complex array-like or number) – port impedances
  • s_def (str -> s_def : can be: 'power', 'pseudo' or 'traveling') – Scattering parameter definition : ‘power’ for power-waves definition [3], ‘pseudo’ for pseudo-waves definition [4]. ‘traveling’ corresponds to the initial implementation. Default is ‘power’.

s – scattering parameters

Return type:

complex array-like


[3]Kurokawa, Kaneyuki “Power waves and the scattering matrix”, IEEE Transactions on Microwave Theory and Techniques, vol.13, iss.2, pp. 194–202, March 1965.
[4]Marks, R. B. and Williams, D. F. “A general waveguide circuit theory”, Journal of Research of National Institute of Standard and Technology, vol.97, iss.5, pp. 533–562, 1992.