vt::linalg::cholesky#

template<typename T>
Tensor<T, 2> vt::linalg::cholesky(Tensor<T, 2> &tensor, cusolverDnHandle_t handle = cuda::cusolver.get_handle())#

Perform Cholesky decomposition on a 2D tensor.

Template Parameters:

T – Data type of the tensor.

Parameters:
  • tensor – The tensor object to be decomposed.

  • handle – The CuSolver handle. The default is the global CuSolver handle.

Returns:

Tensor: The lower triangle of the Cholesky decomposition.

template<typename T, size_t N>
Tensor<T, N> vt::linalg::cholesky(Tensor<T, N> &tensor, cusolverDnHandle_t handle = cuda::cusolver.get_handle())#

Perform batched Cholesky decomposition on a N-D tensor.

Template Parameters:
  • T – Data type of the tensor.

  • N – Number of dimensions of the tensor.

Parameters:
  • tensor – The tensor object to be decomposed.

  • handle – The CuSolver handle. The default is the global CuSolver handle.

Returns:

Tensor: The lower triangle of the Cholesky decomposition.