MADNESS 0.10.1
Public Member Functions | Private Attributes | List of all members
madness::AtomicBasis Class Reference

Represents multiple shells of contracted gaussians on a single center. More...

#include <molecularbasis.h>

Collaboration diagram for madness::AtomicBasis:
Collaboration graph
[legend]

Public Member Functions

 AtomicBasis ()
 
 AtomicBasis (const std::vector< ContractedGaussianShell > &g)
 
double * eval (double x, double y, double z, double *bf) const
 Evaluates the basis functions at point x, y, z relative to atomic center.
 
double eval_guess_density (double x, double y, double z, bool pspat) const
 Evaluates the guess atomic density at point x, y, z relative to atomic center.
 
const Tensor< double > & get_aeps () const
 
const Tensor< double > & get_aocc () const
 
const Tensor< double > & get_aoccpsp () const
 
const Tensor< double > & get_avec () const
 
const Tensor< double > & get_beps () const
 
const Tensor< double > & get_bocc () const
 
const Tensor< double > & get_boccpsp () const
 
const Tensor< double > & get_bvec () const
 
const Tensor< double > & get_dmat () const
 
const Tensor< double > & get_dmatpsp () const
 
const ContractedGaussianShellget_shell_from_basis_function (int ibf, int &ibf_in_shell) const
 Return shell that contains basis function ibf and also return index of function in the shell.
 
const std::vector< ContractedGaussianShell > & get_shells () const
 Returns a const reference to the shells.
 
bool has_guess_info () const
 
bool has_guesspsp_info () const
 
int nbf () const
 Returns the number of basis functions on the center.
 
int nshell () const
 Returns the number of shells on the center.
 
template<typename Archive >
void serialize (Archive &ar)
 
void set_aocc (Tensor< double > &occ)
 
void set_aoccpsp (Tensor< double > &occ)
 
void set_bocc (Tensor< double > &occ)
 
void set_boccpsp (Tensor< double > &occ)
 
void set_dmat (Tensor< double > &mat)
 
void set_dmatpsp (Tensor< double > &mat)
 
void set_guess_info (const Tensor< double > &dmat, const Tensor< double > &dmatpsp, const Tensor< double > &avec, const Tensor< double > &bvec, const Tensor< double > &aocc, const Tensor< double > &bocc, const Tensor< double > &aeps, const Tensor< double > &beps, const Tensor< double > &aoccpsp, const Tensor< double > &boccpsp)
 

Private Attributes

Tensor< double > aeps
 
Tensor< double > aocc
 
Tensor< double > aoccpsp
 
Tensor< double > avec
 
Tensor< double > beps
 
Tensor< double > bocc
 
Tensor< double > boccpsp
 
Tensor< double > bvec
 
Tensor< double > dmat
 
Tensor< double > dmatpsp
 
std::vector< ContractedGaussianShellg
 
int numbf
 
double rmaxsq
 

Detailed Description

Represents multiple shells of contracted gaussians on a single center.

Constructor & Destructor Documentation

◆ AtomicBasis() [1/2]

madness::AtomicBasis::AtomicBasis ( )
inline

◆ AtomicBasis() [2/2]

madness::AtomicBasis::AtomicBasis ( const std::vector< ContractedGaussianShell > &  g)
inline

References g, numbf, and rmaxsq.

Member Function Documentation

◆ eval()

double * madness::AtomicBasis::eval ( double  x,
double  y,
double  z,
double *  bf 
) const
inline

Evaluates the basis functions at point x, y, z relative to atomic center.

The array bf[] must be large enough to hold nbf() values.

Returned is the incremented pointer.

References g, MADNESS_CHECK, numbf, and rmaxsq.

Referenced by eval_guess_density().

◆ eval_guess_density()

double madness::AtomicBasis::eval_guess_density ( double  x,
double  y,
double  z,
bool  pspat 
) const
inline

Evaluates the guess atomic density at point x, y, z relative to atomic center.

References dmat, dmatpsp, eval(), has_guess_info(), MADNESS_ASSERT, numbf, p(), madness::Tensor< T >::ptr(), rmaxsq, and sum.

◆ get_aeps()

const Tensor< double > & madness::AtomicBasis::get_aeps ( ) const
inline

References aeps.

◆ get_aocc()

const Tensor< double > & madness::AtomicBasis::get_aocc ( ) const
inline

References aocc.

◆ get_aoccpsp()

const Tensor< double > & madness::AtomicBasis::get_aoccpsp ( ) const
inline

References aoccpsp.

◆ get_avec()

const Tensor< double > & madness::AtomicBasis::get_avec ( ) const
inline

References avec.

◆ get_beps()

const Tensor< double > & madness::AtomicBasis::get_beps ( ) const
inline

