spatial_consistency_matrix_sqrt#

sionna.phy.channel.tr38901.spatial_consistency_matrix_sqrt(correlation_matrix, jitter: float | None = None, precision: Literal['single', 'double'] | None = None, device: str | None = None) torch.Tensor[source]#

Computes a square root of a spatial-consistency matrix.

The returned matrix \(\mathbf{L}\) satisfies approximately

\[\mathbf{C} = \mathbf{L}\mathbf{L}^{\mathsf{T}}\]

where \(\mathbf{C}\) is the input correlation matrix. For positive-definite matrices a lower-triangular Cholesky factor is returned. Singular positive-semidefinite matrices, such as those caused by co-located terminals, are supported both eagerly and under torch.compile without adding jitter. This keeps co-located terminals exactly tied to the same random-field value. The eager fallback uses a symmetric eigendecomposition; the compiled path uses a graph-safe PSD Cholesky recurrence. A small diagonal jitter can optionally be added before factorization.

Parameters:
  • correlation_matrix – Correlation matrix with shape [..., num_points, num_points].

  • jitter (float | None) – Optional diagonal jitter. If None, no jitter is added.

  • precision (Literal['single', 'double'] | None) – Precision used for internal calculations and outputs. If set to None, the dtype of correlation_matrix is preserved for tensor inputs, otherwise precision is used.

  • device (str | None) – Device for computation. If None, device is used.

Outputs:

L – Matrix square root with the same shape as correlation_matrix.