All Classes and Interfaces
Class
Description
A solver for QR decomposition that can efficiently modify the previous decomposition when
data is added or removed.
A solver for QR decomposition that can efficiently modify the previous decomposition when
data is added or removed.
In many situations solutions to linear systems that share many of the same data points are needed.
In many situations solutions to linear systems that share many of the same data points are needed.
Applies the fill reduction row pivots to the input matrix to reduce fill in during decomposition/solve.
Applies the fill reduction row pivots to the input matrix to reduce fill in during decomposition/solve.
Converts a matrix type into the most common format to make sure data types are compatible
Generic interface for wrapping a
DMatrixRBlock
decomposition for
processing of DMatrixRMaj
.Generic interface for wrapping a
FMatrixRBlock
decomposition for
processing of FMatrixRMaj
.
Base class for QR pivot based pseudo inverse classes.
Base class for QR pivot based pseudo inverse classes.
Computes a matrix decomposition such that:
A = U*B*VT
where A is m by n, U is orthogonal and m by m, B is an m by n bidiagonal matrix, V is orthogonal and n by n.
A = U*B*VT
where A is m by n, U is orthogonal and m by m, B is an m by n bidiagonal matrix, V is orthogonal and n by n.
Implementation of
BidiagonalDecomposition
for 32-bit floatsImplementation of
BidiagonalDecomposition
for 64-bit floats
Performs a
BidiagonalDecomposition_F64
using
householder reflectors.
Performs a
BidiagonalDecomposition_F32
using
householder reflectors.
Performs a
BidiagonalDecomposition_F64
using householder reflectors.
Performs a
BidiagonalDecomposition_F32
using householder reflectors.BidiagonalDecomposition_F64
specifically designed for tall matrices.BidiagonalDecomposition_F32
specifically designed for tall matrices.BidiagonalDecomposition_F64
specifically designed for tall matrices.BidiagonalDecomposition_F32
specifically designed for tall matrices.
Contains various helper functions for performing a block matrix QR decomposition.
Contains various helper functions for performing a block matrix QR decomposition.
Contains various helper functions for performing a block matrix QR decomposition.
Contains various helper functions for performing a block matrix QR decomposition.
Dense matrix composed of boolean values
Cholesky decomposition.
Wrapper around
CholeskyOuterForm_DDRB
that allows
it to process DMatrixRMaj.
Implementation of
CholeskyDecomposition
for 32-bit floats.
Implementation of
CholeskyDecomposition
for 64-bit floats.Wrapper around
CholeskyOuterForm_FDRB
that allows
it to process FMatrixRMaj.This is an implementation of Cholesky that processes internal submatrices as blocks.
This is an implementation of Cholesky that processes internal submatrices as blocks.
This is an abstract class for a Cholesky decomposition.
This is an abstract class for a Cholesky decomposition.
This is an abstract class for a Cholesky decomposition.
This is an abstract class for a Cholesky decomposition.
This implementation of a Cholesky decomposition using the inner-product form.
This implementation of a Cholesky decomposition using the inner-product form.
This implementation of a Cholesky decomposition using the inner-product form.
This implementation of a Cholesky decomposition using the inner-product form.
This variant on the Cholesky decomposition avoid the need to take the square root
by performing the following decomposition:
L*D*LT=A
where L is a lower triangular matrix with zeros on the diagonal.
L*D*LT=A
where L is a lower triangular matrix with zeros on the diagonal.
This variant on the Cholesky decomposition avoid the need to take the square root
by performing the following decomposition:
L*D*LT=A
where L is a lower triangular matrix with zeros on the diagonal.
L*D*LT=A
where L is a lower triangular matrix with zeros on the diagonal.
Cholesky LDLT decomposition.
Implementation of
CholeskyDecomposition
for 32-bit floats.
Implementation of
CholeskyDecomposition
for 64-bit floats.
Block Cholesky using outer product form.
Block Cholesky using outer product form.
Block Cholesky using outer product form.
Block Cholesky using outer product form.
Linear solver that uses a block cholesky decomposition.
Linear solver that uses a block cholesky decomposition.
Linear solver that uses a block cholesky decomposition.
Linear solver that uses a block cholesky decomposition.
Implementation of
CholeskySparseDecomposition
for 32-bit floats.
Implementation of
CholeskySparseDecomposition
for 64-bit floats.Performs a Cholesky decomposition using an up looking algorthm on a
DMatrixSparseCSC
.Performs a Cholesky decomposition using an up looking algorthm on a
FMatrixSparseCSC
.Interface for all complex 64 bit floating point rectangular matrices.
A generic abstract class for matrices whose data is stored in a single 1D array of floats.
Dense matrix for complex numbers.
Computes the column counts of the upper triangular portion of L as in L*LT=A.
Computes the column counts of the upper triangular portion of L as in L*LT=A.
Common operations on complex numbers
Common matrix operations for fixed sized matrices which are 2 x 2 or 2 element vectors.
Common matrix operations for fixed sized matrices which are 3 x 3 or 3 element vectors.
Common matrix operations for fixed sized matrices which are 4 x 4 or 4 element vectors.
Common matrix operations for fixed sized matrices which are 5 x 5 or 5 element vectors.
Common matrix operations for fixed sized matrices which are 6 x 6 or 6 element vectors.
Common matrix operations are contained here.
Most common operations on
DMatrixSparseCSC
.Common matrix operations for fixed sized matrices which are 2 x 2 or 2 element vectors.
Common matrix operations for fixed sized matrices which are 3 x 3 or 3 element vectors.
Common matrix operations for fixed sized matrices which are 4 x 4 or 4 element vectors.
Common matrix operations for fixed sized matrices which are 5 x 5 or 5 element vectors.
Common matrix operations for fixed sized matrices which are 6 x 6 or 6 element vectors.
Common matrix operations are contained here.
Most common operations on
FMatrixSparseCSC
.Functions from
CommonOps_CDRM
with concurrent implementations.Functions from
CommonOps_DDRM
with concurrent implementations.Concurrent implementations of functions found in
CommonOps_DSCC
.Functions from
CommonOps_FDRM
with concurrent implementations.Concurrent implementations of functions found in
CommonOps_FSCC
.Functions from
CommonOps_ZDRM
with concurrent implementations.Common operations on complex numbers
Represents a complex number using 32-bit floating point numbers.
Represents a complex number using 64-bit floating point numbers.
Basic math operations on complex numbers.
Basic math operations on complex numbers.
Complex_F32
number in polar notation.z = r*(cos(θ) + i*sin(θ))
where r and θ are polar coordinate parameters
Complex_F64
number in polar notation.z = r*(cos(θ) + i*sin(θ))
where r and θ are polar coordinate parameters
Location of controls for turning on and off concurrent (i.e.
Interface that only implements operations in
SimpleBase
that are read only.Convert between matrices with the same structure but different element data types
Contains a function to convert from one matrix type into another
The operations will convert the sparse matrix into a dense matrix and the resulting matrix data type
should be a dense type not a sparse type
An operation has been requested which will only work on imaginary numbers
Contains operations specific to covariance matrices.
Contains operations specific to covariance matrices.
Generates random vectors based on a zero mean multivariate Gaussian distribution.
Generates random vectors based on a zero mean multivariate Gaussian distribution.
Converts 1D and 2D arrays to and from EJML data types
Functions for converting between matrix types.
Contains operations related to creating and evaluating the quality of common matrix decompositions.
Contains operations related to creating and evaluating the quality of common matrix decompositions.
Factory for sparse matrix decompositions
Contains operations related to creating and evaluating the quality of common matrix decompositions.
Factory for sparse matrix decompositions
Contains concurrent implementations of different decompositions.
Contains concurrent implementations of different decompositions.
Contains operations related to creating and evaluating the quality of common matrix decompositions.
An interface for performing matrix decompositions.
Decomposition for sparse matrices.
An eigenpair is a set composed of an eigenvalue and an eigenvector.
Computes a boolean result when given a row, col, and element value
Computes the determinant of a matrix using Laplace expansion.
Computes the determinant of a matrix using Laplace expansion.
A double array which can have its size changed
Utility class to get the corresponding mask builder based on a matrix or primitive array
Mask implementation backed by a primitive array
Utility class to build
DMaskPrimitive
Mask implementation backed by a matrix in CSC format
Utility class to build
DMaskSparse
Mask implementation which checks if the entry is assigned in the sparse matrix.
Utility class to build
DMaskSparseStructural
Interface for all 64F real matrices.
Interface for a row-major matrix that uses a single array internally.
Fixed sized vector with 2 elements.
Fixed sized 2 by DMatrix2x2 matrix.
Fixed sized vector with 3 elements.
Fixed sized 3 by DMatrix3x3 matrix.
Fixed sized vector with 4 elements.
Fixed sized 4 by DMatrix4x4 matrix.
Fixed sized vector with 5 elements.
Fixed sized 5 by DMatrix5x5 matrix.
Fixed sized vector with 6 elements.
Fixed sized 6 by DMatrix6x6 matrix.
Renders a matrix as an image.
A generic abstract class for matrices whose data is stored in a single 1D array of doubles.
Interface which all fixed sized matrices must implement
This is a matrix iterator for traversing through a submatrix.
A row-major block matrix declared on to one continuous array.
DMatrixRMaj is a row matrix with real elements that are 64-bit floats.
High level interface for sparse matrices double types.
Value of an element in a sparse matrix
Compressed Column (CC) sparse matrix format.
A sparse matrix format that is designed to act as an intermediate step for other matrix types.
Functions for visualizing matrices in a GUI matrices.
An algebraic structure with a single associative binary operation and an identity element
as defined in the graphblas c-api (https://people.eecs.berkeley.edu/~aydin/GraphBLAS_API_C_v13.pdf)
p.
Functional Interface used in reduce methods to specify arbitrary binary functions accepting doubles
Functional Interface used in applyRow/Col-Wise method to specify arbitrary binary functions accepting a row index and a double value
Functional Interface used in apply method to specify arbitrary unary functions accepting a double
Scalar value.
An algebraic structure, defined over the `doubles` by two monoids + and *, called addition and multiplication.
as defined in the graphblas c-api (https://people.eecs.berkeley.edu/~aydin/GraphBLAS_API_C_v13.pdf)
p.
Describes a rectangular submatrix inside of a
DMatrixD1
.
This is a generic interface for computing the eigenvalues and eigenvectors of a matrix.
Implementation of
EigenDecomposition
for 32-bit floats
Implementation of
EigenDecomposition
for 64-bit floatsAdditional functions related to eigenvalues and eigenvectors of a matrix.
Additional functions related to eigenvalues and eigenvectors of a matrix.
The power method is an iterative method that can be used to find dominant eigen vector in
a matrix.
The power method is an iterative method that can be used to find dominant eigen vector in
a matrix.
Central class for controlling concurrency in EJML.
This is a list of parameters that are used across the code.
Contains various functions related to unit testing matrix operations.
Automatically generated file containing build version information.
The row and column of an element in a Matrix
Equation allows the user to manipulate matrices in a more compact symbolic way, similar to Matlab and Octave.
Convenience class for fancy print designed to make it less verbose
Converts 1D and 2D arrays to and from EJML data types
Functions for converting between matrix types.
An eigenpair is a set composed of an eigenvalue and an eigenvector.
A float array which can have its size changed
Different types of fill in reducing techniques that can be selected
Utility class to get the corresponding mask builder based on a matrix or primitive array
Mask implementation backed by a primitive array
Utility class to build
FMaskPrimitive
Mask implementation backed by a matrix in CSC format
Utility class to build
FMaskSparse
Mask implementation which checks if the entry is assigned in the sparse matrix.
Utility class to build
FMaskSparseStructural
Interface for all 64F real matrices.
Interface for a row-major matrix that uses a single array internally.
Fixed sized vector with 2 elements.
Fixed sized 2 by FMatrix2x2 matrix.
Fixed sized vector with 3 elements.
Fixed sized 3 by FMatrix3x3 matrix.
Fixed sized vector with 4 elements.
Fixed sized 4 by FMatrix4x4 matrix.
Fixed sized vector with 5 elements.
Fixed sized 5 by FMatrix5x5 matrix.
Fixed sized vector with 6 elements.
Fixed sized 6 by FMatrix6x6 matrix.
Renders a matrix as an image.
A generic abstract class for matrices whose data is stored in a single 1D array of floats.
Interface which all fixed sized matrices must implement
This is a matrix iterator for traversing through a submatrix.
A row-major block matrix declared on to one continuous array.
FMatrixRMaj is a row matrix with real elements that are 32-bit floats.
High level interface for sparse matrices float types.
Value of an element in a sparse matrix
Compressed Column (CC) sparse matrix format.
A sparse matrix format that is designed to act as an intermediate step for other matrix types.
Functions for visualizing matrices in a GUI matrices.
An algebraic structure with a single associative binary operation and an identity element
as defined in the graphblas c-api (https://people.eecs.berkeley.edu/~aydin/GraphBLAS_API_C_v13.pdf)
p.
Functional Interface used in reduce methods to specify arbitrary binary functions accepting floats
Functional Interface used in applyRow/Col-Wise method to specify arbitrary binary functions accepting a row index and a float value
Functional Interface used in apply method to specify arbitrary unary functions accepting a float
Scalar value.
An algebraic structure, defined over the `floats` by two monoids + and *, called addition and multiplication.
as defined in the graphblas c-api (https://people.eecs.berkeley.edu/~aydin/GraphBLAS_API_C_v13.pdf)
p.
Describes a rectangular submatrix inside of a
FMatrixD1
.A function is an operator with the following syntax "<Name>( Input )"
An array of objects which grows and recycles its elements automatically.
Complex Hessenberg decomposition.
Finds the decomposition of a matrix in the form of:
A = OHOT
where A is an m by m matrix, O is an orthogonal matrix, and H is an upper Hessenberg matrix.
A = OHOT
where A is an m by m matrix, O is an orthogonal matrix, and H is an upper Hessenberg matrix.
Finds the decomposition of a matrix in the form of:
A = OHOT
where A is an m by m matrix, O is an orthogonal matrix, and H is an upper Hessenberg matrix.
A = OHOT
where A is an m by m matrix, O is an orthogonal matrix, and H is an upper Hessenberg matrix.
Concurrent implementation of
HessenbergSimilarDecomposition_DDRM
.Concurrent implementation of
HessenbergSimilarDecomposition_FDRM
.
Complex Hessenberg decomposition.
An integer array which can have its size changed
Implementations of common ops routines for
DMatrixRMaj
.Implementations of common ops routines for
DMatrixRMaj
.Implementation class.
Implementations of common ops routines for
FMatrixRMaj
.Implementations of common ops routines for
FMatrixRMaj
.Implementation class.
Concurrent implementations of
ImplCommonOps_DSCC
.Concurrent implementations of
ImplCommonOps_FSCC
.based on ImplCommonOps_DSCC
based on ImplCommonOps_FSCC
Implementation of single thread sparse matrix multiplication.
Implementation of single thread sparse matrix multiplication.
Implementation of concurrent matrix multiplication for DSCC matrices.
Implementation of concurrent matrix multiplication for DSCC matrices.
based on ImplSparseSparseGraphMult_DSCC
based on ImplSparseSparseGraphMult_FSCC
Performs a cholesky decomposition on an individual inner block.
Performs a cholesky decomposition on an individual inner block.
Matrix multiplication for the inner row major blocks, typically inside of a
DMatrixRBlock
.
Matrix multiplication for the inner row major blocks, typically inside of a
FMatrixRBlock
.Performs rank-n update operations on the inner blocks of a
DMatrixRBlock
It is assumed and not checked that the submatrices are aligned along the matrix's blocks.Performs rank-n update operations on the inner blocks of a
FMatrixRBlock
It is assumed and not checked that the submatrices are aligned along the matrix's blocks.Performs rank-n update operations on the inner blocks of a
DMatrixRBlock
It is assumed and not checked that the submatrices are aligned along the matrix's blocks.Performs rank-n update operations on the inner blocks of a
FMatrixRBlock
It is assumed and not checked that the submatrices are aligned along the matrix's blocks.
Contains triangular solvers for inner blocks of a
DMatrixRBlock
.
Contains triangular solvers for inner blocks of a
FMatrixRBlock
.Interface for an ordered sequence of integer values
This is a sequence of sequences
An array of integers which was explicitly specified
A sequence of integers which has been specified using a start number, end number, and step size.
A sequence of integers which has been specified using a start number, end number, and step size and uses
the known upper limit of the array to bound it
Examples:
:
2:
2:3:
Processes a value and is provided workspace
Performs a parallel for loop with the specified step increment and a workspace for each thread.
Processes an integer and returns a number
Processes a range of integer numbers
Processes a range of integer numbers
A matrix can be easily inverted by solving a system with an identify matrix.
A matrix can be easily inverted by solving a system with an identify matrix.
A matrix can be easily inverted by solving a system with an identify matrix.
A matrix can be easily inverted by solving a system with an identify matrix.
Functional Interface used in matrix select methods to specify arbitrary binary predicates accepting element coordinates
Inspired by the predefined SelectOps in GraphBLAS (spec extension)
Scalar value.
Base class for Linear Solvers.
Wrapper that allows
DMatrixRBlock
to implements LinearSolverDense
.Wrapper that allows
FMatrixRBlock
to implements LinearSolverDense
.
An abstract class that provides some common functionality and a default implementation
of invert that uses the solve function of the child class.
An abstract class that provides some common functionality and a default implementation
of invert that uses the solve function of the child class.
An abstract class that provides some common functionality and a default implementation
of invert that uses the solve function of the child class.
An abstract class that provides some common functionality and a default implementation
of invert that uses the solve function of the child class.
A wrapper around
CholeskyDecomposition_F64
(DMatrixRBlock) that allows
it to be easily used with DMatrixRMaj
.A wrapper around
CholeskyDecomposition_F32
(FMatrixRBlock) that allows
it to be easily used with FMatrixRMaj
.Linear solver using a sparse Cholesky decomposition.
Linear solver using a sparse Cholesky decomposition.
An implementation of LinearSolverDense solves a linear system or inverts a matrix.
Factory for creating linear solvers of complex matrices
A factory for generating solvers for systems of the form A*x=b, where A and B are known and x is unknown.
Factory for sparse linear solvers
A factory for generating solvers for systems of the form A*x=b, where A and B are known and x is unknown.
Factory for sparse linear solvers
A factory for generating solvers for systems of the form A*x=b, where A and B are known and x is unknown.
A factory for generating solvers for systems of the form A*x=b, where A and B are known and x is unknown.
Factory for creating linear solvers of complex matrices
For each column in the B matrix it makes a copy, which is then solved for and
writen into X.
For each column in the B matrix it makes a copy, which is then solved for and
writen into X.
LU Decomposition based solver for square matrices.
For each column in the B matrix it makes a copy, which is then solved for and
writen into X.
LU Decomposition based solver for square matrices.
For each column in the B matrix it makes a copy, which is then solved for and
writen into X.
To avoid cpu cache issues the order in which the arrays are traversed have been changed.
To avoid cpu cache issues the order in which the arrays are traversed have been changed.
A solver for a generic QR decomposition algorithm.
A solver for a generic QR decomposition algorithm.
A solver for a generic QR decomposition algorithm.
A solver for a generic QR decomposition algorithm.
Wrapper around
QrHouseHolderSolver_DDRB
that allows it to process
DMatrixRMaj
.Wrapper around
QrHouseHolderSolver_FDRB
that allows it to process
FMatrixRMaj
.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
Concurrent extension of
LinearSolverQrHouseCol_DDRM
.
Concurrent extension of
LinearSolverQrHouseCol_FDRM
.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
QR decomposition can be used to solve for systems.
Sparse linear solver implemented using
QrLeftLookingDecomposition_DSCC
.Sparse linear solver implemented using
QrLeftLookingDecomposition_FSCC
.
Performs a pseudo inverse solver using the
QRColPivDecompositionHouseholderColumn_DDRM
decomposition
directly.
Performs a pseudo inverse solver using the
QRColPivDecompositionHouseholderColumn_FDRM
decomposition
directly.Ensures that any linear solver it is wrapped around will never modify
the input matrices.
Ensures that any linear solver it is wrapped around will never modify
the input matrices.
Wrapper which allows a regular linear solver to act like a sparse solver
Solver which uses an unrolled inverse to compute the inverse.
Solver which uses an unrolled inverse to compute the inverse.
LU Decomposition refactors the original matrix such that:
PT*L*U = A where P is a pivot matrix, L is a lower triangular matrix, U is an upper triangular matrix and A is the original matrix.
PT*L*U = A where P is a pivot matrix, L is a lower triangular matrix, U is an upper triangular matrix and A is the original matrix.
Implementation of
LUDecomposition
for 32-bit numbersImplementation of
LUDecomposition
for 64-bit numbers
An LU decomposition algorithm that originally came from Jama.
An LU decomposition algorithm that originally came from Jama.
An LU decomposition algorithm that originally came from Jama.
An LU decomposition algorithm that originally came from Jama.
Contains common data structures and operations for LU decomposition algorithms.
Contains common data structures and operations for LU decomposition algorithms.
Contains common data structures and operations for LU decomposition algorithms.
Contains common data structures and operations for LU decomposition algorithms.
Implementation of
LUSparseDecomposition
for 32-bit numbersImplementation of
LUSparseDecomposition
for 64-bit numbersLU Decomposition using a left looking algorithm for
DMatrixSparseCSC
.LU Decomposition using a left looking algorithm for
FMatrixSparseCSC
.Definition of a macro.
Centralized place to create new instances of operations and functions.
Creates new instances of functions from a single variable
Creates a new instance of functions from two variables
Manages the creation and recycling of temporary variables used to store intermediate results.
Mask used for specifying which matrix entries should be computed
Helper class to build
Mask
and specify specific parameterBase interface for all rectangular matrices
matrix used to construct a matrix from a sequence of concatenations.
If two matrices did not have compatible dimensions for the operation this exception
is thrown.
Determines which features a matrix has that do not rely on inner data type
Functions for computing the features of complex matrices
Generic (slow) matrix features for real matrices
Matrix features for fixed sized matrices which are 2 x 2 or 2 element vectors.
Matrix features for fixed sized matrices which are 3 x 3 or 3 element vectors.
Matrix features for fixed sized matrices which are 4 x 4 or 4 element vectors.
Matrix features for fixed sized matrices which are 5 x 5 or 5 element vectors.
Matrix features for fixed sized matrices which are 6 x 6 or 6 element vectors.
Used to compute features that describe the structure of a matrix.
Functions for computing the features/properties of matrices.
Generic (slow) matrix features for real matrices
Matrix features for fixed sized matrices which are 2 x 2 or 2 element vectors.
Matrix features for fixed sized matrices which are 3 x 3 or 3 element vectors.
Matrix features for fixed sized matrices which are 4 x 4 or 4 element vectors.
Matrix features for fixed sized matrices which are 5 x 5 or 5 element vectors.
Matrix features for fixed sized matrices which are 6 x 6 or 6 element vectors.
Used to compute features that describe the structure of a matrix.
Functions for computing the features/properties of matrices.
Functions for computing the features of complex matrices
Provides simple to use routines for reading and writing matrices to and from files.
Matrix multiplication routines for complex row matrices in a row-major format.
This class contains various types of matrix matrix multiplication operations for
DMatrix1Row
.
This class contains various types of matrix matrix multiplication operations for
FMatrix1Row
.Matrix multiplication routines for complex row matrices in a row-major format.
This class contains various types of matrix matrix multiplication operations for
DMatrix1Row
.
This class contains various types of matrix matrix multiplication operations for
FMatrix1Row
.Matrix multiplication routines for complex row matrices in a row-major format.
Matrix multiplication routines for complex row matrices in a row-major format.
Matrix multiplication for
DMatrixRBlock
.
Matrix multiplication for
FMatrixRBlock
.
Matrix multiplication for
DMatrixRBlock
.
Matrix multiplication for
FMatrixRBlock
.
Specialized operations for performing inner and outer products for matrices.
Specialized operations for performing inner and outer products for matrices.
Various operations on
DMatrixRBlock
.Various operations on
FMatrixRBlock
.Various operations on
DMatrixRBlock
.Various operations on
FMatrixRBlock
.High level interface for all sparse matrices
Specifies that type of data structure a matrix is encoded with.
This class contains various types of matrix vector multiplcation operations for
DMatrixRMaj
.
This class contains various types of matrix vector multiplcation operations for
FMatrixRMaj
.based on MartrixVectorMult_DSCC
based on MartrixVectorMult_FSCC
Operations for computing different types of norms.
Matrix norm related operations for fixed sized matrices of size 2.
Matrix norm related operations for fixed sized matrices of size 3.
Matrix norm related operations for fixed sized matrices of size 4.
Matrix norm related operations for fixed sized matrices of size 5.
Matrix norm related operations for fixed sized matrices of size 6.
Norms are a measure of the size of a vector or a matrix.
Operations for computing different types of norms.
Matrix norm related operations for fixed sized matrices of size 2.
Matrix norm related operations for fixed sized matrices of size 3.
Matrix norm related operations for fixed sized matrices of size 4.
Matrix norm related operations for fixed sized matrices of size 5.
Matrix norm related operations for fixed sized matrices of size 6.
Norms are a measure of the size of a vector or a matrix.
Operations for computing different types of norms.
Operations for computing different types of norms.
Performs math operations.
Exception generated for parse errors in
Equation
Performs QR decomposition with column pivoting.
Performs QR decomposition with column pivoting.
QR decompositions decompose a rectangular matrix 'A' such that 'A=QR'.
Wrapper that allows
QRDecomposition
(DMatrixRBlock) to be used
as a QRDecomposition
(DMatrixRMaj).Wrapper that allows
QRDecomposition
(FMatrixRBlock) to be used
as a QRDecomposition
(FMatrixRMaj).
This variation of complex QR decomposition uses reflections to compute the Q matrix.
QR decomposition for
DMatrixRBlock
using householder reflectors.
This variation of QR decomposition uses reflections to compute the Q matrix.
QR decomposition for
FMatrixRBlock
using householder reflectors.
This variation of QR decomposition uses reflections to compute the Q matrix.
QR decomposition for
DMatrixRBlock
using householder reflectors.
QR decomposition for
FMatrixRBlock
using householder reflectors.
This variation of complex QR decomposition uses reflections to compute the Q matrix.
Householder QR decomposition is rich in operations along the columns of the matrix.
Householder QR decomposition is rich in operations along the columns of the matrix.
Householder QR decomposition is rich in operations along the columns of the matrix.
Concurrent extension of
QRDecompositionHouseholderColumn_DDRM
.
Concurrent extension of
QRDecompositionHouseholderColumn_FDRM
.
Householder QR decomposition is rich in operations along the columns of the matrix.
Householder QR decomposition is rich in operations along the columns of the matrix.
Householder QR decomposition is rich in operations along the columns of the matrix.
Householder QR decomposition is rich in operations along the columns of the matrix.
Householder QR decomposition is rich in operations along the columns of the matrix.
Contains different functions that are useful for computing the QR decomposition of a matrix.
Contains different functions that are useful for computing the QR decomposition of a matrix.
Functions used with a sparse QR decomposition
Contains different functions that are useful for computing the QR decomposition of a matrix.
Functions used with a sparse QR decomposition
Contains different functions that are useful for computing the QR decomposition of a matrix.
Contains different functions that are useful for computing the QR decomposition of a matrix.
Contains different functions that are useful for computing the QR decomposition of a matrix.
A solver for
QRDecompositionHouseholder_DDRB
.
A solver for
QRDecompositionHouseholder_FDRB
.
A solver for
QRDecompositionHouseholder_MT_DDRB
.
A solver for
QRDecompositionHouseholder_MT_FDRB
.Left-looking QR decomposition algorithm for sparse matrices.
Left-looking QR decomposition algorithm for sparse matrices.
Similar to
QRDecomposition
but it can handle the rank deficient case by
performing column pivots during the decomposition.
Implementation of
QRPDecomposition
for 32-bit floats
Implementation of
QRPDecomposition
for 64-bit floats
Similar to
QRDecomposition
but it can handle the rank deficient case by
performing column pivots during the decomposition.Sparse
QRDecomposition
Determines the structure of the QR decomposition.
Determines the structure of the QR decomposition.
The effects of adding and removing rows from the A matrix in a QR decomposition can
be computed much faster than simply recomputing the whole decomposition.
The effects of adding and removing rows from the A matrix in a QR decomposition can
be computed much faster than simply recomputing the whole decomposition.
An implementation of the quick sort algorithm from Numerical Recipes Third Edition
that is specified for arrays of doubles.
Contains a list of functions for creating random row complex matrices and vectors with different structures.
Contains a list of functions for creating random row real matrices and vectors with different structures.
Functions for creating randomly generated sparse matrices.
Contains a list of functions for creating random row real matrices and vectors with different structures.
Functions for creating randomly generated sparse matrices.
Contains a list of functions for creating random row complex matrices and vectors with different structures.
Base class for reading CSV formatted files.
Reads in a matrix that is in a column-space-value (CSV) format.
An augmented system matrix is said to be in reduced row echelon form (RREF) if the following are true:
Implementation of
ReducedRowEchelonForm
for 32-bit floatsImplementation of
ReducedRowEchelonForm
for 64-bit floatsMatrix which can be reshaped
Reduction to RREF using Gauss-Jordan elimination with row (partial) pivots.
Reduction to RREF using Gauss-Jordan elimination with row (partial) pivots.
Wraps around a
SingularValueDecomposition
and ensures that the input is not modified.Wraps around a
SingularValueDecomposition
and ensures that the input is not modified.Contains a sequence of operations.
Parent of
SimpleMatrix
implements all the standard matrix operations and uses
generics to allow the returned matrix type to be changed.Wrapper around EigenDecomposition for SimpleMatrix
SimpleMatrix
is a wrapper around a primitive matrix type
(for example, DMatrixRMaj
or FMatrixSparseCSC
) that provides an
easy to use object oriented interface for performing matrix operations.High level interface for operations inside of SimpleMatrix for one matrix type.
Implementation of
SimpleOperations
for DMatrixRMaj
.Implementation of
SimpleOperations
for DMatrixSparseCSC
.Implementation of
SimpleOperations
for FMatrixRMaj
.Implementation of
SimpleOperations
for FMatrixSparseCSC
.Extension to
SimpleOperations
for sparse matrices
Wrapper around SVD for simple matrix.
This exception is thrown if an operation can not be finished because the matrix is singular.
Operations related to singular value decomposition.
Operations related to singular value decomposition.
This is an abstract class for computing the singular value decomposition (SVD) of a matrix, which is defined
as:
A = U * W * V T where A is m by n, and U and V are orthogonal matrices, and W is a diagonal matrix.
A = U * W * V T where A is m by n, and U and V are orthogonal matrices, and W is a diagonal matrix.
Implementation of
SingularValueDecomposition
for 32-bit floats.Implementation of
SingularValueDecomposition
for 64-bit floats.Finds the nullspace for a matrix given the number of singular values
Uses QR decomposition to find the null-space for a matrix of any shape if the number of
singular values is known.
Uses QR decomposition to find the null-space for a matrix of any shape if the number of
singular values is known.
Uses QR decomposition to find the null-space for a matrix of any shape if the number of
singular values is known.=
Uses QR decomposition to find the null-space for a matrix of any shape if the number of
singular values is known.=
A pseudo inverse solver for a generic QR column pivot decomposition algorithm.
A pseudo inverse solver for a generic QR column pivot decomposition algorithm.
The pseudo-inverse is typically used to solve over determined system for which there is no unique solution.
x=inv(ATA)ATb
where A ∈ ℜ m × n and m ≥ n.
x=inv(ATA)ATb
where A ∈ ℜ m × n and m ≥ n.
The pseudo-inverse is typically used to solve over determined system for which there is no unique solution.
x=inv(ATA)ATb
where A ∈ ℜ m × n and m ≥ n.
x=inv(ATA)ATb
where A ∈ ℜ m × n and m ≥ n.
Various highly specialized operations that are probably not of interest to most people.
This contains less common or more specialized matrix operations.
This contains less common or more specialized matrix operations.
Various highly specialized operations that are probably not of interest to most people.
Describes a rectangular submatrix.
Operations that are performed on a submatrix inside a larger matrix.
Operations that are performed on a submatrix inside a larger matrix.
Computes the QR decomposition of a bidiagonal matrix.
Computes the QR decomposition of a bidiagonal matrix.
Computes the Singular value decomposition of a matrix using the implicit QR algorithm
for singular value decomposition.
Computes the Singular value decomposition of a matrix using the implicit QR algorithm
for singular value decomposition.
Concurrent version of
SvdImplicitQrDecompose_DDRM
Concurrent version of
SvdImplicitQrDecompose_FDRM
Checks to see what type of matrix is being decomposed and calls different eigenvalue decomposition
algorithms depending on the results.
Checks to see what type of matrix is being decomposed and calls different eigenvalue decomposition
algorithms depending on the results.
Types of low level operators which can be applied in the code
Computes the eigenvalues and eigenvectors of a symmetric tridiagonal matrix using the symmetric QR algorithm.
Computes the eigenvalues and eigenvectors of a symmetric tridiagonal matrix using the symmetric QR algorithm.
Computes the eigenvalues and eigenvectors of a real symmetric matrix using the symmetric implicit QR algorithm.
Computes the eigenvalues and eigenvectors of a real symmetric matrix using the symmetric implicit QR algorithm.
A helper class for the symmetric matrix implicit QR algorithm for eigenvalue decomposition.
A helper class for the symmetric matrix implicit QR algorithm for eigenvalue decomposition.
Algorithms for transposing row complex matrices
Low level transpose algorithms.
Low level transpose algorithms.
Low level transpose algorithms.
Low level transpose algorithms.
Algorithms for transposing row complex matrices
This contains algorithms for solving systems of equations where T is a
non-singular triangular complex matrix:
T*x = b
where x and b are vectors, and T is an n by n matrix.
T*x = b
where x and b are vectors, and T is an n by n matrix.
Contains triangular solvers for
DMatrixRBlock
block aligned sub-matrices.
This contains algorithms for solving systems of equations where T is a
non-singular triangular matrix:
T*x = b
where x and b are vectors, and T is an n by n matrix.
T*x = b
where x and b are vectors, and T is an n by n matrix.
Contains triangular solvers for
FMatrixRBlock
block aligned sub-matrices.
This contains algorithms for solving systems of equations where T is a
non-singular triangular matrix:
T*x = b
where x and b are vectors, and T is an n by n matrix.
T*x = b
where x and b are vectors, and T is an n by n matrix.
Contains triangular solvers for
DMatrixRBlock
block aligned sub-matrices.
Contains triangular solvers for
FMatrixRBlock
block aligned sub-matrices.
This contains algorithms for solving systems of equations where T is a
non-singular triangular complex matrix:
T*x = b
where x and b are vectors, and T is an n by n matrix.
T*x = b
where x and b are vectors, and T is an n by n matrix.
Wrapper around a block implementation of TridiagonalSimilarDecomposition_F64
Wrapper around a block implementation of TridiagonalSimilarDecomposition_F32
Performs a complex
similar tridiagonal decomposition
on a
square Hermitian matrix.
Tridiagonal similar decomposition for block matrices.
Performs a
similar tridiagonal decomposition
on a square symmetric input matrix.
Tridiagonal similar decomposition for block matrices.
Performs a
similar tridiagonal decomposition
on a square symmetric input matrix.
Tridiagonal similar decomposition for block matrices.
Concurrent implementation of
TridiagonalDecompositionHouseholder_DDRM
Tridiagonal similar decomposition for block matrices.
Concurrent implementation of
TridiagonalDecompositionHouseholder_FDRM
Performs a complex
similar tridiagonal decomposition
on a
square Hermitian matrix.
A straight forward implementation from "Fundamentals of Matrix Computations," Second Edition.
This is only saved to provide a point of reference in benchmarks.
This is only saved to provide a point of reference in benchmarks.
A straight forward implementation from "Fundamentals of Matrix Computations," Second Edition.
This is only saved to provide a point of reference in benchmarks.
This is only saved to provide a point of reference in benchmarks.
Finds the decomposition of a matrix in the form of:
A = O*T*OT
where A is a symmetric m by m matrix, O is an orthogonal matrix, and T is a tridiagonal matrix.
A = O*T*OT
where A is a symmetric m by m matrix, O is an orthogonal matrix, and T is a tridiagonal matrix.
Implementation of
TridiagonalSimilarDecomposition
for 32-bit floatsImplementation of
TridiagonalSimilarDecomposition
for 64-bit floatsPerforms an unrolled lower cholesky decomposition for small matrices.
Performs an unrolled lower cholesky decomposition for small matrices.
This code was auto generated by GenerateDeterminantFromMinor and should not be modified
directly.
This code was auto generated by GenerateDeterminantFromMinor and should not be modified
directly.
Unrolled inverse from minor for DDRM type matrices.
Unrolled inverse from minor for DDRM type matrices.
This operation isn't supported yet
Helper functions for generic decompsotions.
Helper functions for generic decompsotions.
Helper functions for generic decompsotions.
Helper functions for generic decompsotions.
Various functions that are useful but don't have a clear location that they belong in.
Instance of a variable created at compile time.
Variable which stores an instance of double.
Variable which stores an instance of int.
Variable which stores/describes a sequence of integers
Storage for
matrix
type variables.Variable for storing primitive scalar data types, e.g.
List of the types of variables.
Math operations for inner vectors (row and column) inside of block matrices:
scale: bi = α*ai
div: i = ai/α
add: ci = α*ai + βBi
dot: c = sum ai*bi
scale: bi = α*ai
div: i = ai/α
add: ci = α*ai + βBi
dot: c = sum ai*bi
Math operations for inner vectors (row and column) inside of block matrices:
scale: bi = α*ai
div: i = ai/α
add: ci = α*ai + βBi
dot: c = sum ai*bi
scale: bi = α*ai
div: i = ai/α
add: ci = α*ai + βBi
dot: c = sum ai*bi
Operations that involve multiplication of two vectors.
Operations that involve multiplication of two vectors.
Operations that involve multiplication of two vectors.
Operations that involve multiplication of two vectors.
Finds the eigenvalue decomposition of an arbitrary square matrix using the implicit double-step QR algorithm.
Finds the eigenvalue decomposition of an arbitrary square matrix using the implicit float-step QR algorithm.
The double step implicit Eigenvalue decomposition algorithm is fairly complicated and needs to be designed so that
it can handle several special cases.
The float step implicit Eigenvalue decomposition algorithm is fairly complicated and needs to be designed so that
it can handle several special cases.
Work around for auto code generation issues with complex matrices.
Workspace for concurrent algorithms.
Workspace for concurrent algorithms.
Interface for all complex 64 bit floating point rectangular matrices.
A generic abstract class for matrices whose data is stored in a single 1D array of doubles.
Dense matrix for complex numbers.