MADNESS  0.10.1
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
madness::Zcis Class Reference

#include <zcis.h>

Inheritance diagram for madness::Zcis:
Inheritance graph
[legend]
Collaboration diagram for madness::Zcis:
Collaboration graph
[legend]

Classes

struct  root
 

Public Member Functions

 Zcis (World &w, const commandlineparser &parser, std::shared_ptr< Znemo > n)
 
virtual ~Zcis ()
 
std::vector< complex_function_3dactive_mo (const std::vector< complex_function_3d > &mo) const
 return the active orbitals only More...
 
void canonicalize (const std::vector< complex_function_3d > &mo, const real_function_3d &density, std::vector< complex_function_3d > &virtuals, Tensor< double > &veps) const
 
void compare_to_file (const std::vector< complex_function_3d > &rhs, const std::string name) const
 
Tensor< double_complexcompute_fock_pt (const std::vector< root > &roots) const
 
void compute_potentials (std::vector< root > &roots, const real_function_3d &totdens) const
 
std::vector< complex_function_3dcompute_residuals (root &root) const
 
void iterate (std::vector< root > &roots) const
 iterate the roots More...
 
Tensor< double_complexmake_CIS_matrix (const Tensor< double > &veps, const Tensor< double > &oeps) const
 
std::vector< rootmake_guess () const
 
std::string name () const
 
Tensor< double > noct (const Tensor< double > &eps) const
 return the active orbitals only More...
 
void normalize (std::vector< root > &roots) const
 
void orthonormalize (std::vector< root > &roots) const
 
void orthonormalize (std::vector< root > &roots, const Tensor< double_complex > &fock_pt_a) const
 
std::vector< rootread_guess () const
 
void save_guess (const std::vector< root > &roots) const
 
virtual bool selftest ()
 
double value ()
 

Static Public Member Functions

template<typename T >
static Tensor< Tconcatenate (const Tensor< T > &t1, const Tensor< T > &t2)
 little helper function More...
 
static void help ()
 
static void print_parameters ()
 
static std::tuple< std::vector< complex_function_3d >, std::vector< complex_function_3d > > split (const std::vector< complex_function_3d > &rhs, int dim1)
 
template<typename T >
static std::tuple< Tensor< T >, Tensor< T > > split (const Tensor< T > &rhs, int dim1)
 
static std::vector< roottransform (World &world, const std::vector< root > &v, const Tensor< double_complex > &c, bool fence=true)
 

Public Attributes

Complex_CIS_Parameters cis_param
 the parameters More...
 
std::shared_ptr< Znemonemo
 the reference More...
 
QProjector< double_complex, 3 > Qa
 orthogonality projector More...
 
QProjector< double_complex, 3 > Qb
 
std::vector< rootroots
 the x vectors More...
 
Worldworld
 the world More...
 

Constructor & Destructor Documentation

◆ Zcis()

madness::Zcis::Zcis ( World w,
const commandlineparser parser,
std::shared_ptr< Znemo n 
)
inline

◆ ~Zcis()

virtual madness::Zcis::~Zcis ( )
inlinevirtual

Member Function Documentation

◆ active_mo()

std::vector<complex_function_3d> madness::Zcis::active_mo ( const std::vector< complex_function_3d > &  mo) const
inline

return the active orbitals only

References cis_param, and madness::Complex_CIS_Parameters::freeze().

Referenced by compute_potentials(), iterate(), and make_guess().

◆ canonicalize()

void madness::Zcis::canonicalize ( const std::vector< complex_function_3d > &  mo,
const real_function_3d density,
std::vector< complex_function_3d > &  virtuals,
Tensor< double > &  veps 
) const

◆ compare_to_file()

void madness::Zcis::compare_to_file ( const std::vector< complex_function_3d > &  rhs,
const std::string  name 
) const
inline

◆ compute_fock_pt()

Tensor< double_complex > madness::Zcis::compute_fock_pt ( const std::vector< root > &  roots) const

◆ compute_potentials()

void madness::Zcis::compute_potentials ( std::vector< root > &  roots,
const real_function_3d totdens 
) const

◆ compute_residuals()

std::vector< complex_function_3d > madness::Zcis::compute_residuals ( root root) const

◆ concatenate()

template<typename T >
static Tensor<T> madness::Zcis::concatenate ( const Tensor< T > &  t1,
const Tensor< T > &  t2 
)
inlinestatic

little helper function

References MADNESS_ASSERT, madness::BaseTensor::ndim(), and madness::BaseTensor::size().

Referenced by compute_residuals(), and make_guess().

◆ help()

static void madness::Zcis::help ( )
inlinestatic

References madness::print(), and madness::print_header2().

Referenced by main().

◆ iterate()

void madness::Zcis::iterate ( std::vector< root > &  roots) const

◆ make_CIS_matrix()

Tensor< double_complex > madness::Zcis::make_CIS_matrix ( const Tensor< double > &  veps,
const Tensor< double > &  oeps 
) const

References a, I, and madness::BaseTensor::size().

Referenced by make_guess().

◆ make_guess()

std::vector< Zcis::root > madness::Zcis::make_guess ( ) const

◆ name()

std::string madness::Zcis::name ( ) const
inlinevirtual

◆ noct()

Tensor<double> madness::Zcis::noct ( const Tensor< double > &  eps) const
inline

◆ normalize()

void madness::Zcis::normalize ( std::vector< root > &  roots) const

◆ orthonormalize() [1/2]

void madness::Zcis::orthonormalize ( std::vector< root > &  roots) const

◆ orthonormalize() [2/2]

void madness::Zcis::orthonormalize ( std::vector< root > &  roots,
const Tensor< double_complex > &  fock_pt_a 
) const

◆ print_parameters()

static void madness::Zcis::print_parameters ( )
inlinestatic

◆ read_guess()

std::vector< Zcis::root > madness::Zcis::read_guess ( ) const

◆ save_guess()

void madness::Zcis::save_guess ( const std::vector< root > &  roots) const

References a, madness::g, name(), madness::print(), roots, and world.

Referenced by value().

◆ selftest()

virtual bool madness::Zcis::selftest ( )
inlinevirtual

◆ split() [1/2]

static std::tuple<std::vector<complex_function_3d>, std::vector<complex_function_3d> > madness::Zcis::split ( const std::vector< complex_function_3d > &  rhs,
int  dim1 
)
inlinestatic

References madness::copy(), and MADNESS_ASSERT.

◆ split() [2/2]

template<typename T >
static std::tuple<Tensor<T>, Tensor<T> > madness::Zcis::split ( const Tensor< T > &  rhs,
int  dim1 
)
inlinestatic

◆ transform()

static std::vector<root> madness::Zcis::transform ( World world,
const std::vector< root > &  v,
const Tensor< double_complex > &  c,
bool  fence = true 
)
inlinestatic

◆ value()

double madness::Zcis::value ( )

Member Data Documentation

◆ cis_param

Complex_CIS_Parameters madness::Zcis::cis_param

◆ nemo

std::shared_ptr<Znemo> madness::Zcis::nemo

◆ Qa

QProjector<double_complex,3> madness::Zcis::Qa

orthogonality projector

Referenced by Zcis(), compute_potentials(), compute_residuals(), make_guess(), and value().

◆ Qb

QProjector<double_complex,3> madness::Zcis::Qb

◆ roots

std::vector<root> madness::Zcis::roots

◆ world

World& madness::Zcis::world

The documentation for this class was generated from the following files: