QMCPACK
DeterminantOperators.h File Reference

Define determinant operators. More...

+ Include dependency graph for DeterminantOperators.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 qmcplusplus
 helper functions for EinsplineSetBuilder
 

Functions

void LUFactorization (int n, int m, double *restrict a, int n0, int *restrict piv)
 LU factorization of double. More...
 
void LUFactorization (int n, int m, float *restrict a, const int &n0, int *restrict piv)
 LU factorization of float. More...
 
void LUFactorization (int n, int m, std::complex< double > *restrict a, int n0, int *restrict piv)
 LU factorization of std::complex<double> More...
 
void LUFactorization (int n, int m, std::complex< float > *restrict a, int n0, int *restrict piv)
 LU factorization of complex<float> More...
 
void InvertLU (int n, double *restrict a, int n0, int *restrict piv, double *restrict work, int n1)
 Inversion of a double matrix after LU factorization. More...
 
void InvertLU (const int &n, float *restrict a, const int &n0, int *restrict piv, float *restrict work, const int &n1)
 Inversion of a float matrix after LU factorization. More...
 
void InvertLU (int n, std::complex< double > *restrict a, int n0, int *restrict piv, std::complex< double > *restrict work, int n1)
 Inversion of a std::complex<double> matrix after LU factorization. More...
 
void InvertLU (int n, std::complex< float > *restrict a, int n0, int *restrict piv, std::complex< float > *restrict work, int n1)
 Inversion of a complex<float> matrix after LU factorization. More...
 
template<class T >
Invert (T *restrict x, int n, int m, T *restrict work, int *restrict pivot)
 inverse a matrix More...
 
template<class T >
Determinant (T *restrict x, int n, int m, int *restrict pivot)
 determinant of a matrix More...
 
template<class T >
Invert (T *restrict x, int n, int m)
 inverse a matrix More...
 
template<class T , class T1 >
void InvertWithLog (T *restrict x, int n, int m, T *restrict work, int *restrict pivot, std::complex< T1 > &logdet)
 
template<class MatrixA >
MatrixA::value_type invert_matrix (MatrixA &M, bool getdet=true)
 invert a matrix More...
 
template<typename MatA , typename VecB >
MatA::value_type DetRatioByRow (const MatA &Minv, const VecB &newv, int rowchanged)
 determinant ratio with a row substitution More...
 
template<typename MatA , typename VecB >
MatA::value_type DetRatioByColumn (const MatA &Minv, const VecB &newv, int colchanged)
 determinant ratio with a column substitution More...
 
template<typename T , typename ALLOC >
void InverseUpdateByRow (Matrix< T, ALLOC > &Minv, Vector< T, ALLOC > &newrow, Vector< T, ALLOC > &rvec, Vector< T, ALLOC > &rvecinv, int rowchanged, T c_ratio)
 update a inverse matrix by a row substitution More...
 
template<typename T , typename ALLOC >
void InverseUpdateByColumn (Matrix< T, ALLOC > &Minv, Vector< T, ALLOC > &newcol, Vector< T, ALLOC > &rvec, Vector< T, ALLOC > &rvecinv, int colchanged, T c_ratio)
 

Detailed Description

Define determinant operators.

Definition in file DeterminantOperators.h.