![]() |
|
High-precision calculations for one- and two-valence atomic systems
|
The integral tables required to construct the CI Hamiltonian matrix.
Everything needed to construct the CI Hamiltonian for any (J, parity), as it was constructed for the CI solutions: the single-particle basis, the one-body matrix elements (which may include \( \Sigma_1 \)), and the two-body Coulomb, Breit and \( \Sigma_2 \) tables.
Filled by configuration_interaction and stored in the Wavefunction (see Wavefunction::CI_integrals), so that later calculations can construct CI Hamiltonians - e.g., for the mixed-states equation, solve_mixed_state - without recalculating any integrals.
#include <CI_Integrals.hpp>
Public Member Functions | |
| bool | availableQ () const |
| False if the tables were never calculated (e.g., CI was run 'read_only') | |
Public Attributes | |
| std::vector< DiracSpinor > | ci_basis {} |
| Single-particle basis used for the CI expansion. | |
| Coulomb::meTable< double > | h1 {} |
| One-body matrix elements, <a|h1|b>; may include Sigma_1. | |
| Coulomb::QkTable | qk {} |
| Two-body Coulomb integrals, Q^k. | |
| Coulomb::WkTable | Bk {} |
| Two-body Breit integrals, B^k; empty if not included. | |
| Coulomb::LkTable | Sk {} |
| Two-body Sigma_2 integrals, S^k; empty if not included. | |
| std::vector< double > | hk {} |
| Average S^k/Q^k ratios, indexed by k; empty if Sigma_2 is not being extrapolated beyond the cis2 basis. Diagrams with no stored S^k then use S^k = hk[k] * Q^k. See MBPT::average_hk. | |
| Coulomb::LkTable | dSk {} |
| Energy derivatives dS^k/dE0 of the Sigma_2 integrals; empty unless the Brillouin-Wigner (E0-dependent) Sigma_2 correction is included. See CI::corrected_Sk. | |
| double | E0_sigma2 {0.0} |
| Reference E0 that Sk and dSk were tabulated at (Brillouin-Wigner) | |
| Sigma1Correction | s1_corr {} |
| Derivative (dSigma/dE) correction for Sigma_1; empty if not included. | |
|
inline |
False if the tables were never calculated (e.g., CI was run 'read_only')
| std::vector<DiracSpinor> CI::Integrals::ci_basis {} |
Single-particle basis used for the CI expansion.
| Coulomb::meTable<double> CI::Integrals::h1 {} |
One-body matrix elements, <a|h1|b>; may include Sigma_1.
| Coulomb::QkTable CI::Integrals::qk {} |
Two-body Coulomb integrals, Q^k.
| Coulomb::WkTable CI::Integrals::Bk {} |
Two-body Breit integrals, B^k; empty if not included.
| Coulomb::LkTable CI::Integrals::Sk {} |
Two-body Sigma_2 integrals, S^k; empty if not included.
| std::vector<double> CI::Integrals::hk {} |
Average S^k/Q^k ratios, indexed by k; empty if Sigma_2 is not being extrapolated beyond the cis2 basis. Diagrams with no stored S^k then use S^k = hk[k] * Q^k. See MBPT::average_hk.
| Coulomb::LkTable CI::Integrals::dSk {} |
Energy derivatives dS^k/dE0 of the Sigma_2 integrals; empty unless the Brillouin-Wigner (E0-dependent) Sigma_2 correction is included. See CI::corrected_Sk.
| double CI::Integrals::E0_sigma2 {0.0} |
Reference E0 that Sk and dSk were tabulated at (Brillouin-Wigner)
| Sigma1Correction CI::Integrals::s1_corr {} |
Derivative (dSigma/dE) correction for Sigma_1; empty if not included.