MADNESS
version 0.9
|
The CIS class holds all machinery to compute excited state properties. More...
#include <tdhf_CIS.h>
Public Member Functions | |
CIS (World &world, const SCF &calc, const std::string input) | |
ctor More... | |
const SCF & | get_calc () const |
return the HF reference More... | |
void | print_roots (const std::vector< root > &roots) const |
void | print_roots (const std::vector< root > &roots, const int iter) const |
Print information of root vector. More... | |
void | print_root (const root &root) const |
void | sort_roots (std::vector< root > &roots, std::string criterium) const |
If roots[j] < roots[i] and i<j then the roots will switch places. More... | |
void | Analyze () |
Read and analyze roots. More... | |
void | solve () |
solve the CIS equations for n roots More... | |
bool | solve_internal_par (const std::string mode, std::vector< root > &roots, const int iter_max) |
std::vector< root > & | roots () |
return the roots of the response equation More... | |
bool | print_grid () const |
are we supposed to print the grid for an external guess More... | |
The CIS class holds all machinery to compute excited state properties.
ctor
[in] | world | the world |
[in] | hf | the HartreeFock reference state |
[in] | input | the input file name |
References madness::SCF::aeps, madness::SCF::amo, madness::f, get_calc(), madness::CalculationParameters::lo, param, madness::SCF::param, madness::position_stream(), madness::print(), and madness::World::rank().
void CIS::Analyze | ( | ) |
|
inline |
return the HF reference
Referenced by CIS(), solve(), and solve_internal_par().
bool CIS::print_grid | ( | ) | const |
are we supposed to print the grid for an external guess
void CIS::print_root | ( | const root & | root | ) | const |
References root::converged, root::delta, root::err, root::expv, root::iter, root::number, root::omega, and madness::World::rank().
Referenced by print_roots().
void CIS::print_roots | ( | const std::vector< root > & | roots | ) | const |
References madness::print(), print_root(), and madness::World::rank().
void CIS::print_roots | ( | const std::vector< root > & | roots, |
const int | iter | ||
) | const |
Print information of root vector.
References root::converged, root::delta, root::err, root::expv, root::iter, root::number, root::omega, madness::print(), print_root(), madness::World::rank(), sort_roots(), and root::world.
std::vector< root > & CIS::roots | ( | ) |
void CIS::solve | ( | ) |
solve the CIS equations for n roots
References madness::SCF::amo, get_calc(), madness::plot_plane(), roots(), and solve_internal_par().
bool CIS::solve_internal_par | ( | const std::string | mode, |
std::vector< root > & | roots, | ||
const int | iter_max | ||
) |
!!!!!!!!!!!!!! for now this works because the second order update uses KAIN and fock update doesnt
References madness::SCF::amo, get_calc(), MADNESS_EXCEPTION, madness::print(), madness::World::rank(), and madness::XNonlinearSolver< T, C, Alloc >::set_maxsub().
Referenced by solve().
void CIS::sort_roots | ( | std::vector< root > & | roots, |
std::string | criterium | ||
) | const |
If roots[j] < roots[i] and i<j then the roots will switch places.
References madness::print(), and madness::World::rank().
Referenced by print_roots().