MADNESS
0.10.1
|
Namespaces | |
Properties | |
Classes | |
struct | Atom |
An atom (symbol and position). More... | |
class | BasisFunction |
Abstract base class for generic basis functions. More... | |
struct | BasisShell |
Store information on a shell of basis functions as it's being read. More... | |
class | ES_Interface |
Abstract base class for interfacing with electronic structure codes. More... | |
class | Gaussian_Functor |
class | GaussianFunction |
A Gaussian basis function used by chemistry electronic structure codes. More... | |
class | NWChem_Interface |
Class for interfacing with NWChem (tested on version 6.6). More... | |
class | PolynomialCoeffs |
Array for storing coefficients of a polynomial of three variables with specified degree. More... | |
class | PrimitiveGaussian |
A primitive Gaussian function. More... | |
Typedefs | |
using | Atoms = std::vector< Atom > |
A set of atoms. More... | |
using | BasisSet = std::vector< std::reference_wrapper< BasisFunction > > |
Type for a basis set (collection of basis functions). More... | |
Enumerations | |
enum class | GaussianType { s , px , py , pz , dxx , dxy , dxz , dyy , dyz , dzz , fxxx , fxxy , fxxz , fxyy , fxyz , fxzz , fyyy , fyyz , fyzz , fzzz , dzzmrr , dxxmyy , fxyymxxx , fxxzmyyz , fxzzmrrx , fzzzmrrz , fyzzmrry , fxxymyyy , gxxxx , gxxxy , gxxxz , gxxyy , gxxyz , gxxzz , gxyyy , gxyyz , gxyzz , gxzzz , gyyyy , gyyyz , gyyzz , gyzzz , gzzzz , gxydx2my2 , gyzdx2my2 , gxydz2mr2 , gyzdz2mr2 , gzero , gxzdz2mr2 , gx2my2dz2mr2 , gxzdx2my2 , gx4mx2y2py4 , hxxxxx , hxxxxy , hxxxxz , hxxxyy , hxxxyz , hxxxzz , hxxyyy , hxxyyz , hxxyzz , hxxzzz , hxyyyy , hxyyyz , hxyyzz , hxyzzz , hxzzzz , hyyyyy , hyyyyz , hyyyzz , hyyzzz , hyzzzz , hzzzzz , hm5 , hm4 , hm3 , hm2 , hm1 , hzero , hp1 , hp2 , hp3 , hp4 , hp5 } |
Implemented types of Gaussian orbitals (from quantum chemistry codes). More... | |
Functions | |
template<typename T > | |
std::vector< std::reference_wrapper< const T > > | cast_basis (const BasisSet &bset) |
Convert a generic basis set to basis functions with the specific type. More... | |
PolynomialCoeffs | operator* (const double c, const PolynomialCoeffs &poly) |
Multiply a polynomial by a constant value. More... | |
GaussianFunction | operator* (const double lhs, const GaussianFunction &rhs) |
Multiply a GaussianFunction by a scalar. More... | |
static std::ostream & | operator<< (std::ostream &out, const BasisShell &bs) |
template<typename T > | |
static T | read_endian (std::istream &in, const bool swap) |
Read bytes from a binary file into the specified type. More... | |
using slymer::Atoms = typedef std::vector<Atom> |
A set of atoms.
using slymer::BasisSet = typedef std::vector<std::reference_wrapper<BasisFunction> > |
Type for a basis set (collection of basis functions).
|
strong |
Implemented types of Gaussian orbitals (from quantum chemistry codes).
std::vector<std::reference_wrapper<const T> > slymer::cast_basis | ( | const BasisSet & | bset | ) |
Convert a generic basis set to basis functions with the specific type.
std::runtime_error | if a basis function in the basis set is not of the specified type. |
T | The intended type of each basis function. |
[in] | bset | The basis set. |
References T().
|
inline |
Multiply a polynomial by a constant value.
[in] | c | The constant value. |
[in] | poly | The polynomial. |
References c.
|
inline |
Multiply a GaussianFunction by a scalar.
[in] | lhs | The scalar multiplicative factor. |
[in] | rhs | The GaussianFunction. |
|
static |
References slymer::BasisShell::coeffs, slymer::BasisShell::exps, and slymer::BasisShell::type.
|
static |
Read bytes from a binary file into the specified type.
Attempts to account for the endian-ness of the binary data. This should hopefully make the routine more robust to running NWChem jobs on one machine and processing the files on another.
T | Type of data to be read (only really need the size). |
[in,out] | in | The input stream. |
[in] | swap | Change the endian-ness of the read data? |
References madness::swap(), and T().