![]() |
QMCPACK
|
Go to the source code of this file.
Classes | |
struct | lup |
Functions | |
void | LinearLeastSquares (Array< double, 2 > &A, Array< double, 1 > &x, Array< double, 1 > &b) |
void | MatVecProd (Array< double, 2 > &A, Array< double, 1 > &x, Array< double, 1 > &Ax) |
void | SVdecomp (Array< double, 2 > &A, Array< double, 2 > &U, Array< double, 1 > &S, Array< double, 2 > &V) |
void | SVdecomp (Array< std::complex< double >, 2 > &A, Array< std::complex< double >, 2 > &U, Array< double, 1 > &S, Array< std::complex< double >, 2 > &V) |
void | SymmEigenPairs (const Array< double, 2 > &A, int NumPairs, Array< double, 1 > &Vals, Array< double, 2 > &Vectors) |
void | SymmEigenPairs (const Array< std::complex< double >, 2 > &A, int NumPairs, Array< double, 1 > &Vals, Array< std::complex< double >, 2 > &Vectors) |
void | PolarOrthogonalize (Array< std::complex< double >, 2 > &A) |
const Array< double, 2 > | operator* (const Array< double, 2 > &A, const Array< double, 2 > &B) |
double | InnerProduct (const Array< double, 1 > &A, const Array< double, 1 > &B) |
void | OuterProduct (const Array< double, 1 > &A, const Array< double, 1 > &B, Array< double, 2 > &AB) |
void | MatMult (const Array< double, 2 > &A, const Array< double, 2 > &B, Array< double, 2 > &C) |
void | MatMult (const Array< std::complex< double >, 2 > &A, const Array< std::complex< double >, 2 > &B, Array< std::complex< double >, 2 > &C) |
double | Determinant (const Array< double, 2 > &A) |
std::complex< double > | Determinant (const Array< std::complex< double >, 2 > &A) |
double | DetCofactors (Array< double, 2 > &A, Array< double, 1 > &work) |
This function returns the determinant of A and replaces A with its cofactors. More... | |
int | DetCofactorsWorksize (int N) |
This function returns the worksize needed by the previous function. More... | |
std::complex< double > | ComplexDetCofactors (Array< std::complex< double >, 2 > &A, Array< std::complex< double >, 1 > &work) |
Complex versions of the functions above. More... | |
int | ComplexDetCofactorsWorksize (int N) |
double | GJInverse (Array< double, 2 > &A) |
double | GJInversePartial (Array< double, 2 > &A) |
Array< double, 2 > | Inverse (Array< double, 2 > &A) |
void | OutOfPlaceTranspose (Array< double, 2 > &A) |
void | OutOfPlaceTranspose (Array< std::complex< double >, 2 > &A) |
void | Transpose (Array< double, 2 > &A) |
void | Transpose (Array< std::complex< double >, 2 > &A) |
void | Print (const Mat3 &A) |
void | CubicFormula (double a, double b, double c, double d, double &x1, double &x2, double &x3) |
void | TestCubicFormula () |
void | EigVals (const Mat3 &M, double &lambda1, double &lambda2, double &lambda3) |
void | Eig (const Mat3 &M, Mat3 &U, Vec3 &Lambda) |
double | det (const Mat2 &C) |
void | CholeskyBig (Array< double, 2 > &A) |
Mat3 | Cholesky (Mat3 C) |
void | TestCholesky () |
Definition at line 360 of file MatrixOps.h.
References qmcplusplus::Units::charge::C, and qmcplusplus::sqrt().
Referenced by TestCholesky().
void CholeskyBig | ( | Array< double, 2 > & | A | ) |
std::complex<double> ComplexDetCofactors | ( | Array< std::complex< double >, 2 > & | A, |
Array< std::complex< double >, 1 > & | work | ||
) |
Complex versions of the functions above.
int ComplexDetCofactorsWorksize | ( | int | N | ) |
|
inline |
Definition at line 226 of file MatrixOps.h.
References qmcplusplus::Units::distance::A, qmcplusplus::acos(), B(), qmcplusplus::Units::charge::C, qmcplusplus::cos(), and qmcplusplus::sqrt().
Referenced by EigVals(), and TestCubicFormula().
|
inline |
This function returns the determinant of A and replaces A with its cofactors.
int DetCofactorsWorksize | ( | int | N | ) |
This function returns the worksize needed by the previous function.
double Determinant | ( | const Array< double, 2 > & | A | ) |
std::complex<double> Determinant | ( | const Array< std::complex< double >, 2 > & | A | ) |
Definition at line 282 of file MatrixOps.h.
References EigVals(), norm(), and qmcplusplus::sqrt().
Referenced by TestCholesky().
|
inline |
Definition at line 270 of file MatrixOps.h.
References CubicFormula().
Referenced by Eig().
double GJInverse | ( | Array< double, 2 > & | A | ) |
Referenced by NonlinearFitClass< M, ModelType >::Fit(), and NonlinearFitClass< M, ModelType >::Solve().
double GJInversePartial | ( | Array< double, 2 > & | A | ) |
void MatMult | ( | const Array< std::complex< double >, 2 > & | A, |
const Array< std::complex< double >, 2 > & | B, | ||
Array< std::complex< double >, 2 > & | C | ||
) |
void OuterProduct | ( | const Array< double, 1 > & | A, |
const Array< double, 1 > & | B, | ||
Array< double, 2 > & | AB | ||
) |
|
inline |
Definition at line 166 of file MatrixOps.h.
References qmcplusplus::Units::distance::A, qmcplusplus::Units::distance::m, and qmcplusplus::n.
Referenced by Transpose().
|
inline |
Definition at line 178 of file MatrixOps.h.
References qmcplusplus::Units::distance::A, qmcplusplus::Units::distance::m, and qmcplusplus::n.
void PolarOrthogonalize | ( | Array< std::complex< double >, 2 > & | A | ) |
|
inline |
void SVdecomp | ( | Array< double, 2 > & | A, |
Array< double, 2 > & | U, | ||
Array< double, 1 > & | S, | ||
Array< double, 2 > & | V | ||
) |
void SVdecomp | ( | Array< std::complex< double >, 2 > & | A, |
Array< std::complex< double >, 2 > & | U, | ||
Array< double, 1 > & | S, | ||
Array< std::complex< double >, 2 > & | V | ||
) |
void SymmEigenPairs | ( | const Array< double, 2 > & | A, |
int | NumPairs, | ||
Array< double, 1 > & | Vals, | ||
Array< double, 2 > & | Vectors | ||
) |
void SymmEigenPairs | ( | const Array< std::complex< double >, 2 > & | A, |
int | NumPairs, | ||
Array< double, 1 > & | Vals, | ||
Array< std::complex< double >, 2 > & | Vectors | ||
) |
|
inline |
Definition at line 376 of file MatrixOps.h.
References qmcplusplus::Units::charge::C, Cholesky(), Eig(), and Transpose().
|
inline |
Definition at line 252 of file MatrixOps.h.
References CubicFormula().
|
inline |
Definition at line 190 of file MatrixOps.h.
References qmcplusplus::Units::distance::A, qmcplusplus::Units::distance::m, qmcplusplus::n, and OutOfPlaceTranspose().
Referenced by TestCholesky().
|
inline |
Definition at line 204 of file MatrixOps.h.
References qmcplusplus::Units::distance::A, qmcplusplus::Units::distance::m, qmcplusplus::n, and OutOfPlaceTranspose().