AutoCrossNoise

class pmrf.noise_models.AutoCrossNoise(auto: Any, cross: Any, port_axes: tuple[int, int] = (0, 1))

Bases: AbstractNoiseModel

Auto and cross term noise model.

Maps underlying auto and cross noise models to a full matrix based on the specified port axes.

Can be used to assign separate noise variances to reflection and (auto) transmission (cross) coefficients.

Operates in “event space”. For example, for a standard N-port S-parameter feature, the input y_event will be of shape (nports, nports, nfreq) or (nports, nports, 2, nfreq).

Parameters:
  • auto (Param) – The “auto” term, e.g. S11, S22 etc.

  • cross (Param) – The “cross” term, e.g. S21, S43 etc.

  • port_axes (Param) – The axes defining the ports. Defaults to (0, 1).

__call__(y_event: Array)

Map model predictions to noise parameters.

Parameters:

y_event (jnp.ndarray) – The mean model prediction in event space.

Returns:

The noise parameter or a tuple of noise parameters.

Return type:

jnp.ndarray | tuple[jnp.ndarray, jnp.ndarray]

auto: AbstractVariable | Inexact[jaxlib._jax.Array, '...']

The “auto” term.

cross: AbstractVariable | Inexact[jaxlib._jax.Array, '...']

The “cross” term.

port_axes: tuple[int, int] = (0, 1)

The port axes in the array.