ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
vdw::Vdwd2Parameters Class Reference

#include <vdwd2_parameters.h>

Inheritance diagram for vdw::Vdwd2Parameters:
Collaboration diagram for vdw::Vdwd2Parameters:

Public Member Functions

 Vdwd2Parameters ()
 
 ~Vdwd2Parameters ()=default
 
void C6_input (const std::string &file, const std::string &unit)
 
void R0_input (const std::string &file, const std::string &unit)
 
void initset (const UnitCell &ucell)
 
void initial_parameters (const Input_para &input, std::ofstream *plog=nullptr)
 initial parameters of Vdwd2 with INPUT file
 
const std::map< std::string, double > C6 () const
 
const std::map< std::string, double > R0 () const
 
double damping () const
 
double scaling () const
 
- Public Member Functions inherited from vdw::VdwParameters
 VdwParameters ()=default
 
virtual ~VdwParameters ()=default
 
const std::string & model () const
 
const ModuleBase::Vector3< int > & period () const
 

Private Attributes

double scaling_
 
double damping_
 
double radius_
 
std::map< std::string, double > C6_
 
std::map< std::string, double > R0_
 

Static Private Attributes

static const std::map< std::string, double > C6_default_
 
static const std::map< std::string, double > R0_default_
 

Additional Inherited Members

- Protected Attributes inherited from vdw::VdwParameters
std::string model_
 
ModuleBase::Vector3< int > period_
 

Constructor & Destructor Documentation

◆ Vdwd2Parameters()

vdw::Vdwd2Parameters::Vdwd2Parameters ( )
inline

◆ ~Vdwd2Parameters()

vdw::Vdwd2Parameters::~Vdwd2Parameters ( )
default

Member Function Documentation

◆ C6()

const std::map< std::string, double > vdw::Vdwd2Parameters::C6 ( ) const
inline
Here is the caller graph for this function:

◆ C6_input()

