Loading...
Searching...
No Matches
bitpit::linearalgebra Namespace Reference

collection of functions to create and solve small linear systems More...

Functions

template<class T >
void transpose (std::vector< std::vector< T > > &, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
void transpose (std::array< std::array< T, n >, m > &, std::array< std::array< T, m >, n > &)
 
template<class T >
std::vector< std::vector< T > > transpose (const std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
std::array< std::array< T, m >, n > transpose (const std::array< std::array< T, n >, m > &)
 
template<class T >
void triL (std::vector< std::vector< T > > &, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
void triL (std::array< std::array< T, n >, m > &, std::array< std::array< T, n >, m > &)
 
template<class T >
void triU (std::vector< std::vector< T > > &, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
void triU (std::array< std::array< T, n >, m > &, std::array< std::array< T, n >, m > &)
 
int linearIndexColMajor (int row, int col, int nRows, int nCols)
 
int linearIndexRowMajor (int row, int col, int nRows, int nCols)
 
int linearIndexColMajorSymmetric (int row, int col, int nRows, int nCols, char uplo)
 
int linearIndexRowMajorSymmetric (int row, int col, int nRows, int nCols, char uplo)
 
template<class T >
void display (std::ostream &, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
void display (std::ostream &, std::array< std::array< T, n >, m > &)
 
template<class T >
void displayColMajor (std::ostream &out, T *A, int nRows, int nCols)
 
template<class T >
void displayRowMajor (std::ostream &out, T *A, int nRows, int nCols)
 
template<class T >
void displayColMajorSymmetric (std::ostream &out, T *A, int nRows, int nCols, char uplo)
 
template<class T >
void displayRowMajorSymmetric (std::ostream &out, T *A, int nRows, int nCols, char uplo)
 
template<class T >
void complement (int, int, std::vector< std::vector< T > > &, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
void complement (int, int, std::array< std::array< T, n >, m > &, std::array< std::array< T, n-1 >, m-1 > &)
 
template<class T >
void zeros (std::vector< std::vector< T > > &, int, int)
 
template<class T , size_t m, size_t n>
void zeros (std::array< std::array< T, n >, m > &)
 
template<class T >
void ones (std::vector< std::vector< T > > &, int, int)
 
template<class T , size_t m, size_t n>
void ones (std::array< std::array< T, n >, m > &)
 
template<class T >
void eye (std::vector< std::vector< T > > &, int, int)
 
template<class T , size_t m, size_t n>
void eye (std::array< std::array< T, n >, m > &)
 
template<class T >
det (std::vector< std::vector< T > > &)
 
template<class T >
det (std::array< std::array< T, 1 >, 1 > &)
 
template<class T , size_t m, size_t n>
det (std::array< std::array< T, n >, m > &)
 
template<class T >
void matmul (T, const std::vector< std::vector< T > > &, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
void matmul (T, const std::array< std::array< T, n >, m > &, std::array< std::array< T, n >, m > &)
 
template<class T >
void matmul (const std::vector< std::vector< T > > &, T, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n>
void matmul (const std::array< std::array< T, n >, m > &, T, std::array< std::array< T, n >, m > &)
 
template<class T >
void matmul (const std::vector< T > &, const std::vector< std::vector< T > > &, std::vector< T > &)
 
template<class T , size_t m, size_t n>
void matmul (const std::array< T, m > &, const std::array< std::array< T, n >, m > &, std::array< T, n > &)
 
template<class T >
void matmul (const std::vector< std::vector< T > > &, const std::vector< T > &, std::vector< T > &)
 
template<class T , size_t m, size_t n>
void matmul (const std::array< std::array< T, n >, m > &, const std::array< T, n > &, std::array< T, m > &)
 
template<class T >
void matmul (const std::vector< std::vector< T > > &, const std::vector< std::vector< T > > &, std::vector< std::vector< T > > &)
 
template<class T , size_t m, size_t n, size_t l>
void matmul (const std::array< std::array< T, n >, m > &, const std::array< std::array< T, l >, n > &, std::array< std::array< T, l >, m > &)
 
template<class T , size_t d1, size_t d2, size_t d3>
std::array< std::array< T, d2 >, d1 > matmul (const std::array< std::array< T, d3 >, d1 > &, const std::array< std::array< T, d2 >, d3 > &)
 
template<class T >
std::vector< std::vector< T > > matmul (const std::vector< std::vector< T > > &, const std::vector< std::vector< T > > &)
 
template<class T >
std::vector< std::vector< T > > matmulDiag (const std::vector< T > &, const std::vector< std::vector< T > > &)
 
template<class T >
std::vector< std::vector< T > > matmulDiag (const std::vector< std::vector< T > > &, const std::vector< T > &)
 
template<class T , size_t d1, size_t d2>
std::array< std::array< T, d2 >, d1 > matmulDiag (const std::array< T, d1 > &, const std::array< std::array< T, d2 >, d1 > &)
 
template<class T , size_t d1, size_t d2>
std::array< std::array< T, d2 >, d1 > matmulDiag (const std::array< std::array< T, d2 >, d1 > &, const std::array< T, d2 > &)
 
template<class T >
std::vector< T > matmul (const std::vector< std::vector< T > > &, const std::vector< T > &)
 
template<class T , size_t d1, size_t d2>
std::array< T, d1 > matmul (const std::array< std::array< T, d2 >, d1 > &, const std::array< T, d2 > &)
 
template<class T >
std::vector< std::vector< T > > tensorProduct (std::vector< T > const &, std::vector< T > const &)
 
template<class T , size_t n, size_t m>
std::array< std::array< T, m >, n > tensorProduct (std::array< T, n > const &, std::array< T, m > const &)
 
unsigned int factorizeLU (std::vector< std::vector< double > > &A, std::vector< std::vector< double > > &L, std::vector< std::vector< double > > &U, std::vector< std::vector< double > > *P)
 
void backwardSubstitution (std::vector< std::vector< double > > &A, std::vector< double > &B, std::vector< double > &x)
 
void forwardSubstitution (std::vector< std::vector< double > > &A, std::vector< double > &B, std::vector< double > &x)
 
void solveLU (std::vector< std::vector< double > > &A, std::vector< double > &B, std::vector< double > &x)
 
int solveLU (int layout, std::vector< double > &A, std::vector< double > &B)
 
int solveLU (int layout, int matrixOrder, double *A, double *B, int *ipiv)
 
template<class T >
void cramer (std::vector< std::vector< T > > &, std::vector< T > &, std::vector< T > &)
 
template<class T , size_t m, size_t n>
void cramer (std::array< std::array< T, n >, m > &, std::array< T, m > &, std::array< T, n > &)
 
template<size_t m>
unsigned int factorizeLU (std::array< std::array< double, m >, m > &, std::array< std::array< double, m >, m > &, std::array< std::array< double, m >, m > &, std::array< std::array< double, m >, m > *)
 
template<size_t m>
void backwardSubstitution (std::array< std::array< double, m >, m > &, std::array< double, m > &, std::array< double, m > &)
 
template<size_t m>
void forwardSubstitution (std::array< std::array< double, m >, m > &, std::array< double, m > &, std::array< double, m > &)
 
template<size_t m>
void solveLU (std::array< std::array< double, m >, m > &, std::array< double, m > &, std::array< double, m > &)
 

Detailed Description

collection of functions to create and solve small linear systems

--- layout: doxygen_footer ---