Skip to main content

Module dense

Module dense 

Source
Expand description

Dense matrix decompositions and solvers.

This module provides GPU-accelerated implementations of the core dense linear algebra algorithms: LU, QR, Cholesky, SVD, eigendecomposition, matrix inverse, determinant, and least squares.

Re-exports§

pub use band::BandMatrix;
pub use band::band_cholesky;
pub use band::band_lu;
pub use band::band_solve;
pub use batched::BatchAlgorithm;
pub use batched::BatchConfig;
pub use batched::BatchedResult;
pub use batched::BatchedSolver;
pub use cholesky::cholesky;
pub use cholesky::cholesky_solve;
pub use dc_svd::DcSvdConfig;
pub use dc_svd::dc_svd;
pub use det::determinant;
pub use det::log_determinant;
pub use eig::EigJob;
pub use eig::syevd;
pub use inverse::inverse;
pub use ldlt::LdltResult;
pub use ldlt::ldlt;
pub use ldlt::ldlt_solve;
pub use lstsq::lstsq;
pub use lu::LuResult;
pub use lu::lu_factorize;
pub use lu::lu_solve;
pub use matrix_functions::MatrixExpConfig;
pub use matrix_functions::MatrixExpPlan;
pub use matrix_functions::MatrixLogConfig;
pub use matrix_functions::MatrixLogPlan;
pub use matrix_functions::MatrixSqrtConfig;
pub use matrix_functions::MatrixSqrtPlan;
pub use ode_pde::AdvectionEquation1D;
pub use ode_pde::Bdf2Solver;
pub use ode_pde::BoundaryCondition;
pub use ode_pde::EulerSolver;
pub use ode_pde::Grid1D;
pub use ode_pde::Grid2D;
pub use ode_pde::HeatEquation1D;
pub use ode_pde::ImplicitEulerSolver;
pub use ode_pde::OdeConfig;
pub use ode_pde::OdeMethod;
pub use ode_pde::OdeSolution;
pub use ode_pde::OdeSystem;
pub use ode_pde::PdeConfig;
pub use ode_pde::Poisson1D;
pub use ode_pde::Rk4Solver;
pub use ode_pde::Rk45Solver;
pub use ode_pde::StepResult;
pub use ode_pde::WaveEquation1D;
pub use ode_pde::numerical_jacobian;
pub use ode_pde::solve_tridiagonal as ode_solve_tridiagonal;
pub use qr::qr_factorize;
pub use qr::qr_generate_q;
pub use qr::qr_solve;
pub use qz::BalanceStrategy;
pub use qz::EigenvalueType;
pub use qz::QzConfig;
pub use qz::QzPlan;
pub use qz::QzResult;
pub use qz::QzStep;
pub use qz::ShiftStrategy;
pub use qz::classify_eigenvalue;
pub use qz::estimate_qz_flops;
pub use qz::plan_qz;
pub use qz::qz_host;
pub use qz::validate_qz_config;
pub use randomized_svd::RandomizedSvdConfig;
pub use randomized_svd::RandomizedSvdResult;
pub use randomized_svd::randomized_svd;
pub use svd::SvdJob;
pub use svd::SvdResult;
pub use svd::svd;
pub use tensor_decomp::CpAlsConfig;
pub use tensor_decomp::CpDecomposition;
pub use tensor_decomp::Matrix;
pub use tensor_decomp::Tensor;
pub use tensor_decomp::TtConfig;
pub use tensor_decomp::TtDecomposition;
pub use tensor_decomp::TuckerConfig;
pub use tensor_decomp::TuckerDecomposition;
pub use tensor_decomp::cp_als;
pub use tensor_decomp::hadamard_product;
pub use tensor_decomp::khatri_rao_product;
pub use tensor_decomp::mode_n_product;
pub use tensor_decomp::tt_svd;
pub use tensor_decomp::tucker_hooi;
pub use tensor_decomp::tucker_hosvd;
pub use tridiagonal::batched_tridiagonal_solve;
pub use tridiagonal::tridiagonal_solve;

Modules§

band
Band Matrix Solvers.
batched
Batched matrix factorization for many small matrices in a single kernel launch.
cholesky
Cholesky Decomposition for symmetric positive definite matrices.
dc_svd
Divide-and-Conquer SVD.
det
Determinant computation via LU factorization.
eig
Symmetric eigenvalue decomposition.
inverse
Matrix inverse via LU factorization.
ldlt
Symmetric Indefinite Factorization (LDL^T / Bunch-Kaufman).
lstsq
Least squares solver.
lu
LU Factorization with partial pivoting.
matrix_functions
Matrix functions: exponential, logarithm, and square root.
ode_pde
ODE and PDE solver kernels.
qr
QR Factorization via blocked Householder reflections.
qz
Non-symmetric generalized eigenvalue solver (QZ algorithm).
randomized_svd
Randomized low-rank SVD algorithm (Halko, Martinsson, Tropp 2011).
svd
Singular Value Decomposition (SVD).
tensor_decomp
Tensor decomposition algorithms: CP, Tucker, and Tensor-Train (TT).
tridiagonal
Tridiagonal system solver.