void vdw::Vdwd2Parameters::C6_input ( const std::string &  file,
const std::string &  unit 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ damping()

double vdw::Vdwd2Parameters::damping ( ) const
inline
Here is the caller graph for this function:

◆ initial_parameters()

void vdw::Vdwd2Parameters::initial_parameters ( const Input_para input,
std::ofstream *  plog = nullptr 
)

initial parameters of Vdwd2 with INPUT file

Parameters
inputParameter instance
plogoptional, for logging the parameter setting process (not implemented)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ initset()

void vdw::Vdwd2Parameters::initset ( const UnitCell ucell)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ R0()

const std::map< std::string, double > vdw::Vdwd2Parameters::R0 ( ) const
inline
Here is the caller graph for this function:

◆ R0_input()

void vdw::Vdwd2Parameters::R0_input ( const std::string &  file,
const std::string &  unit 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ scaling()

double vdw::Vdwd2Parameters::scaling ( ) const
inline
Here is the caller graph for this function:

Member Data Documentation

◆ C6_

std::map<std::string, double> vdw::Vdwd2Parameters::C6_
private

◆ C6_default_

const std::map< std::string, double > vdw::Vdwd2Parameters::C6_default_
staticprivate
Initial value:
= {
{"H", 0.14}, {"He", 0.08}, {"Li", 1.61}, {"Be", 1.61}, {"B", 3.13}, {"C", 1.75}, {"N", 1.23},
{"O", 0.70}, {"F", 0.75}, {"Ne", 0.63}, {"Na", 5.71}, {"Mg", 5.71}, {"Al", 10.79}, {"Si", 9.23},
{"P", 7.84}, {"S", 5.57}, {"Cl", 5.07}, {"Ar", 4.61}, {"K", 10.8}, {"Ca", 10.8}, {"Sc", 10.8},
{"Ti", 10.8}, {"V", 10.8}, {"Cr", 10.8}, {"Mn", 10.8}, {"Fe", 10.8}, {"Co", 10.8}, {"Ni", 10.8},
{"Cu", 10.8}, {"Zn", 10.8}, {"Ga", 16.99}, {"Ge", 17.10}, {"As", 16.37}, {"Se", 12.64}, {"Br", 12.47},
{"Kr", 12.01}, {"Rb", 24.67}, {"Sr", 24.67}, {"Y", 24.67}, {"Zr", 24.67}, {"Nb", 24.67}, {"Mo", 24.67},
{"Tc", 24.67}, {"Ru", 24.67}, {"Rh", 24.67}, {"Pd", 24.67}, {"Ag", 24.67}, {"Cd", 24.67}, {"In", 37.32},
{"Sn", 38.71}, {"Sb", 38.44}, {"Te", 31.74}, {"I", 31.50}, {"Xe", 29.99}, {"Cs", 315.275}, {"Ba", 226.994},
{"La", 176.252}, {"Ce", 140.68}, {"Pr", 140.68}, {"Nd", 140.68}, {"Pm", 140.68}, {"Sm", 140.68}, {"Eu", 140.68},
{"Gd", 140.68}, {"Tb", 140.68}, {"Dy", 140.68}, {"Ho", 140.68}, {"Er", 140.68}, {"Tm", 140.68}, {"Yb", 140.68},
{"Lu", 140.68}, {"Hf", 105.112}, {"Ta", 81.24}, {"W", 81.24}, {"Re", 81.24}, {"Os", 81.24}, {"Ir", 81.24},
{"Pt", 81.24}, {"Au", 81.24}, {"Hg", 57.364}, {"Tl", 57.254}, {"Pb", 63.162}, {"Bi", 63.540}, {"Po", 55.283},
{"At", 57.171}, {"Rn", 56.64}}

◆ damping_

double vdw::Vdwd2Parameters::damping_
private

◆ R0_

std::map<std::string, double> vdw::Vdwd2Parameters::R0_
private

◆ R0_default_

const std::map< std::string, double > vdw::Vdwd2Parameters::R0_default_
staticprivate
Initial value:
= {{"H", 1.001}, {"He", 1.012}, {"Li", 0.825}, {"Be", 1.408}, {"B", 1.485}, {"C", 1.452}, {"N", 1.397},
{"O", 1.342}, {"F", 1.287}, {"Ne", 1.243}, {"Na", 1.144}, {"Mg", 1.364}, {"Al", 1.639}, {"Si", 1.716},
{"P", 1.705}, {"S", 1.683}, {"Cl", 1.639}, {"Ar", 1.595}, {"K", 1.485}, {"Ca", 1.474}, {"Sc", 1.562},
{"Ti", 1.562}, {"V", 1.562}, {"Cr", 1.562}, {"Mn", 1.562}, {"Fe", 1.562}, {"Co", 1.562}, {"Ni", 1.562},
{"Cu", 1.562}, {"Zn", 1.562}, {"Ga", 1.65}, {"Ge", 1.727}, {"As", 1.76}, {"Se", 1.771}, {"Br", 1.749},
{"Kr", 1.727}, {"Rb", 1.628}, {"Sr", 1.606}, {"Y", 1.639}, {"Zr", 1.639}, {"Nb", 1.639}, {"Mo", 1.639},
{"Tc", 1.639}, {"Ru", 1.639}, {"Rh", 1.639}, {"Pd", 1.639}, {"Ag", 1.639}, {"Cd", 1.639}, {"In", 1.672},
{"Sn", 1.804}, {"Sb", 1.881}, {"Te", 1.892}, {"I", 1.892}, {"Xe", 1.881}, {"Cs", 1.8018}, {"Ba", 1.7622},
{"La", 1.7204}, {"Ce", 1.7534}, {"Pr", 1.7534}, {"Nd", 1.7534}, {"Pm", 1.7534}, {"Sm", 1.7534}, {"Eu", 1.7534},
{"Gd", 1.7534}, {"Tb", 1.7534}, {"Dy", 1.7534}, {"Ho", 1.7534}, {"Er", 1.7534}, {"Tm", 1.7534}, {"Yb", 1.7534},
{"Lu", 1.7534}, {"Hf", 1.7875}, {"Ta", 1.7721}, {"W", 1.7721}, {"Re", 1.7721}, {"Os", 1.7721}, {"Ir", 1.7721},
{"Pt", 1.7721}, {"Au", 1.7721}, {"Hg", 1.7578}, {"Tl", 1.9855}, {"Pb", 1.9437}, {"Bi", 1.8975}, {"Po", 2.0053},
{"At", 1.991}, {"Rn", 1.9239}}

◆ radius_

double vdw::Vdwd2Parameters::radius_
private

◆ scaling_

double vdw::Vdwd2Parameters::scaling_
private

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