network (skrf.network)

Provides a n-port network class and associated functions.

Most of the functionality in this module is provided as methods and properties of the Network Class.

Network Class

Network([file, name, comments, f_unit]) A n-port electrical network [#]_.

Connecting Networks

connect(ntwkA, k, ntwkB, l[, num]) connect two n-port networks together.
innerconnect(ntwkA, k, l[, num]) connect ports of a single n-port network.
cascade(ntwkA, ntwkB) Cascade two 2-port Networks together
de_embed(ntwkA, ntwkB) De-embed ntwkA from ntwkB.
flip(a) invert the ports of a networks s-matrix, ‘flipping’ it over

Interpolation and Stitching

Network.resample(npoints, **kwargs) Interpolate network based on a new number of frequency points
Network.interpolate(new_frequency, **kwargs) Return an interpolated network, from a new :class:’~skrf.frequency.Frequency’.
Network.interpolate_self(new_frequency, **kwargs) Interpolates s-parameters given a new
Network.interpolate_from_f(f[, interp_kwargs]) Interpolates s-parameters from a frequency vector.
stitch(ntwkA, ntwkB, **kwargs) Stitches ntwkA and ntwkB together.

IO

skrf.io.general.read(file, *args, **kwargs) Read skrf object[s] from a pickle file
skrf.io.general.write(file, obj[, overwrite]) Write skrf object[s] to a file
Network.write([file]) Write the Network to disk using the pickle module.
Network.write_touchstone([filename, dir, ...]) write a contents of the Network to a touchstone file.
Network.read(*args, **kwargs) Read a Network from a ‘ntwk’ file

Noise

Network.add_noise_polar(mag_dev, phase_dev, ...) adds a complex zero-mean gaussian white-noise.
Network.add_noise_polar_flatband(mag_dev, ...) adds a flatband complex zero-mean gaussian white-noise signal of
Network.multiply_noise(mag_dev, phase_dev, ...) multiplys a complex bivariate gaussian white-noise signal

Supporting Functions

inv(s) Calculates ‘inverse’ s-parameter matrix, used for de-embeding
connect_s(A, k, B, l) connect two n-port networks’ s-matricies together.
innerconnect_s(A, k, l) connect two ports of a single n-port network’s s-matrix.
s2z(s[, z0]) Convert scattering parameters [#]_ to impedance parameters [#]_ ..
s2y(s[, z0]) convert scattering parameters [#]_ to admittance parameters [#]_
s2t(s) Converts scattering parameters [#]_ to scattering transfer parameters [#]_ .
z2s(z[, z0]) convert impedance parameters [#]_ to scattering parameters [#]_
z2y(z) convert impedance parameters [#]_ to admittance parameters [#]_
z2t(z) Not Implemented yet
y2s(y[, z0]) convert admittance parameters [#]_ to scattering parameters [#]_
y2z(y) convert admittance parameters [#]_ to impedance parameters [#]_
y2t(y) Not Implemented Yet
t2s(t) converts scattering transfer parameters [#]_ to scattering parameters [#]_
t2z(t) Not Implemented Yet
t2y(t) Not Implemented Yet

Misc Functions

average(list_of_networks) Calculates the average network from a list of Networks.
Network.nudge([amount]) Perturb s-parameters by small amount.