AutoCrossKernel

class pmrf.covariance_kernels.AutoCrossKernel(auto: AbstractCovarianceKernel, cross: AbstractCovarianceKernel, num_outputs: int)

Bases: AbstractCovarianceKernel

Kernel that routes between a auto-correlation and cross-correlation kernels.

Constructs a block matrix where diagonal elements evaluate the auto kernel and off-diagonal elements evaluate the cross kernel.

This can be used to model reflection (auto) and transmission (cross) discrepancy separately. In this case, set num_outputs to the number of ports.

Parameters:
__call__(x1, x2, key=None)

Evaluate the kernel between two points.

Parameters:
  • x1 (jnp.ndarray) – First input point.

  • x2 (jnp.ndarray) – Second input point.

  • key (jax.random.PRNGKey, optional) – Random key for stochastic kernels.

Returns:

Kernel covariance scalar.

Return type:

jnp.ndarray

auto: AbstractCovarianceKernel
cross: AbstractCovarianceKernel
num_outputs: int