MADNESS  0.10.1
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
slymer::ES_Interface Class Referenceabstract

Abstract base class for interfacing with electronic structure codes. More...

#include <ESInterface.h>

Inheritance diagram for slymer::ES_Interface:
Inheritance graph
[legend]
Collaboration diagram for slymer::ES_Interface:
Collaboration graph
[legend]

Public Member Functions

 ES_Interface ()=delete
 No default constructor. More...
 
 ES_Interface (const ES_Interface &es)
 Copy constructor. More...
 
 ES_Interface (ES_Interface &&es)
 Move constructor. More...
 
 ES_Interface (std::ostream &err_)
 Constructor that sets the error/warning stream and the references. More...
 
virtual ~ES_Interface ()=default
 
virtual void read (Properties::Properties props)=0
 Read the specified properties and store them in the member variables. More...
 

Public Attributes

const Atomsatoms
 Publically accessible list of atoms. More...
 
const BasisSetbasis_set
 Publicly accessible basis set. More...
 
const madness::Tensor< double > & beta_energies
 Publically accessible list of beta MO energies (in eV). More...
 
const madness::Tensor< double > & beta_MOs
 Publically accessible beta MO expansions coefficients. Column is the MO, row is the basis function. More...
 
const madness::Tensor< double > & beta_occupancies
 Publically accessible list of beta MO occupancies (in eV). More...
 
const madness::Tensor< double > & energies
 Publically accessible list of alpha MO energies. More...
 
std::reference_wrapper< std::ostream > err
 Output stream for messages. More...
 
const unsigned int & lineardeps
 Publically accessible number of linear dependencies. More...
 
const madness::Tensor< double > & MOs
 Publically accessible alpha MO expansions coefficients. Column is the MO, row is the basis function. More...
 
const madness::Tensor< double > & occupancies
 Publically accessible list of alpha MO occupancies (in eV). More...
 
const Properties::Propertiesproperties
 Publically accessible list of read properties. More...
 

Protected Member Functions

void reset ()
 Reset the interface. More...
 

Protected Attributes

Atoms my_atoms
 The atoms (symbols and positions, in angstroms). More...
 
BasisSet my_basis_set
 The basis set. More...
 
madness::Tensor< double > my_beta_energies
 Beta molecular orbital energies. More...
 
madness::Tensor< double > my_beta_MOs
 Beta molecular orbital expansions coefficients. Column is the MO, row is the basis function. More...
 
madness::Tensor< double > my_beta_occupancies
 Beta molecular orbital occupancies. More...
 
madness::Tensor< double > my_energies
 Alpha molecular orbital energies. More...
 
unsigned int my_lineardeps
 Number of linear dependencies in the basis. More...
 
madness::Tensor< double > my_MOs
 Alpha molecular orbital expansions coefficients. Column is the MO, row is the basis function. More...
 
madness::Tensor< double > my_occupancies
 Alpha molecular orbital occupancies. More...
 
Properties::Properties my_properties
 The properties that have been read. More...
 

Detailed Description

Abstract base class for interfacing with electronic structure codes.

Constructor & Destructor Documentation

◆ ES_Interface() [1/4]

slymer::ES_Interface::ES_Interface ( )
delete

No default constructor.

◆ ES_Interface() [2/4]

slymer::ES_Interface::ES_Interface ( ES_Interface &&  es)
inline

Move constructor.

Parameters
[in]esThe existing interface to move.

◆ ES_Interface() [3/4]

slymer::ES_Interface::ES_Interface ( const ES_Interface es)
inline

Copy constructor.

Parameters
[in]esThe existing interface to copy.

◆ ES_Interface() [4/4]

slymer::ES_Interface::ES_Interface ( std::ostream &  err_)
inline

Constructor that sets the error/warning stream and the references.

Parameters
[in,out]err_Output stream for messages. This can be updated later.

◆ ~ES_Interface()

virtual slymer::ES_Interface::~ES_Interface ( )
virtualdefault

Member Function Documentation

◆ read()

virtual void slymer::ES_Interface::read ( Properties::Properties  props)
pure virtual

Read the specified properties and store them in the member variables.

Parameters
[in]propsThe properties to be read, using a bit flag combination.

