# Crate lax[−][src]

Expand description

# Linear Algebra eXtension (LAX)

ndarray-free safe Rust wrapper for LAPACK FFI

## Linear equation, Inverse matrix, Condition number

As the property of $A$, several types of triangular factorization are used:

• LU-decomposition for general matrix
• $PA = LU$, where $L$ is lower matrix, $U$ is upper matrix, and $P$ is permutation matrix
• Bunch-Kaufman diagonal pivoting method for nonpositive-definite Hermitian matrix
• $A = U D U^\dagger$, where $U$ is upper matrix, $D$ is Hermitian and block diagonal with 1-by-1 and 2-by-2 diagonal blocks.
matrix typeTriangler factorization (TRF)Solve (TRS)Inverse matrix (TRI)Reciprocal condition number (CON)
General (GE)lusolveinvrcond
Symmetric (SY) / Hermitian (HE)bksolvehinvh-

## Eigenvalue Problem

Solve eigenvalue problem for a matrix $A$

$$Av_i = \lambda_i v_i$$

or generalized eigenvalue problem

$$Av_i = \lambda_i B v_i$$

matrix typeEigenvalue (EV)Generalized Eigenvalue Problem (EG)
General (GE)eig-
Symmetric (SY) / Hermitian (HE)eigheigh_generalized

## Singular Value Decomposition (SVD), Least square problem

matrix typeSingular Value Decomposition (SVD)SVD with divided-and-conquer (SDD)Least square problem (LSD)
General (GE)svdsvddcleast_squares

## Modules

Memory layout of matrices

## Structs

Represents the LU factorization of a tridiagonal matrix A as A = P*L*U.

Result of LeastSquares

Result of SVD

Represents a tridiagonal matrix as 3 one-dimensional vectors.

## Enums

Upper/Lower specification for seveal usages

Specifies how many of the columns of U and rows of Vᵀ are computed and returned.

## Traits

Wraps *geev for general matrices

Trait for primitive types which implements LAPACK subroutines

Wraps *gelsd

Wraps *gesvd

Wraps *trtri and *trtrs

Wraps *gttrf, *gtcon and *gttrs