OpenCAP
Electronic structure of metastable states
Public Member Functions | Public Attributes | List of all members
AOCAP Class Reference

Class for numerically integrating the CAP matrix in AO basis. More...

#include <AOCAP.h>

Public Member Functions

 AOCAP (std::vector< Atom > geometry, std::map< std::string, std::string > params)
 
 AOCAP (std::vector< Atom > geometry, std::map< std::string, std::string > params, const std::function< std::vector< double >(std::vector< double > &, std::vector< double > &, std::vector< double > &, std::vector< double > &)> &cap_func)
 
 AOCAP ()
 
void compute_ao_cap_mat (Eigen::MatrixXd &cap_mat, BasisSet &bs)
 
void compute_cap_on_grid (Eigen::MatrixXd &cap_mat, BasisSet bs, double *x, double *y, double *z, double *grid_w, int num_points)
 

Public Attributes

double radial_precision
 
size_t angular_points
 
std::string cap_type
 
double cap_x
 
double cap_y
 
double cap_z
 
double r_cut
 
double thresh
 
std::vector< Atomatoms
 
size_t num_atoms
 
bool do_numerical
 
std::function< std::vector< double >std::vector< double > &, std::vector< double > &, std::vector< double > &, std::vector< double > &)> cap_func
 

Detailed Description

Class for numerically integrating the CAP matrix in AO basis.

Constructor & Destructor Documentation

◆ AOCAP() [1/3]

AOCAP::AOCAP ( std::vector< Atom geometry,
std::map< std::string, std::string >  params 
)

Constructs CAP object from geometry and CAP parameters.

◆ AOCAP() [2/3]

AOCAP::AOCAP ( std::vector< Atom geometry,
std::map< std::string, std::string >  params,
const std::function< std::vector< double >(std::vector< double > &, std::vector< double > &, std::vector< double > &, std::vector< double > &)> &  cap_func 
)

◆ AOCAP() [3/3]

AOCAP::AOCAP ( )
inline

Default construct, does nothing

Member Function Documentation

◆ compute_ao_cap_mat()

void AOCAP::compute_ao_cap_mat ( Eigen::MatrixXd &  cap_mat,
BasisSet bs 
)

Computes CAP matrix in AO basis via numerical integration.

◆ compute_cap_on_grid()

void AOCAP::compute_cap_on_grid ( Eigen::MatrixXd &  cap_mat,
BasisSet  bs,
double *  x,
double *  y,
double *  z,
double *  grid_w,
int  num_points 
)

Member Data Documentation

◆ angular_points

size_t AOCAP::angular_points

Number of angular points on grid. Default is 590. See https://github.com/dftlibs/numgrid for allowed number of points.

◆ atoms

std::vector<Atom> AOCAP::atoms

Geometry of molecular system.

◆ cap_func

std::function<std::vector<double>std::vector<double> &, std::vector<double> &, std::vector<double> &, std::vector<double> &)> AOCAP::cap_func

◆ cap_type

std::string AOCAP::cap_type

Type of CAP. Can be Voronoi or Box CAP.

◆ cap_x

double AOCAP::cap_x

Onset of box CAP in X direction. Specify in bohr units.

◆ cap_y

double AOCAP::cap_y

Onset of box CAP in Y direction. Specify in bohr units.

◆ cap_z

double AOCAP::cap_z

Onset of box CAP in Z direction. Specify in bohr units.

◆ do_numerical

bool AOCAP::do_numerical

◆ num_atoms

size_t AOCAP::num_atoms

Number of atoms

◆ r_cut

double AOCAP::r_cut

Cutoff radius of Voronoi CAP. Specify in bohr units.

◆ radial_precision

double AOCAP::radial_precision

Radial precision of numerical grid. Default is 1.0e-14

◆ thresh

double AOCAP::thresh

Threshold for exponents of GTOs. Exponents smaller than thresh are excluded from integration. Intended to alleviate numerical issues associated with fake IP orbital.


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