21#ifndef VOTCA_XTP_AOSHELL_H
22#define VOTCA_XTP_AOSHELL_H
25#include <boost/math/constants/constants.hpp>
35#include <libint2/shell.h>
78 return std::pow(2.0 * decay / boost::math::constants::pi<double>(), 0.75);
95 l_ =
static_cast<L>(d.
l);
98 pos_ = Eigen::Vector3d(d.
x, d.
y, d.
z);
116 mindecay_ = std::numeric_limits<double>::max();
127 values = Eigen::VectorXd::Zero(size);
static double CalcPowFactor(double decay)
double getPowfactor() const
double getContraction() const
AOGaussianPrimitive(const GaussianPrimitive &gaussian)
void WriteData(data &d, const AOShell &s) const
static void SetupCptTable(CptTable &table)
AOGaussianPrimitive(const AOGaussianPrimitive::data &d)
Index getCartesianNumFunc() const
std::vector< AOGaussianPrimitive >::const_iterator GaussianIterator
void normalizeContraction()
const Eigen::Vector3d & getPos() const
friend std::ostream & operator<<(std::ostream &out, const AOShell &shell)
libint2::Shell LibintShell() const
Index getAtomIndex() const
AOValues EvalAOspace(const Eigen::Vector3d &grid_pos) const
AOShell(const AOGaussianPrimitive::data &d)
GaussianIterator begin() const
Index getStartIndex() const
Index getCartesianOffset() const
void addGaussian(const GaussianPrimitive &gaussian)
GaussianIterator end() const
double getMinDecay() const
std::vector< AOGaussianPrimitive > gaussians_
AOShell(const Shell &shell, const QMAtom &atom, Index startIndex)
Index OffsetFuncShell(L l)
Index NumFuncShell_cartesian(L l)
Index OffsetFuncShell_cartesian(L l)
base class for all analysis tools
Eigen::MatrixX3d derivatives