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. More...
 
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. More...
 
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. More...
 
const std::vector< ContractedGaussianShell > & get_shells () const
 Returns a const reference to the shells. More...
 
bool has_guess_info () const
 
bool has_guesspsp_info () const
 
int nbf () const
 Returns the number of basis functions on the center. More...
 
int nshell () const
 Returns the number of shells on the center. More...
 
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, max, 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 madness::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, 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: