|
MPQC 3.0.0-alpha
|
Class MP2R12EnergyUtil_base is the abstract interface to utility functions used by MP2R12Energy derivatives. More...
#include <chemistry/qc/mbptr12/mp2r12_energy_util.h>
Public Member Functions | |
| MP2R12EnergyUtil_base (const RefSCDimension &oodim, const RefSCDimension &xydim, const RefSCDimension &f12dim, const unsigned int nocc_act) | |
| void | check_dims (const RefSCMatrix &A) const |
| Checks if matrix A has proper dimensions. Throw, if not. | |
| void | check_dims (const RefSymmSCMatrix &A) const |
| Checks if matrix A has proper dimensions. Throw, if not. | |
| virtual void | print (const char *label, const RefSCMatrix &A, std::ostream &os=ExEnv::out0()) const =0 |
| Prints A. | |
| virtual void | print (const char *label, const RefSymmSCMatrix &A, std::ostream &os=ExEnv::out0()) const =0 |
| Prints A. | |
| virtual void | print (const char *label, const RefDiagSCMatrix &A, std::ostream &os=ExEnv::out0()) const =0 |
| Prints A. | |
| virtual void | invert (RefSymmSCMatrix &A) const =0 |
| Inverts A in-place. | |
| virtual RefDiagSCMatrix | eigenvalues (const RefSymmSCMatrix &A) const =0 |
| Computes eigenvalues of A. | |
| virtual void | diagonalize (const RefSymmSCMatrix &A, RefDiagSCMatrix &evals, RefSCMatrix &evecs) const =0 |
| Computes eigenvalues and eigenvectors of A. evals and evecs don't have to be allocated. | |
| virtual void | transform (const RefSymmSCMatrix &B, const RefDiagSCMatrix &A, const RefSCMatrix &U) const =0 |
| B = U * A * U.t() | |
| virtual void | solve_linear_system (const RefSymmSCMatrix &A, RefSCMatrix &X, const RefSCMatrix &B) const =0 |
| Solves A*X = B. | |
| virtual void | solve_linear_system (unsigned int ij, const RefSymmSCMatrix &A, RefSCMatrix &X, const RefSCMatrix &B) const =0 |
| virtual void | times (const RefSymmSCMatrix &A, const RefSCMatrix &x, RefSCMatrix &y) const =0 |
| computes y = A x | |
| virtual void | times (unsigned int ij, const RefSymmSCMatrix &A, const RefSCMatrix &x, RefSCMatrix &y) const =0 |
| computes y = A x | |
| virtual RefSCVector | dot_product (const RefSCMatrix &A, const RefSCMatrix &B) const =0 |
| Computes "dot" product of A and B: tr[i] = sum_j A[j][i] B[j][i]. | |
Public Member Functions inherited from sc::RefCount | |
| size_t | identifier () const |
| Return the unique identifier for this object that can be compared for different objects of different types. | |
| int | lock_ptr () const |
| Lock this object. | |
| int | unlock_ptr () const |
| Unlock this object. | |
| void | use_locks (bool inVal) |
| start and stop using locks on this object | |
| refcount_t | nreference () const |
| Return the reference count. | |
| refcount_t | reference () |
| Increment the reference count and return the new count. | |
| refcount_t | dereference () |
| Decrement the reference count and return the new count. | |
| int | managed () const |
| Return 1 if the object is managed. Otherwise return 0. | |
Protected Attributes | |
| unsigned int | nocc_act_ |
| number of active occupied orbitals | |
| RefSCDimension | oodim_ |
| number of ij pairs | |
| RefSCDimension | xydim_ |
| number of xy pairs | |
| RefSCDimension | f12dim_ |
| number of geminals per pair times number of xy pairs | |
| RefSCDimension | gdim_ |
| number of geminals | |
| unsigned int | nf12_ |
| number of geminals | |
Additional Inherited Members | |
Protected Member Functions inherited from sc::RefCount | |
| RefCount (const RefCount &) | |
| RefCount & | operator= (const RefCount &) |
Class MP2R12EnergyUtil_base is the abstract interface to utility functions used by MP2R12Energy derivatives.
|
pure virtual |
Computes eigenvalues and eigenvectors of A. evals and evecs don't have to be allocated.
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
Computes "dot" product of A and B: tr[i] = sum_j A[j][i] B[j][i].
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
Computes eigenvalues of A.
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
Inverts A in-place.
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
Prints A.
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
Prints A.
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
Prints A.
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
Solves A*X = B.
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
computes y = A x
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
computes y = A x
Implemented in sc::MP2R12EnergyUtil_Nondiag.
|
pure virtual |
B = U * A * U.t()
Implemented in sc::MP2R12EnergyUtil_Nondiag.