MPQC
3.0.0-alpha
|
#include <mpqc/ci/ci.hpp>
Classes | |
struct | IO |
struct | Sort |
compare-by-rank functor More... | |
Public Member Functions | |
template<class Spin > | |
const ci::String::List< Index > & | strings () const |
size_t | dets () const |
const std::vector< mpqc::range > & | local () const |
int | excitation (const String &s) const |
rank/excitation of the string relative to its ground state, ie [11..00] | |
CI (const Config &config, MPI::Comm comm, File::Group io) | |
Construct CI base given configuration and communicator. More... | |
bool | test (const String &a) const |
test if string is allowed | |
bool | test (const Space< Alpha > &a, const Space< Beta > &b) const |
test if space configuration is allowed | |
Static Public Member Functions | |
template<class Spin > | |
static int | diff (const Space< Spin > &a, const Space< Spin > &b) |
test if space configuration is allowed | |
Public Attributes | |
const ci::Config | config |
CI configuration. | |
ci::String::List< Index > | alpha |
Alpha string list. | |
ci::String::List< Index > | beta |
Beta string list. | |
SubspaceGrid | subspace |
CI subspaces grid. | |
MPI::Comm | comm |
CI communicator. | |
mpqc::ci::CI::IO | vector |
CI vectors b (aka C), Hb (aka sigma) file datasets. | |
Protected Member Functions | |
void | guess () |
initialize guess vector | |
template<class Spin > | |
std::vector< Subspace< Spin > > | sort (ci::String::List< Index > &S) const |
sort string list by rank/excitation and return vector of spaces, where each space corresponds to range of strings of the same rank | |
Static Protected Member Functions | |
template<class Spin > | |
static void | print (std::ostream &out, const std::string &header, const std::vector< Subspace< Spin > > &S) |
prints CI configuration summary | |
Protected Attributes | |
std::vector< mpqc::range > | locals_ |
CI class template.
Base CI class, specific CIs (Full, Restricted, etc) should be derived from this base.
Specific CI cases should specialize this template.
|
inline |
Construct CI base given configuration and communicator.
Strings will be sorted lexicographically AND by excitation
References mpqc::ci::CI< CIFunctor, Index >::alpha, mpqc::ci::CI< CIFunctor, Index >::beta, mpqc::ci::Config::block, mpqc::ci::Config::chunk, mpqc::ci::Config::compress, mpqc::ci::SubspaceGrid::dets(), mpqc::ci::CI< CIFunctor, Index >::guess(), mpqc::ci::Config::max, sc::ExEnv::out0(), mpqc::partition(), mpqc::ci::CI< CIFunctor, Index >::print(), and mpqc::split().