ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
atomic_radials.h
Go to the documentation of this file.
1#ifndef ATOMIC_RADIALS_H_
2#define ATOMIC_RADIALS_H_
3
5
7
24{
25 public:
27 AtomicRadials(const AtomicRadials& other) : RadialSet(other), orb_ecut_(other.orb_ecut_) {}
28
30 AtomicRadials* clone() const { return new AtomicRadials(*this); } // covariant return type
31
32 ~AtomicRadials() {} // ~RadialSet() is called automatically
33
35 void build(const std::string& file,
36 const int itype = 0,
37 std::ofstream* ptr_log = nullptr,
38 const int rank = 0
39 );
40
41 void build(RadialSet* const other, const int itype, const double rcut);
42
44 double orb_ecut() const { return orb_ecut_; }
45
46 private:
47 double orb_ecut_;
48
50 void read_abacus_orb(std::ifstream& ifs,
51 std::ofstream* ptr_log = nullptr,
52 const int rank = 0
53 );
54
55};
56
57#endif
The radial part of numerical atomic orbitals of a single element.
Definition atomic_radials.h:24
AtomicRadials(const AtomicRadials &other)
Definition atomic_radials.h:27
double orb_ecut_
energy cutoff as given by the orbital file
Definition atomic_radials.h:47
void read_abacus_orb(std::ifstream &ifs, std::ofstream *ptr_log=nullptr, const int rank=0)
Read the orbital file in the ABACUS format.
Definition atomic_radials.cpp:111
AtomicRadials()
Definition atomic_radials.h:26
~AtomicRadials()
Definition atomic_radials.h:32
AtomicRadials * clone() const
for polymorphic copy
Definition atomic_radials.h:30
AtomicRadials & operator=(const AtomicRadials &rhs)
Definition atomic_radials.cpp:17
double orb_ecut() const
Get the energy cutoff as given by the orbital file.
Definition atomic_radials.h:44
void build(const std::string &file, const int itype=0, std::ofstream *ptr_log=nullptr, const int rank=0)
Build the class from an orbital file.
Definition atomic_radials.cpp:24
An abstract class representing the set of all numerical radial functions (of the same kind) from a si...
Definition radial_set.h:26
int itype() const
Definition radial_set.h:154
file(GLOB ATen_CORE_SRCS "*.cpp") set(ATen_CPU_SRCS $
Definition CMakeLists.txt:1