|
ergo
|
Classes | |
| class | E2Evaluator |
| E2Evaluator interface provides a way to perform a linear transformation of supplied transition density matrix. More... | |
| class | EigenSolver |
| Iterative Eigenvalue solver, extending the generic LRSolver. More... | |
| class | LRSolver |
| Linear Response iterative solver using a variant of the Davidson method. More... | |
| class | OneElOperator |
| Abstract interface to a one electron operator. More... | |
| class | SetOfEqSolver |
| Iterative Set Of Linear Equations solver, extending the generic LRSolver. More... | |
| class | SmallMatrix |
| a class implementing dynamic resized two dimensional arrays. More... | |
| class | VarVector |
| Vector of variables parametrising the solution to the linear response equations. More... | |
| class | VarVectorCollection |
| a collection of vectors, usually handled at once. More... | |
| class | VarVectorProxyOp |
| template based proxy object that uses bool-valued policies to perform the assignments. More... | |
Functions | |
| ergo_real | dot (int len, const ergo_real *a, const ergo_real *b) |
| returns dot_product(a, b) | |
| ergo_real | operator* (const VarVector &a, const VarVector &b) |
| ergo_real | operator* (const VarVector &a, const VarVectorProxyOp< false, false > &b) |
| ergo_real | operator* (const VarVector &a, const VarVectorProxyOp< true, false > &b) |
| ergo_real | operator* (const VarVector &a, const VarVectorProxyOp< false, true > &b) |
| VarVectorProxyOp< false, false > | operator* (ergo_real s, const VarVector &v) |
| template<bool MultByS, bool SwapXY> | |
| VarVectorProxyOp< MultByS, SwapXY > | operator* (ergo_real s, const VarVectorProxyOp< MultByS, SwapXY > &v) |
| VarVector & | operator+= (VarVector &a, const VarVectorProxyOp< false, false > &proxy) |
| VarVector & | operator+= (VarVector &a, const VarVectorProxyOp< true, false > &proxy) |
| VarVector & | operator+= (VarVector &a, const VarVectorProxyOp< false, true > &proxy) |
| VarVector & | operator+= (VarVector &a, const VarVectorProxyOp< true, true > &proxy) |
| const VarVectorProxyOp< false, true > | swapXY (const VarVector &arg) |
| returns a proxy object corresponding to a swapped vector. | |
| const VarVectorProxyOp< true, false > | sTimes (const VarVector &arg) |
| returns a proxy object corresponding to a vector multiplied by S[2], i.e. | |
| template<bool SwapXY> | |
| VarVectorProxyOp< true, SwapXY > | sTimes (const VarVectorProxyOp< false, SwapXY > &arg) |
| static void | precondition (VarVector &v, const VarVector &e2diag, ergo_real shift) |
| pre-condition a vector given an approximation of the E[2] operator diagonal and a shift of the S[2] operator. | |
| static void | commuteWithDMO (int nbast, int nocc, ergo_real *mat) |
| mat := [mat, D_MO] | |
| static void | gemm (int n, const char *at, const ergo_real *a, const char *bt, const ergo_real *b, ergo_real alpha, ergo_real beta, ergo_real *c) |
| static void | commute (int nbast, const ergo_real *a, const ergo_real *b, ergo_real f, ergo_real *res) |
| res := f*res + [a, b] | |
|
static |
mat := [mat, D_MO]
Referenced by LR::LRSolver::lintrans(), LR::LRSolver::operToVec(), and LR::SetOfEqSolver::setRHS().
returns dot_product(a, b)
Referenced by LR::LRSolver::addToSpace(), LR::SetOfEqSolver::addToSpace(), LR::EigenSolver::computeMoments(), LR::EigenSolver::getResidual(), LR::VarVector::operator*, LR::VarVector::operator*, LR::VarVector::operator*, LR::LRSolver::projectOnSubspace(), and LR::VarVector::symorth().
|
inlinestatic |
References mat::gemm().
Referenced by LR::LRSolver::ao2mo(), commute(), and LR::LRSolver::mo2ao().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
pre-condition a vector given an approximation of the E[2] operator diagonal and a shift of the S[2] operator.
References LR::VarVector::nvar, LR::VarVector::onDisk, template_blas_fabs(), LR::VarVector::x(), and LR::VarVector::y().
Referenced by LR::LRSolver::addToSpace().
| const VarVectorProxyOp< true, false > LR::sTimes | ( | const VarVector & | arg | ) |
returns a proxy object corresponding to a vector multiplied by S[2], i.e.
v -> S[2]*v.
Referenced by LR::LRSolver::addToSpace(), and LR::LRSolver::getAvMinusFreqSv().
| VarVectorProxyOp< true, SwapXY > LR::sTimes | ( | const VarVectorProxyOp< false, SwapXY > & | arg | ) |
| const VarVectorProxyOp< false, true > LR::swapXY | ( | const VarVector & | arg | ) |
returns a proxy object corresponding to a swapped vector.
Referenced by LR::LRSolver::addToSpace(), and LR::LRSolver::getAvMinusFreqSv().