MADNESS  version 0.9
Public Member Functions | Public Attributes | List of all members
madness::CorePotential Struct Reference

Represents a core potential. More...

#include <corepotential.h>

Public Member Functions

 CorePotential ()
 
 CorePotential (const std::vector< int > &l, const std::vector< int > &n, const std::vector< double > &A, const std::vector< double > &alpha)
 
double eval (double r) const
 
double eval_derivative (double xi, double r) const
 
std::string to_string () const
 
template<typename Archive >
void serialize (Archive &ar)
 

Public Attributes

std::vector< int > l
 Angular momentum = 0, 1, 2, ... More...
 
std::vector< int > n
 
std::vector< double > A
 
std::vector< double > alpha
 
double eprec
 
double rcut0
 
double rcut
 

Detailed Description

Represents a core potential.

General Core Potential is able to write down as following form: $ U(r) = \sum_k A_k r^(n_k-2) exp(-alpha_k r^2) \sum_m |Y_lm \rangle \langle Y_lm| $ CorePotential holds these parameters (l,n,A,alpha)

Note: CorePotential::eval() currently ignores `l'. (It means ` $\sum_m |Y_lm \rangle \langle Y_lm|$' is always `1'.)

Constructor & Destructor Documentation

madness::CorePotential::CorePotential ( )
inline
madness::CorePotential::CorePotential ( const std::vector< int > &  l,
const std::vector< int > &  n,
const std::vector< double > &  A,
const std::vector< double > &  alpha 
)
inline

Member Function Documentation

double CorePotential::eval ( double  r) const
double CorePotential::eval_derivative ( double  xi,
double  r 
) const
template<typename Archive >
void madness::CorePotential::serialize ( Archive &  ar)
inline

References rcut.

string CorePotential::to_string ( ) const

References A, alpha, l, and n.

Member Data Documentation

std::vector<double> madness::CorePotential::A

Referenced by eval(), eval_derivative(), and to_string().

std::vector<double> madness::CorePotential::alpha

Referenced by eval(), eval_derivative(), main(), and to_string().

double madness::CorePotential::eprec
std::vector<int> madness::CorePotential::l

Angular momentum = 0, 1, 2, ...

Referenced by to_string().

std::vector<int> madness::CorePotential::n

Referenced by eval(), eval_derivative(), and to_string().

double madness::CorePotential::rcut

Referenced by eval(), eval_derivative(), and serialize().

double madness::CorePotential::rcut0

Referenced by eval(), and eval_derivative().


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