MADNESS  version 0.9
Classes | Public Member Functions | List of all members
madness::AtomicBasisSet Class Reference

Contracted Gaussian basis. More...

#include <molecularbasis.h>

Classes

class  AnalysisSorter
 

Public Member Functions

 AtomicBasisSet ()
 
 AtomicBasisSet (std::string filename)
 
void read_file (std::string filename)
 read the atomic basis set from file More...
 
void atoms_to_bfn (const Molecule &molecule, std::vector< int > &at_to_bf, std::vector< int > &at_nbf)
 Makes map from atoms to first basis function on atom and number of basis functions on atom. More...
 
int basisfn_to_atom (const Molecule &molecule, int ibf) const
 Returns the number of the atom the ibf'th basis function is on. More...
 
AtomicBasisFunction get_atomic_basis_function (const Molecule &molecule, int ibf) const
 Returns the ibf'th atomic basis function. More...
 
int nbf (const Molecule &molecule) const
 Given a molecule count the number of basis functions. More...
 
void eval (const Molecule &molecule, double x, double y, double z, double *bf) const
 Evaluates the basis functions. More...
 
double eval_guess_density (const Molecule &molecule, double x, double y, double z) const
 Evaluates the guess density. More...
 
bool is_supported (int atomic_number) const
 
void print (const Molecule &molecule) const
 Print basis info for atoms in the molecule (once for each unique atom type) More...
 
template<typename T >
void print_anal (const Molecule &molecule, const Tensor< T > &v)
 Given a vector of AO coefficients prints an analysis. More...
 
void print_all () const
 Print basis info for all supported atoms. More...
 
template<typename Archive >
void serialize (Archive &ar)
 

Detailed Description

Contracted Gaussian basis.

Constructor & Destructor Documentation

madness::AtomicBasisSet::AtomicBasisSet ( )
inline
madness::AtomicBasisSet::AtomicBasisSet ( std::string  filename)
inline

References read_file().

Member Function Documentation

void madness::AtomicBasisSet::atoms_to_bfn ( const Molecule molecule,
std::vector< int > &  at_to_bf,
std::vector< int > &  at_nbf 
)
inline

Makes map from atoms to first basis function on atom and number of basis functions on atom.

References madness::Atom::atomic_number, madness::Molecule::get_atom(), is_supported(), and madness::Molecule::natom().

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

int madness::AtomicBasisSet::basisfn_to_atom ( const Molecule molecule,
int  ibf 
) const
inline

Returns the number of the atom the ibf'th basis function is on.

References madness::Atom::atomic_number, madness::Molecule::get_atom(), is_supported(), MADNESS_EXCEPTION, and madness::Molecule::natom().

Referenced by print_anal(), and AtomicBasisSet::print_anal().

void madness::AtomicBasisSet::eval ( const Molecule molecule,
double  x,
double  y,
double  z,
double *  bf 
) const
inline
double madness::AtomicBasisSet::eval_guess_density ( const Molecule molecule,
double  x,
double  y,
double  z 
) const
inline
AtomicBasisFunction madness::AtomicBasisSet::get_atomic_basis_function ( const Molecule molecule,
int  ibf 
) const
inline
bool madness::AtomicBasisSet::is_supported ( int  atomic_number) const
inline
int madness::AtomicBasisSet::nbf ( const Molecule molecule) const
inline
void AtomicBasisSet::print ( const Molecule molecule) const
void AtomicBasisSet::print_all ( ) const

Print basis info for all supported atoms.

References madness::get_atomic_data(), nbf(), and madness::AtomicData::symbol.

template<typename T >
void madness::AtomicBasisSet::print_anal ( const Molecule molecule,
const Tensor< T > &  v 
)
inline

Given a vector of AO coefficients prints an analysis.

For each significant coeff it prints

  • atomic symbol
  • atom number
  • basis function type (e.g., dxy)
  • basis function number
  • MO coeff

References madness::Atom::atomic_number, basisfn_to_atom(), madness::Molecule::get_atom(), get_atomic_basis_function(), madness::get_atomic_data(), madness::AtomicBasisFunction::get_desc(), madness::Molecule::natom(), nbf(), madness::AtomicData::symbol, and thresh.

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

void AtomicBasisSet::read_file ( std::string  filename)

read the atomic basis set from file

use the default location MRA_CHEMDATA_DIR as defined in the Makefile.am unless it is overridden by the environment variable MRA_CHEMDATA_DIR

Parameters
[in]filenamethe name of the basis set (sto-3g, 6-31g, etc)

References debug, TiXmlDocument::ErrorCol(), TiXmlDocument::ErrorDesc(), TiXmlDocument::ErrorRow(), TiXmlNode::FirstChildElement(), madness::g, is_supported(), TiXmlDocument::LoadFile(), MADNESS_EXCEPTION, nbf(), TiXmlNode::NextSiblingElement(), and madness::symbol_to_atomic_number().

Referenced by AtomicBasisSet::AtomicBasisSet(), AtomicBasisSet(), madness::Solver< T, NDIM >::init(), and madness::SCF::SCF().

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

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