|
ampsci
High-precision calculations for one- and two-valence atomic systems
|
Virtual Core Polarisation class, for <a||dV||b>. See TDHF, DiagramRPA, etc.
#include <CorePolarisation.hpp>
Inheritance diagram for ExternalField::CorePolarisation:Public Member Functions | |
| double | last_eps () const |
| Returns eps (convergance) of last solve_core run. | |
| double | last_its () const |
| Returns its (# of iterations) of last solve_core run. | |
| double | last_omega () const |
| Returns omega (frequency) of last solve_core run. | |
| int | rank () const |
| int | parity () const |
| bool | imagQ () const |
| double & | eps_target () |
| Convergance target. | |
| double | eps_target () const |
| Convergance target. | |
| double | eta () const |
| Damping factor; 0 means no damping. Must have 0 <= eta < 1. | |
| void | set_eta (double eta) |
| Set/update damping factor; 0 means no damping. Must have 0 <= eta < 1. | |
| virtual Method | method () const =0 |
| Returns RPA method. | |
| virtual void | solve_core (double omega, int max_its=100, bool print=true)=0 |
| Solve RPA equations (for whichever method) for core. | |
| virtual void | clear ()=0 |
| Clears the internal state back to pre solve_core() | |
| virtual double | dV (const DiracSpinor &Fn, const DiracSpinor &Fm) const =0 |
| Calculate reduced matrix element <n||dV||m> | |
| virtual DiracSpinor | dV_rhs (int kappa, const DiracSpinor &Fm, bool conj=false) const |
| Calculates reduced right-hand-side, projected onto kappa: [dV|phi_m]_kappa. | |
| CorePolarisation & | operator= (const CorePolarisation &)=delete |
| CorePolarisation (const CorePolarisation &)=default | |
Protected Member Functions | |
| CorePolarisation (const DiracOperator::TensorOperator *const h) | |
Protected Attributes | |
| const DiracOperator::TensorOperator * | m_h |
| double | m_core_eps {1.0} |
| int | m_core_its {0} |
| double | m_core_omega {0.0} |
| int | m_rank |
| int | m_pi |
| bool | m_imag |
| double | m_eta {0.4} |
| double | m_eps {1.0e-10} |
|
inline |
Returns eps (convergance) of last solve_core run.
|
inline |
Returns its (# of iterations) of last solve_core run.
|
inline |
Returns omega (frequency) of last solve_core run.
|
inline |
Convergance target.
|
inline |
Convergance target.
|
inline |
Damping factor; 0 means no damping. Must have 0 <= eta < 1.
|
inline |
Set/update damping factor; 0 means no damping. Must have 0 <= eta < 1.
|
pure virtual |
Returns RPA method.
Implemented in ExternalField::DiagramRPA, ExternalField::TDHF, and ExternalField::TDHFbasis.
|
pure virtual |
Solve RPA equations (for whichever method) for core.
Implemented in ExternalField::TDHFbasis, ExternalField::TDHF, and ExternalField::DiagramRPA.
|
pure virtual |
Clears the internal state back to pre solve_core()
Implemented in ExternalField::DiagramRPA, and ExternalField::TDHF.
|
pure virtual |
Calculate reduced matrix element <n||dV||m>
Implemented in ExternalField::DiagramRPA, and ExternalField::TDHF.
|
inlinevirtual |
Calculates reduced right-hand-side, projected onto kappa: [dV|phi_m]_kappa.
Reimplemented in ExternalField::DiagramRPA, and ExternalField::TDHF.