MADNESS 0.10.1
|
Contracted Gaussian basis. More...
#include <molecularbasis.h>
Classes | |
class | AnalysisSorter |
Public Member Functions | |
AtomicBasisSet () | |
AtomicBasisSet (std::string filename) | |
void | atoms_to_bfn (const Molecule &molecule, std::vector< int > &at_to_bf, std::vector< int > &at_nbf) const |
Makes map from atoms to first basis function on atom and number of basis functions on atom. | |
int | basisfn_to_atom (const Molecule &molecule, size_t ibf) const |
Returns the number of the atom the ibf'th basis function is on. | |
void | eval (const Molecule &molecule, double x, double y, double z, double *bf) const |
Evaluates the basis functions. | |
double | eval_guess_density (const Molecule &molecule, double x, double y, double z) const |
Evaluates the guess density. | |
const Tensor< double > & | get_aeps (const Molecule &molecule, size_t iat) const |
Returns the atomic alpha eigenvalues for atom iat. | |
AtomicBasisFunction | get_atomic_basis_function (const Molecule &molecule, size_t ibf) const |
Returns the ibf'th atomic basis function. | |
const Tensor< double > & | get_avec (const Molecule &molecule, size_t iat) const |
Returns the atomic alpha eigenvectors for atom iat. | |
std::string | get_name () const |
bool | is_supported (int atomic_number) const |
void | modify_dmat_psp (int atn, double zeff) |
Eliminates core orbitals from the density matrix for pseudopotential calculations. | |
int | nbf (const Molecule &molecule) const |
Given a molecule count the number of basis functions. | |
void | print (const Molecule &molecule) const |
Print basis info for atoms in the molecule (once for each unique atom type) | |
void | print_all () const |
Print basis info for all supported atoms. | |
template<typename T > | |
void | print_anal (const Molecule &molecule, const Tensor< T > &v) const |
Given a vector of AO coefficients prints an analysis. | |
void | read_file (std::string filename) |
read the atomic basis set from file | |
void | read_nw_file (std::string filename) |
read the atomic basis set from file | |
template<typename Archive > | |
void | serialize (Archive &ar) |
void | shells_to_bfn (const Molecule &molecule, std::vector< int > &sh_to_bf, std::vector< int > &sh_nbf) const |
Makes map from shells to first basis function on she and number of basis functions on sh. | |
Private Member Functions | |
template<typename T > | |
Tensor< T > | load_tixml_matrix (TiXmlElement *node, int n, int m, const char *name) |
template<typename T > | |
std::vector< T > | load_tixml_vector (TiXmlElement *node, int n, const char *name) |
Private Attributes | |
std::vector< AtomicBasis > | ag |
Basis associated by atomic number = 1, 2, ...; 0=Bq. | |
std::string | name |
Contracted Gaussian basis.
|
inline |
|
inline |
References madness::filename, and read_file().
|
inline |
Makes map from atoms to first basis function on atom and number of basis functions on atom.
References ag, at_nbf, at_to_bf, madness::Atom::atomic_number, is_supported(), MADNESS_ASSERT, and molecule.
Referenced by madness::Localizer::Localizer(), MiniDFT::makeao(), and madness::SCF::project_ao_basis().
|
inline |
Returns the number of the atom the ibf'th basis function is on.
References ag, madness::Atom::atomic_number, is_supported(), MADNESS_ASSERT, MADNESS_EXCEPTION, and molecule.
Referenced by print_anal().
|
inline |
Evaluates the basis functions.
References ag, madness::Atom::atomic_number, molecule, madness::Atom::x, madness::Atom::y, and madness::Atom::z.
|
inline |
Evaluates the guess density.
References ag, madness::Atom::atomic_number, molecule, madness::Atom::pseudo_atom, sum, madness::Atom::x, madness::Atom::y, and madness::Atom::z.
Referenced by MolecularGuessDensityFunctor::operator()(), madness::Solver< T, NDIM >::GuessDensity::operator()(), and madchem::MolecularGuessDensityFunctor::operator()().
|
inline |
Returns the atomic alpha eigenvalues for atom iat.
References ag, madness::Atom::atomic_number, is_supported(), MADNESS_ASSERT, and molecule.
|
inline |
Returns the ibf'th atomic basis function.
References ag, madness::Atom::atomic_number, is_supported(), MADNESS_ASSERT, MADNESS_EXCEPTION, molecule, madness::Atom::x, madness::Atom::y, and madness::Atom::z.
Referenced by MiniDFT::makeao(), print_anal(), madness::Solver< T, NDIM >::project_ao_basis(), and madness::SCF::project_ao_basis_only().
|
inline |
Returns the atomic alpha eigenvectors for atom iat.
References ag, madness::Atom::atomic_number, is_supported(), MADNESS_ASSERT, and molecule.
Referenced by madness::Localizer::localize_new().
|
inline |
References name.
Referenced by madness::Localizer::print_info(), and madness::MolecularOrbitals< T, NDIM >::read_restartaodata().
|
inline |
References ag.
Referenced by atoms_to_bfn(), basisfn_to_atom(), get_aeps(), get_atomic_basis_function(), get_avec(), nbf(), read_file(), and shells_to_bfn().
|
inlineprivate |
References m, MADNESS_ASSERT, and name.
|
inlineprivate |
References MADNESS_ASSERT, and name.
void AtomicBasisSet::modify_dmat_psp | ( | int | atn, |
double | zeff | ||
) |
Eliminates core orbitals from the density matrix for pseudopotential calculations.
References ag, debug, e(), madness::inner(), MADNESS_EXCEPTION, madness::BaseTensor::size(), madness::Tensor< T >::sum(), and madness::transpose().
Referenced by madness::SCF::initial_guess().
|
inline |
Given a molecule count the number of basis functions.
References ag, madness::Atom::atomic_number, is_supported(), MADNESS_ASSERT, and molecule.
Referenced by madness::Solver< T, NDIM >::initial_guess(), MiniDFT::makeao(), print_all(), print_anal(), madness::Solver< T, NDIM >::project_ao_basis(), madness::SCF::project_ao_basis_only(), read_file(), read_nw_file(), and shells_to_bfn().
void AtomicBasisSet::print | ( | const Molecule & | molecule | ) | const |
Print basis info for atoms in the molecule (once for each unique atom type)
References ag, madness::Atom::atomic_number, madness::get_atomic_data(), molecule, name, and madness::AtomicData::symbol.
void AtomicBasisSet::print_all | ( | ) | const |
Print basis info for all supported atoms.
References ag, madness::get_atomic_data(), name, nbf(), and madness::AtomicData::symbol.
|
inline |
Given a vector of AO coefficients prints an analysis.
For each significant coeff it prints
References std::abs(), madness::Atom::atomic_number, basisfn_to_atom(), get_atomic_basis_function(), madness::get_atomic_data(), madness::AtomicBasisFunction::get_desc(), molecule, nbf(), madness::AtomicData::symbol, thresh, and v.
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
[in] | filename | the name of the basis set (sto-3g, 6-31g, etc) |
References ag, debug, madness::filename, madness::g, is_supported(), MADNESS_ASSERT, MADNESS_EXCEPTION, name, nbf(), madness::symbol_to_atomic_number(), and madness::type().
Referenced by AtomicBasisSet(), madness::Znemo::Znemo(), MiniDFT::doit(), madness::Solver< T, NDIM >::init(), and madness::SCF::reset_aobasis().
void AtomicBasisSet::read_nw_file | ( | std::string | filename | ) |
read the atomic basis set from file
[in] | filename | the base name of nwchem files (.out and .movecs) |
References ag, slymer::Properties::Atoms, slymer::ES_Interface::atoms, madness::filename, madness::g, nbf(), slymer::NWChem_Interface::read(), and madness::symbol_to_atomic_number().
Referenced by madness::SCF::SCF().
|
inline |
|
inline |
Makes map from shells to first basis function on she and number of basis functions on sh.
References ag, madness::Atom::atomic_number, is_supported(), MADNESS_ASSERT, molecule, and nbf().
Referenced by madness::Localizer::localize_new().
|
private |
Basis associated by atomic number = 1, 2, ...; 0=Bq.
Referenced by atoms_to_bfn(), basisfn_to_atom(), eval(), eval_guess_density(), get_aeps(), get_atomic_basis_function(), get_avec(), is_supported(), modify_dmat_psp(), nbf(), print(), print_all(), read_file(), read_nw_file(), serialize(), and shells_to_bfn().
|
private |
Referenced by get_name(), load_tixml_matrix(), load_tixml_vector(), print(), print_all(), read_file(), and serialize().