References beps.

◆ get_bocc()

const Tensor< double > & madness::AtomicBasis::get_bocc ( ) const
inline

References bocc.

◆ get_boccpsp()

const Tensor< double > & madness::AtomicBasis::get_boccpsp ( ) const
inline

References boccpsp.

◆ get_bvec()

const Tensor< double > & madness::AtomicBasis::get_bvec ( ) const
inline

References bvec.

◆ get_dmat()

const Tensor< double > & madness::AtomicBasis::get_dmat ( ) const
inline

References dmat.

◆ get_dmatpsp()

const Tensor< double > & madness::AtomicBasis::get_dmatpsp ( ) const
inline

References dmatpsp.

◆ get_shell_from_basis_function()

const ContractedGaussianShell & madness::AtomicBasis::get_shell_from_basis_function ( int  ibf,
int &  ibf_in_shell 
) const
inline

Return shell that contains basis function ibf and also return index of function in the shell.

References g, MADNESS_EXCEPTION, madness::ContractedGaussianShell::nbf(), and nbf().

◆ get_shells()

const std::vector< ContractedGaussianShell > & madness::AtomicBasis::get_shells ( ) const
inline

Returns a const reference to the shells.

References g.

◆ has_guess_info()

bool madness::AtomicBasis::has_guess_info ( ) const
inline

References dmat, and madness::BaseTensor::size().

Referenced by eval_guess_density().

◆ has_guesspsp_info()

bool madness::AtomicBasis::has_guesspsp_info ( ) const
inline

◆ nbf()

int madness::AtomicBasis::nbf ( ) const
inline

Returns the number of basis functions on the center.

References numbf.

Referenced by get_shell_from_basis_function().

◆ nshell()

int madness::AtomicBasis::nshell ( ) const
inline

Returns the number of shells on the center.

References g.

◆ serialize()

template<typename Archive >
void madness::AtomicBasis::serialize ( Archive &  ar)
inline

References aeps, aocc, aoccpsp, avec, beps, bocc, boccpsp, bvec, dmat, dmatpsp, g, numbf, and rmaxsq.

◆ set_aocc()

void madness::AtomicBasis::set_aocc ( Tensor< double > &  occ)
inline

References aocc.

◆ set_aoccpsp()

void madness::AtomicBasis::set_aoccpsp ( Tensor< double > &  occ)
inline

References aoccpsp.

◆ set_bocc()

void madness::AtomicBasis::set_bocc ( Tensor< double > &  occ)
inline

References bocc.

◆ set_boccpsp()

void madness::AtomicBasis::set_boccpsp ( Tensor< double > &  occ)
inline

References boccpsp.

◆ set_dmat()

void madness::AtomicBasis::set_dmat ( Tensor< double > &  mat)
inline

References dmat.

◆ set_dmatpsp()

void madness::AtomicBasis::set_dmatpsp ( Tensor< double > &  mat)
inline

References dmatpsp.

◆ set_guess_info()

void madness::AtomicBasis::set_guess_info ( const Tensor< double > &  dmat,
const Tensor< double > &  dmatpsp,
const Tensor< double > &  avec,
const Tensor< double > &  bvec,
const Tensor< double > &  aocc,
const Tensor< double > &  bocc,
const Tensor< double > &  aeps,
const Tensor< double > &  beps,
const Tensor< double > &  aoccpsp,
const Tensor< double > &  boccpsp 
)
inline

Member Data Documentation

◆ aeps

Tensor<double> madness::AtomicBasis::aeps
private

Referenced by get_aeps(), serialize(), and set_guess_info().

◆ aocc

Tensor<double> madness::AtomicBasis::aocc
private

◆ aoccpsp

Tensor<double> madness::AtomicBasis::aoccpsp
private

◆ avec

Tensor<double> madness::AtomicBasis::avec
private

Referenced by get_avec(), serialize(), and set_guess_info().

◆ beps

Tensor<double> madness::AtomicBasis::beps
private

Referenced by get_beps(), serialize(), and set_guess_info().

◆ bocc

Tensor<double> madness::AtomicBasis::bocc
private

◆ boccpsp

Tensor<double> madness::AtomicBasis::boccpsp
private

◆ bvec

Tensor<double> madness::AtomicBasis::bvec
private

Referenced by get_bvec(), serialize(), and set_guess_info().

◆ dmat

Tensor<double> madness::AtomicBasis::dmat
private

◆ dmatpsp

Tensor<double> madness::AtomicBasis::dmatpsp
private

◆ g

std::vector<ContractedGaussianShell> madness::AtomicBasis::g
private

◆ numbf

int madness::AtomicBasis::numbf
private

◆ rmaxsq

double madness::AtomicBasis::rmaxsq
private

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