Implemented in slymer::NWChem_Interface.

◆ reset()

void slymer::ES_Interface::reset ( )
inlineprotected

Member Data Documentation

◆ atoms

const Atoms& slymer::ES_Interface::atoms

◆ basis_set

const BasisSet& slymer::ES_Interface::basis_set

◆ beta_energies

const madness::Tensor<double>& slymer::ES_Interface::beta_energies

Publically accessible list of beta MO energies (in eV).

Referenced by madness::SCF::initial_guess(), and madness::InitParameters::readnw().

◆ beta_MOs

const madness::Tensor<double>& slymer::ES_Interface::beta_MOs

Publically accessible beta MO expansions coefficients. Column is the MO, row is the basis function.

Referenced by madness::SCF::initial_guess().

◆ beta_occupancies

const madness::Tensor<double>& slymer::ES_Interface::beta_occupancies

Publically accessible list of beta MO occupancies (in eV).

Referenced by madness::SCF::initial_guess(), and madness::InitParameters::readnw().

◆ energies

const madness::Tensor<double>& slymer::ES_Interface::energies

Publically accessible list of alpha MO energies.

Referenced by madness::SCF::initial_guess(), and madness::InitParameters::readnw().

◆ err

std::reference_wrapper<std::ostream> slymer::ES_Interface::err

◆ lineardeps

const unsigned int& slymer::ES_Interface::lineardeps

Publically accessible number of linear dependencies.

◆ MOs

const madness::Tensor<double>& slymer::ES_Interface::MOs

Publically accessible alpha MO expansions coefficients. Column is the MO, row is the basis function.

Referenced by madness::SCF::initial_guess(), and madness::InitParameters::readnw().

◆ my_atoms

Atoms slymer::ES_Interface::my_atoms
protected

The atoms (symbols and positions, in angstroms).

Referenced by slymer::NWChem_Interface::read_atoms(), and reset().

◆ my_basis_set

BasisSet slymer::ES_Interface::my_basis_set
protected

The basis set.

Referenced by slymer::NWChem_Interface::read_basis_set(), and reset().

◆ my_beta_energies

madness::Tensor<double> slymer::ES_Interface::my_beta_energies
protected

Beta molecular orbital energies.

Referenced by slymer::NWChem_Interface::read_movecs(), and reset().

◆ my_beta_MOs

madness::Tensor<double> slymer::ES_Interface::my_beta_MOs
protected

Beta molecular orbital expansions coefficients. Column is the MO, row is the basis function.

Referenced by slymer::NWChem_Interface::read_movecs(), and reset().

◆ my_beta_occupancies

madness::Tensor<double> slymer::ES_Interface::my_beta_occupancies
protected

Beta molecular orbital occupancies.

Referenced by slymer::NWChem_Interface::read_movecs(), and reset().

◆ my_energies

madness::Tensor<double> slymer::ES_Interface::my_energies
protected

Alpha molecular orbital energies.

Referenced by slymer::NWChem_Interface::read_movecs(), and reset().

◆ my_lineardeps

unsigned int slymer::ES_Interface::my_lineardeps
protected

Number of linear dependencies in the basis.

Referenced by slymer::NWChem_Interface::read_basis_set(), slymer::NWChem_Interface::read_movecs(), and reset().

◆ my_MOs

madness::Tensor<double> slymer::ES_Interface::my_MOs
protected

Alpha molecular orbital expansions coefficients. Column is the MO, row is the basis function.

Referenced by slymer::NWChem_Interface::read_movecs(), and reset().

◆ my_occupancies

madness::Tensor<double> slymer::ES_Interface::my_occupancies
protected

Alpha molecular orbital occupancies.

Referenced by slymer::NWChem_Interface::read_movecs(), and reset().

◆ my_properties

Properties::Properties slymer::ES_Interface::my_properties
protected

◆ occupancies

const madness::Tensor<double>& slymer::ES_Interface::occupancies

Publically accessible list of alpha MO occupancies (in eV).

Referenced by madness::SCF::initial_guess(), and madness::InitParameters::readnw().

◆ properties

const Properties::Properties& slymer::ES_Interface::properties

Publically accessible list of read properties.

Referenced by slymer::NWChem_Interface::read_movecs().


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