|
CHROMA
|
Conjugate-Gradient (CGNE) with eigenstd::vector acceleration. More...
Functions | |
| template<typename T > | |
| void | SubSpaceMatrix_T (LinAlg::Matrix< DComplex > &H, const LinearOperatorArray< T > &A, const multi2d< T > &evec, int Nvecs) |
| template<typename T > | |
| SystemSolverResults_t | InvEigCG2_T (const LinearOperatorArray< T > &A, multi1d< T > &x, const multi1d< T > &b, multi1d< Double > &eval, multi2d< T > &evec, int Neig, int Nmax, const Real &RsdCG, int MaxCG) |
| template<typename T > | |
| SystemSolverResults_t | old_InvEigCG2_T (const LinearOperatorArray< T > &A, multi1d< T > &x, const multi1d< T > &b, multi1d< Double > &eval, multi2d< T > &evec, int Neig, int Nmax, const Real &RsdCG, int MaxCG) |
| template<typename T > | |
| SystemSolverResults_t | vecPrecondCG_T (const LinearOperatorArray< T > &A, multi1d< T > &x, const multi1d< T > &b, const multi1d< Double > &eval, const multi2d< T > &evec, int startV, int endV, const Real &RsdCG, int MaxCG) |
| template<typename T > | |
| void | InitGuess_T (const LinearOperatorArray< T > &A, multi1d< T > &x, const multi1d< T > &b, const multi1d< Double > &eval, const multi2d< T > &evec, int &n_count) |
| template<typename T > | |
| void | InitGuess_T (const LinearOperatorArray< T > &A, multi1d< T > &x, const multi1d< T > &b, const multi1d< Double > &eval, const multi2d< T > &evec, int N, int &n_count) |
| void | SubSpaceMatrix (LinAlg::Matrix< DComplex > &H, const LinearOperatorArray< LatticeFermionF > &A, const multi2d< LatticeFermionF > &evec, int Nvecs) |
| SystemSolverResults_t | InvEigCG2 (const LinearOperatorArray< LatticeFermionF > &A, multi1d< LatticeFermionF > &x, const multi1d< LatticeFermionF > &b, multi1d< Double > &eval, multi2d< LatticeFermionF > &evec, int Neig, int Nmax, const Real &RsdCG, int MaxCG) |
| SystemSolverResults_t | vecPrecondCG (const LinearOperatorArray< LatticeFermionF > &A, multi1d< LatticeFermionF > &x, const multi1d< LatticeFermionF > &b, const multi1d< Double > &eval, const multi2d< LatticeFermionF > &evec, int startV, int endV, const Real &RsdCG, int MaxCG) |
| void | InitGuess (const LinearOperatorArray< LatticeFermionF > &A, multi1d< LatticeFermionF > &x, const multi1d< LatticeFermionF > &b, const multi1d< Double > &eval, const multi2d< LatticeFermionF > &evec, int &n_count) |
| void | InitGuess (const LinearOperatorArray< LatticeFermionF > &A, multi1d< LatticeFermionF > &x, const multi1d< LatticeFermionF > &b, const multi1d< Double > &eval, const multi2d< LatticeFermionF > &evec, int N, int &n_count) |
| void | SubSpaceMatrix (LinAlg::Matrix< DComplex > &H, const LinearOperatorArray< LatticeFermionD > &A, const multi2d< LatticeFermionD > &evec, int Nvecs) |
| SystemSolverResults_t | InvEigCG2 (const LinearOperatorArray< LatticeFermionD > &A, multi1d< LatticeFermionD > &x, const multi1d< LatticeFermionD > &b, multi1d< Double > &eval, multi2d< LatticeFermionD > &evec, int Neig, int Nmax, const Real &RsdCG, int MaxCG) |
| SystemSolverResults_t | vecPrecondCG (const LinearOperatorArray< LatticeFermionD > &A, multi1d< LatticeFermionD > &x, const multi1d< LatticeFermionD > &b, const multi1d< Double > &eval, const multi2d< LatticeFermionD > &evec, int startV, int endV, const Real &RsdCG, int MaxCG) |
| void | InitGuess (const LinearOperatorArray< LatticeFermionD > &A, multi1d< LatticeFermionD > &x, const multi1d< LatticeFermionD > &b, const multi1d< Double > &eval, const multi2d< LatticeFermionD > &evec, int &n_count) |
| void | InitGuess (const LinearOperatorArray< LatticeFermionD > &A, multi1d< LatticeFermionD > &x, const multi1d< LatticeFermionD > &b, const multi1d< Double > &eval, const multi2d< LatticeFermionD > &evec, int N, int &n_count) |
Conjugate-Gradient (CGNE) with eigenstd::vector acceleration.
| void Chroma::InvEigCG2ArrayEnv::InitGuess | ( | const LinearOperatorArray< LatticeFermionD > & | A, |
| multi1d< LatticeFermionD > & | x, | ||
| const multi1d< LatticeFermionD > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< LatticeFermionD > & | evec, | ||
| int & | n_count | ||
| ) |
Definition at line 976 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, InitGuess_T(), Chroma::n_count, and x.
| void Chroma::InvEigCG2ArrayEnv::InitGuess | ( | const LinearOperatorArray< LatticeFermionD > & | A, |
| multi1d< LatticeFermionD > & | x, | ||
| const multi1d< LatticeFermionD > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< LatticeFermionD > & | evec, | ||
| int | N, | ||
| int & | n_count | ||
| ) |
Definition at line 986 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, InitGuess_T(), Chroma::n_count, and x.
Referenced by InitGuess_T().
| void Chroma::InvEigCG2ArrayEnv::InitGuess | ( | const LinearOperatorArray< LatticeFermionF > & | A, |
| multi1d< LatticeFermionF > & | x, | ||
| const multi1d< LatticeFermionF > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< LatticeFermionF > & | evec, | ||
| int & | n_count | ||
| ) |
Definition at line 922 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, InitGuess_T(), Chroma::n_count, and x.
| void Chroma::InvEigCG2ArrayEnv::InitGuess | ( | const LinearOperatorArray< LatticeFermionF > & | A, |
| multi1d< LatticeFermionF > & | x, | ||
| const multi1d< LatticeFermionF > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< LatticeFermionF > & | evec, | ||
| int | N, | ||
| int & | n_count | ||
| ) |
Definition at line 932 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, InitGuess_T(), Chroma::n_count, and x.
| void Chroma::InvEigCG2ArrayEnv::InitGuess_T | ( | const LinearOperatorArray< T > & | A, |
| multi1d< T > & | x, | ||
| const multi1d< T > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< T > & | evec, | ||
| int & | n_count | ||
| ) |
Definition at line 834 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, InitGuess(), Chroma::n_count, and x.
| void Chroma::InvEigCG2ArrayEnv::InitGuess_T | ( | const LinearOperatorArray< T > & | A, |
| multi1d< T > & | x, | ||
| const multi1d< T > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< T > & | evec, | ||
| int | N, | ||
| int & | n_count | ||
| ) |
Definition at line 846 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, Chroma::d, Chroma::i, Chroma::InlinePropAndMatElemDistillation2Env::local::innerProduct(), l, Chroma::n_count, Chroma::p, Chroma::PLUS, Chroma::r, and x.
Referenced by InitGuess().
| SystemSolverResults_t Chroma::InvEigCG2ArrayEnv::InvEigCG2 | ( | const LinearOperatorArray< LatticeFermionD > & | A, |
| multi1d< LatticeFermionD > & | x, | ||
| const multi1d< LatticeFermionD > & | b, | ||
| multi1d< Double > & | eval, | ||
| multi2d< LatticeFermionD > & | evec, | ||
| int | Neig, | ||
| int | Nmax, | ||
| const Real & | RsdCG, | ||
| int | MaxCG | ||
| ) |
Definition at line 953 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, InvEigCG2_T(), Chroma::MaxCG, Chroma::RsdCG, and x.
| SystemSolverResults_t Chroma::InvEigCG2ArrayEnv::InvEigCG2 | ( | const LinearOperatorArray< LatticeFermionF > & | A, |
| multi1d< LatticeFermionF > & | x, | ||
| const multi1d< LatticeFermionF > & | b, | ||
| multi1d< Double > & | eval, | ||
| multi2d< LatticeFermionF > & | evec, | ||
| int | Neig, | ||
| int | Nmax, | ||
| const Real & | RsdCG, | ||
| int | MaxCG | ||
| ) |
Definition at line 899 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, InvEigCG2_T(), Chroma::MaxCG, Chroma::RsdCG, and x.
| SystemSolverResults_t Chroma::InvEigCG2ArrayEnv::InvEigCG2_T | ( | const LinearOperatorArray< T > & | A, |
| multi1d< T > & | x, | ||
| const multi1d< T > & | b, | ||
| multi1d< Double > & | eval, | ||
| multi2d< T > & | evec, | ||
| int | Neig, | ||
| int | Nmax, | ||
| const Real & | RsdCG, | ||
| int | MaxCG | ||
| ) |
preconditioning algorithm
Definition at line 63 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::StagPhases::alpha(), Chroma::b, Chroma::StagPhases::beta(), Chroma::BaryonSpinMats::C(), Chroma::END_CODE(), Chroma::i, Chroma::InlinePropAndMatElemDistillation2Env::local::innerProduct(), j, Chroma::k, l, Chroma::LinAlg::Matrix< T >::mat, Chroma::MaxCG, Chroma::LinAlg::Matrix< T >::N, Chroma::LinAlg::VectorArrays< T >::N, Chroma::SystemSolverResults_t::n_count, Chroma::LinAlg::VectorArrays< T >::NormalizeAndAddVector(), Chroma::p, Chroma::PLUS, Chroma::QDP_error_exit(), Chroma::r, Chroma::SystemSolverResults_t::resid, Chroma::rsd_sq, Chroma::RsdCG, Chroma::START_CODE(), SubSpaceMatrix(), Octave::tag(), Chroma::tmp, Chroma::LinAlg::VectorArrays< T >::vec, x, and Chroma::zero.
Referenced by InvEigCG2().
| SystemSolverResults_t Chroma::InvEigCG2ArrayEnv::old_InvEigCG2_T | ( | const LinearOperatorArray< T > & | A, |
| multi1d< T > & | x, | ||
| const multi1d< T > & | b, | ||
| multi1d< Double > & | eval, | ||
| multi2d< T > & | evec, | ||
| int | Neig, | ||
| int | Nmax, | ||
| const Real & | RsdCG, | ||
| int | MaxCG | ||
| ) |
preconditioning algorithm
Definition at line 356 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::LinAlg::VectorArrays< T >::AddOrReplaceVector(), Chroma::LinAlg::VectorArrays< T >::AddVectors(), Chroma::StagPhases::alpha(), Chroma::b, Chroma::StagPhases::beta(), Chroma::BaryonSpinMats::C(), Chroma::END_CODE(), Chroma::i, Chroma::InlinePropAndMatElemDistillation2Env::local::innerProduct(), j, Chroma::k, Chroma::LinAlg::Matrix< T >::mat, Chroma::MaxCG, Chroma::LinAlg::Matrix< T >::N, Chroma::LinAlg::VectorArrays< T >::N, Chroma::SystemSolverResults_t::n_count, Chroma::LinAlg::VectorArrays< T >::NormalizeAndAddVector(), Chroma::normGramSchmidt(), Chroma::p, Chroma::PLUS, Chroma::QDP_error_exit(), Chroma::r, Chroma::SystemSolverResults_t::resid, Chroma::rsd_sq, Chroma::RsdCG, Chroma::LinAlg::VectorArrays< T >::size(), Chroma::START_CODE(), SubSpaceMatrix(), Octave::tag(), Chroma::tmp, Chroma::LinAlg::VectorArrays< T >::vec, x, z, and Chroma::zero.
| void Chroma::InvEigCG2ArrayEnv::SubSpaceMatrix | ( | LinAlg::Matrix< DComplex > & | H, |
| const LinearOperatorArray< LatticeFermionD > & | A, | ||
| const multi2d< LatticeFermionD > & | evec, | ||
| int | Nvecs | ||
| ) |
Definition at line 945 of file inv_eigcg2_array.cc.
References Chroma::A(), and SubSpaceMatrix_T().
Referenced by InvEigCG2_T(), and old_InvEigCG2_T().
| void Chroma::InvEigCG2ArrayEnv::SubSpaceMatrix | ( | LinAlg::Matrix< DComplex > & | H, |
| const LinearOperatorArray< LatticeFermionF > & | A, | ||
| const multi2d< LatticeFermionF > & | evec, | ||
| int | Nvecs | ||
| ) |
Definition at line 891 of file inv_eigcg2_array.cc.
References Chroma::A(), and SubSpaceMatrix_T().
| void Chroma::InvEigCG2ArrayEnv::SubSpaceMatrix_T | ( | LinAlg::Matrix< DComplex > & | H, |
| const LinearOperatorArray< T > & | A, | ||
| const multi2d< T > & | evec, | ||
| int | Nvecs | ||
| ) |
Definition at line 31 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::i, Chroma::InlinePropAndMatElemDistillation2Env::local::innerProduct(), j, Chroma::LinAlg::Matrix< T >::mat, Chroma::LinAlg::Matrix< T >::N, Chroma::PLUS, and Chroma::LinAlg::Matrix< T >::size().
Referenced by SubSpaceMatrix().
| SystemSolverResults_t Chroma::InvEigCG2ArrayEnv::vecPrecondCG | ( | const LinearOperatorArray< LatticeFermionD > & | A, |
| multi1d< LatticeFermionD > & | x, | ||
| const multi1d< LatticeFermionD > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< LatticeFermionD > & | evec, | ||
| int | startV, | ||
| int | endV, | ||
| const Real & | RsdCG, | ||
| int | MaxCG | ||
| ) |
Definition at line 965 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, Chroma::MaxCG, Chroma::RsdCG, vecPrecondCG_T(), and x.
| SystemSolverResults_t Chroma::InvEigCG2ArrayEnv::vecPrecondCG | ( | const LinearOperatorArray< LatticeFermionF > & | A, |
| multi1d< LatticeFermionF > & | x, | ||
| const multi1d< LatticeFermionF > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< LatticeFermionF > & | evec, | ||
| int | startV, | ||
| int | endV, | ||
| const Real & | RsdCG, | ||
| int | MaxCG | ||
| ) |
Definition at line 911 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::b, Chroma::MaxCG, Chroma::RsdCG, vecPrecondCG_T(), and x.
| SystemSolverResults_t Chroma::InvEigCG2ArrayEnv::vecPrecondCG_T | ( | const LinearOperatorArray< T > & | A, |
| multi1d< T > & | x, | ||
| const multi1d< T > & | b, | ||
| const multi1d< Double > & | eval, | ||
| const multi2d< T > & | evec, | ||
| int | startV, | ||
| int | endV, | ||
| const Real & | RsdCG, | ||
| int | MaxCG | ||
| ) |
preconditioning algorithm
Definition at line 731 of file inv_eigcg2_array.cc.
References Chroma::A(), Chroma::StagPhases::alpha(), Chroma::b, Chroma::StagPhases::beta(), Chroma::d, Chroma::END_CODE(), Chroma::i, Chroma::InlinePropAndMatElemDistillation2Env::local::innerProduct(), Chroma::k, l, Chroma::MaxCG, Chroma::SystemSolverResults_t::n_count, Chroma::p, Chroma::PLUS, Chroma::QDP_error_exit(), Chroma::r, Chroma::SystemSolverResults_t::resid, Chroma::rsd_sq, Chroma::RsdCG, Chroma::START_CODE(), x, and z.
Referenced by vecPrecondCG().