MADNESS 0.10.1
Public Member Functions | Private Attributes | List of all members
madness::Nuclear< T, NDIM > Class Template Reference

#include <SCFOperators.h>

Inheritance diagram for madness::Nuclear< T, NDIM >:
Inheritance graph
[legend]
Collaboration diagram for madness::Nuclear< T, NDIM >:
Collaboration graph
[legend]

Public Member Functions

 Nuclear (World &world, const Molecule &molecule)
 simple constructor takes a molecule, no nuclear correlation factor or core potentials
 
 Nuclear (World &world, const NemoBase *nemo)
 
 Nuclear (World &world, const SCF *calc)
 
 Nuclear (World &world, std::shared_ptr< NuclearCorrelationFactor > ncf)
 
std::string info () const
 print some information about this operator
 
T operator() (const Function< T, NDIM > &bra, const Function< T, NDIM > &ket) const
 compute the matrix element <bra | op | ket>
 
Function< T, NDIMoperator() (const Function< T, NDIM > &ket) const
 
Tensor< Toperator() (const std::vector< Function< T, NDIM > > &vbra, const std::vector< Function< T, NDIM > > &vket) const
 
std::vector< Function< T, NDIM > > operator() (const std::vector< Function< T, NDIM > > &vket) const
 
- Public Member Functions inherited from madness::SCFOperatorBase< T, NDIM >
 SCFOperatorBase ()=default
 
 SCFOperatorBase (std::shared_ptr< MacroTaskQ > taskq)
 
virtual ~SCFOperatorBase ()
 
virtual tensorT operator() (const vecfuncT &vbra, const vecfuncT &vket) const =0
 compute the matrix <vbra | op | vket>
 
virtual vecfuncT operator() (const vecfuncT &vket) const =0
 apply this operator on the argument vector of functions
 

Private Attributes

std::shared_ptr< NuclearCorrelationFactorncf
 
Worldworld
 

Additional Inherited Members

- Public Types inherited from madness::SCFOperatorBase< T, NDIM >
typedef Function< T, NDIMfunctionT
 
typedef Tensor< TtensorT
 
typedef std::vector< functionTvecfuncT
 
- Public Attributes inherited from madness::SCFOperatorBase< T, NDIM >
std::shared_ptr< MacroTaskQtaskq =0
 

Constructor & Destructor Documentation

◆ Nuclear() [1/4]

template<typename T , std::size_t NDIM>
madness::Nuclear< T, NDIM >::Nuclear ( World world,
const SCF calc 
)

◆ Nuclear() [2/4]

template<typename T , std::size_t NDIM>
madness::Nuclear< T, NDIM >::Nuclear ( World world,
const NemoBase nemo 
)

◆ Nuclear() [3/4]

template<typename T , std::size_t NDIM>
madness::Nuclear< T, NDIM >::Nuclear ( World world,
const Molecule molecule 
)

simple constructor takes a molecule, no nuclear correlation factor or core potentials

References MADNESS_CHECK, molecule, madness::Molecule::parameters, madness::Molecule::GeometryParameters::pure_ae(), and madness::Nuclear< T, NDIM >::world.

◆ Nuclear() [4/4]

template<typename T , std::size_t NDIM>
madness::Nuclear< T, NDIM >::Nuclear ( World world,
std::shared_ptr< NuclearCorrelationFactor ncf 
)
inline

Member Function Documentation

◆ info()

template<typename T , std::size_t NDIM>
std::string madness::Nuclear< T, NDIM >::info ( ) const
inlinevirtual

print some information about this operator

Implements madness::SCFOperatorBase< T, NDIM >.

◆ operator()() [1/4]

template<typename T , std::size_t NDIM>
T madness::Nuclear< T, NDIM >::operator() ( const Function< T, NDIM > &  bra,
const Function< T, NDIM > &  ket 
) const
inlinevirtual

compute the matrix element <bra | op | ket>

Parameters
brabra state
ketket state
Returns
the matrix element <bra | op | ket>

Implements madness::SCFOperatorBase< T, NDIM >.

References madness::inner().

◆ operator()() [2/4]

template<typename T , std::size_t NDIM>
Function< T, NDIM > madness::Nuclear< T, NDIM >::operator() ( const Function< T, NDIM > &  ket) const
inlinevirtual

apply this operator on the argument function

Parameters
ketthe argument function
Returns
op(ket)

Implements madness::SCFOperatorBase< T, NDIM >.

References madness::Nuclear< T, NDIM >::operator()().

Referenced by madness::Nuclear< T, NDIM >::operator()(), and madness::Nuclear< T, NDIM >::operator()().

◆ operator()() [3/4]

template<typename T , std::size_t NDIM>
Tensor< T > madness::Nuclear< T, NDIM >::operator() ( const std::vector< Function< T, NDIM > > &  vbra,
const std::vector< Function< T, NDIM > > &  vket 
) const
inline

◆ operator()() [4/4]

template<typename T , std::size_t NDIM>
std::vector< Function< T, NDIM > > madness::Nuclear< T, NDIM >::operator() ( const std::vector< Function< T, NDIM > > &  vket) const

Member Data Documentation

◆ ncf

template<typename T , std::size_t NDIM>
std::shared_ptr<NuclearCorrelationFactor> madness::Nuclear< T, NDIM >::ncf
private

◆ world

template<typename T , std::size_t NDIM>
World& madness::Nuclear< T, NDIM >::world
private

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