Linear Algebra

namespace linalg

Functions

Tensor det(const Tensor &a)
Tensor inv(const Tensor &a)
Tensor solve(const Tensor &a, const Tensor &b)
SVDResult svd(const Tensor &a, bool full_matrices = true)
QRResult qr(const Tensor &a)
Tensor cholesky(const Tensor &a, bool upper = false)
LUResult lu(const Tensor &a)
EigResult eig(const Tensor &a)
EigResult eigh(const Tensor &a)
Tensor lstsq(const Tensor &a, const Tensor &b, double rcond = -1.0)
Tensor pinv(const Tensor &a, double rcond = 1e-15)
Tensor norm(const Tensor &a, const std::string &ord = "fro")
Tensor norm(const Tensor &a, int ord)
Tensor norm(const Tensor &a, double ord)
Tensor matrix_rank(const Tensor &a, double tol = -1.0)
Tensor cond(const Tensor &a, int p = 2)
Tensor trace(const Tensor &a, int offset = 0)
Tensor matrix_power(const Tensor &a, int n)
std::pair<Tensor, Tensor> multi_dot(const std::vector<Tensor> &tensors)
Tensor dot(const Tensor &a, const Tensor &b)
Tensor vdot(const Tensor &a, const Tensor &b)
Tensor inner(const Tensor &a, const Tensor &b)
Tensor outer(const Tensor &a, const Tensor &b)
Tensor matvec(const Tensor &x1, const Tensor &x2)
Tensor vecmat(const Tensor &x1, const Tensor &x2)
Tensor vecdot(const Tensor &x1, const Tensor &x2, int axis = -1)
Tensor tensordot(const Tensor &a, const Tensor &b, int axes = 2)
Tensor tensordot(const Tensor &a, const Tensor &b, const std::pair<std::vector<int>, std::vector<int>> &axes)
Tensor kron(const Tensor &a, const Tensor &b)
Tensor cross(const Tensor &x1, const Tensor &x2, int axis = -1)
Tensor svdvals(const Tensor &x)
Tensor eigvals(const Tensor &a)
Tensor eigvalsh(const Tensor &a)
std::pair<Tensor, Tensor> slogdet(const Tensor &a)
bool has_lapack()
const char *lapack_backend_name()
struct SVDResult
#include <linalg.hpp>

Public Members

Tensor U
Tensor S
Tensor Vh
struct QRResult
#include <linalg.hpp>

Public Members

Tensor Q
Tensor R
struct LUResult
#include <linalg.hpp>

Public Members

Tensor L
Tensor U
Tensor P
Tensor piv
struct EigResult
#include <linalg.hpp>

Public Members

Tensor eigenvalues
Tensor eigenvectors