Octopus 16.0
real-space, real-time, TDDFT code
pseudopotential::psml Class Reference

#include <psml.hpp>

Inheritance diagram for pseudopotential::psml:
Collaboration diagram for pseudopotential::psml:

Public Member Functions

 psml (const std::string &filename, bool uniform_grid=false)
 
pseudopotential::format format () const
 
int size () const
 
std::string description () const
 
std::string symbol () const
 
int atomic_number () const
 
double mass () const
 
double valence_charge () const
 
int llocal () const
 
pseudopotential::exchange exchange () const
 
pseudopotential::correlation correlation () const
 
int nchannels () const
 
void local_potential (std::vector< double > &val) const
 
int nprojectors () const
 
int nprojectors_per_l (int l) const
 
void projector (int l, int ic, std::vector< double > &val) const
 
double d_ij (int l, int ic, int jc) const
 
bool has_radial_function (int l) const
 
void radial_function (int l, std::vector< double > &val) const
 
void radial_potential (int l, std::vector< double > &val) const
 
bool has_nlcc () const
 
void nlcc_density (std::vector< double > &val) const
 
bool has_density ()
 
void density (std::vector< double > &val) const
 
bool has_total_angular_momentum () const
 
int projector_2j (int l, int ic) const
 
- Public Member Functions inherited from pseudopotential::anygrid
 anygrid (bool uniform_grid)
 
double mesh_spacing () const
 
int mesh_size () const
 
virtual void grid (std::vector< double > &val) const
 
virtual void grid_weights (std::vector< double > &val) const
 
- Public Member Functions inherited from pseudopotential::base
virtual ~base ()
 
virtual pseudopotential::type type () const
 
virtual int lmax () const
 
virtual pseudopotential::format format () const =0
 
virtual int size () const =0
 
virtual std::string description () const =0
 
virtual std::string symbol () const =0
 
virtual int atomic_number () const =0
 
virtual double mass () const =0
 
virtual double valence_charge () const =0
 
virtual int llocal () const =0
 
virtual int nchannels () const =0
 
virtual double mesh_spacing () const =0
 
virtual int mesh_size () const =0
 
virtual void local_potential (std::vector< double > &potential) const =0
 
virtual int nprojectors () const =0
 
virtual int nprojectors_per_l (int l) const =0
 
virtual void projector (int l, int i, std::vector< double > &proj) const =0
 
virtual double d_ij (int l, int i, int j) const =0
 
virtual bool has_radial_function (int l) const =0
 
virtual void radial_function (int l, std::vector< double > &function) const =0
 
virtual void radial_potential (int l, std::vector< double > &function) const =0
 
virtual void grid (std::vector< double > &val) const
 
virtual void grid_weights (std::vector< double > &val) const
 
virtual int nquad () const
 
virtual double rquad () const
 
virtual bool has_nlcc () const
 
virtual void nlcc_density (std::vector< double > &density) const
 
virtual void beta (int index, int &l, std::vector< double > &proj) const
 
virtual void dnm_zero (int nbeta, std::vector< std::vector< double > > &dnm) const
 
virtual bool has_rinner () const
 
virtual void rinner (std::vector< double > &val) const
 
virtual void qnm (int index, int &l1, int &l2, int &n, int &m, std::vector< double > &val) const
 
virtual void qfcoeff (int index, int ltot, std::vector< double > &val) const
 
virtual bool has_density () const
 
virtual void density (std::vector< double > &val) const
 
virtual int nwavefunctions () const
 
virtual void wavefunction (int index, int &n, int &l, double &occ, std::vector< double > &val) const
 
virtual pseudopotential::exchange exchange () const
 
virtual pseudopotential::correlation correlation () const
 
virtual bool has_total_angular_momentum () const
 
virtual int projector_2j (int l, int ic) const
 
virtual int wavefunction_2j (int ii) const
 

Private Member Functions

void read_function (rapidxml::xml_node<> *base_node, std::vector< double > &val, bool potential_padding=false) const
 

Static Private Member Functions

static int letter_to_l (const std::string &letter)
 

Private Attributes

std::ifstream file_
 
std::vector< char > buffer_
 
rapidxml::xml_document doc_
 
rapidxml::xml_node * root_node_
 
rapidxml::xml_node * spec_node_
 

Additional Inherited Members

- Protected Member Functions inherited from pseudopotential::anygrid
void interpolate (std::vector< double > &function) const
 
