ampsci
c++ program for high-precision atomic structure calculations of single-valence systems
|
Stores the CI Solutions for given J and parity (only two-electron). More...
#include <CSF.hpp>
Public Member Functions | |
PsiJPi (int twoJ, int pi, const std::vector< DiracSpinor > &cisp_basis) | |
Construct containter for CI solutions. Constructs the CSFs, but doesn't solve system; have to call solve(). | |
void | solve (const LinAlg::Matrix< double > &Hci, int num_solutions=0) |
Solves the CI equation for Hamiltonian matrix Hci; finds first num_solutions solutions. Doesn't set the Config info: have to call update_config_info() manually. More... | |
void | update_config_info (std::size_t i, const ConfigInfo &info) |
You must manuall update the config. info for each solution (if required) | |
const std::vector< CSF2 > & | CSFs () const |
Full list of CSFs. | |
const CSF2 & | CSF (std::size_t i) const |
The ith CSF. | |
double | energy (std::size_t i) const |
Energy of the ith CI solution. | |
LinAlg::View< const double > | coefs (std::size_t i) const |
List of CI expansion coefs for the ith CI solution. | |
double | coef (std::size_t i, std::size_t j) const |
The CI coeficient for the ith CI solution, corresponding to the jth CSF. | |
int | parity () const |
Parity for the CI solutions (+/-1) | |
int | twoJ () const |
2J for the CI solutions | |
std::size_t | num_solutions () const |
Number of CI solutions stored. | |
const ConfigInfo & | info (std::size_t i) const |
Configuration info for the ith CI solution, if it has been set. | |
Stores the CI Solutions for given J and parity (only two-electron).
void CI::PsiJPi::solve | ( | const LinAlg::Matrix< double > & | Hci, |
int | num_solutions = 0 |
||
) |
Solves the CI equation for Hamiltonian matrix Hci; finds first num_solutions solutions. Doesn't set the Config info: have to call update_config_info() manually.
If num_solutions=0 (or not given), will calculate all solutions