- Static Protected Member Functions inherited from pseudopotential::base
template<typename Type >
static Type value (const rapidxml::xml_base<> *node)
 
- Protected Attributes inherited from pseudopotential::anygrid
bool uniform_grid_
 
std::vector< double > grid_
 
std::vector< double > grid_weights_
 
int mesh_size_
 
- Protected Attributes inherited from pseudopotential::base
std::string filename_
 
pseudopotential::type type_
 
int lmax_
 

Constructor & Destructor Documentation

◆ psml()

pseudopotential::psml::psml ( const std::string filename,
bool  uniform_grid = false 
)
inline

Member Function Documentation

◆ format()

pseudopotential::format pseudopotential::psml::format ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ size()

int pseudopotential::psml::size ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ description()

std::string pseudopotential::psml::description ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ symbol()

std::string pseudopotential::psml::symbol ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ atomic_number()

int pseudopotential::psml::atomic_number ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ mass()

double pseudopotential::psml::mass ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ valence_charge()

double pseudopotential::psml::valence_charge ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ llocal()

int pseudopotential::psml::llocal ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ exchange()

pseudopotential::exchange pseudopotential::psml::exchange ( ) const
inlinevirtual

Reimplemented from pseudopotential::base.

◆ correlation()

pseudopotential::correlation pseudopotential::psml::correlation ( ) const
inlinevirtual

Reimplemented from pseudopotential::base.

◆ nchannels()

int pseudopotential::psml::nchannels ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ local_potential()

void pseudopotential::psml::local_potential ( std::vector< double > &  val) const
inlinevirtual

Implements pseudopotential::base.

◆ nprojectors()

int pseudopotential::psml::nprojectors ( ) const
inlinevirtual

Implements pseudopotential::base.

◆ nprojectors_per_l()

int pseudopotential::psml::nprojectors_per_l ( int  l) const
inlinevirtual

Implements pseudopotential::base.

◆ projector()

void pseudopotential::psml::projector ( int  l,
int  ic,
std::vector< double > &  val 
) const
inlinevirtual

Implements pseudopotential::base.

◆ d_ij()

double pseudopotential::psml::d_ij ( int  l,
int  ic,
int  jc 
) const
inlinevirtual

Implements pseudopotential::base.

◆ has_radial_function()

bool pseudopotential::psml::has_radial_function ( int  l) const
inlinevirtual

Implements pseudopotential::base.

◆ radial_function()

void pseudopotential::psml::radial_function ( int  l,
std::vector< double > &  val 
) const
inlinevirtual

Implements pseudopotential::base.

◆ radial_potential()

void pseudopotential::psml::radial_potential ( int  l,
std::vector< double > &  val 
) const
inlinevirtual

Implements pseudopotential::base.

◆ has_nlcc()

bool pseudopotential::psml::has_nlcc ( ) const
inlinevirtual

Reimplemented from pseudopotential::base.

◆ nlcc_density()

void pseudopotential::psml::nlcc_density ( std::vector< double > &  val) const
inlinevirtual

Reimplemented from pseudopotential::base.

◆ has_density()

bool pseudopotential::psml::has_density ( )
inline

◆ density()

void pseudopotential::psml::density ( std::vector< double > &  val) const
inlinevirtual

Reimplemented from pseudopotential::base.

◆ has_total_angular_momentum()

bool pseudopotential::psml::has_total_angular_momentum ( ) const
inlinevirtual

Reimplemented from pseudopotential::base.

◆ projector_2j()

int pseudopotential::psml::projector_2j ( int  l,
int  ic 
) const
inlinevirtual

Reimplemented from pseudopotential::base.

◆ read_function()

void pseudopotential::psml::read_function ( rapidxml::xml_node<> *  base_node,
std::vector< double > &  val,
bool  potential_padding = false 
) const
inlineprivate

◆ letter_to_l()

static int pseudopotential::psml::letter_to_l ( const std::string letter)
inlinestaticprivate

Member Data Documentation

◆ file_

std::ifstream pseudopotential::psml::file_
private

◆ buffer_

std::vector<char> pseudopotential::psml::buffer_
private

◆ doc_

rapidxml::xml_document pseudopotential::psml::doc_
private

◆ root_node_

rapidxml::xml_node* pseudopotential::psml::root_node_
private

◆ spec_node_

rapidxml::xml_node* pseudopotential::psml::spec_node_
private

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