56 virtual void build(
const std::string&,
58 std::ofstream*
const =
nullptr,
70 std::ofstream*
const =
nullptr
79 virtual void build(
const int = 0,
87 const std::string =
"",
88 const std::string =
"minimal-valence",
89 std::ofstream*
const =
nullptr
98 virtual void build(
const std::string&,
102 std::ofstream*
const =
nullptr,
119 std::ofstream* =
nullptr,
135 const int = 0)
const;
145 const int nk_legacy = 4005,
146 const double lcao_dk = 0.01
175 void set_grid(
const bool for_r_space,
const int ngrid,
const double* grid,
const char mode =
'i');
181 const char mode =
'i',
182 const bool enable_fft =
false);
209 int index(
const int l,
const int izeta)
const;
A class that represents a numerical radial function.
Definition numerical_radial.h:65
Definition ORB_nonlocal.h:22
Definition ORB_atomic.h:52
An abstract class representing the set of all numerical radial functions (of the same kind) from a si...
Definition radial_set.h:26
int nzeta_max_
maximum number of NumericalRadial objects among each angular momentum
Definition radial_set.h:192
virtual void build(const Numerical_Nonlocal &, const int=0, std::ofstream *const =nullptr)
Builds from a Numerical_Nonlocal object.
Definition radial_set.h:68
NumericalRadial * chi_
array of NumericalRadial objects
Definition radial_set.h:195
void cleanup()
Deallocates memory and reset all class members to default values.
Definition radial_set.cpp:180
virtual ~RadialSet()
Definition radial_set.cpp:13
int lmax() const
Definition radial_set.h:155
virtual void build(const int=0, const double=1.0, const bool=false, const int=0, const double=10.0, const double=0.01, const double=1e-6, const int=0, const std::string="", const std::string="minimal-valence", std::ofstream *const =nullptr)
Builds from hydrogen-like radial functions.
Definition radial_set.h:79
int index(const int l, const int izeta) const
Gets the index in chi_ array from (l,izeta).
Definition radial_set.cpp:109
void indexing()
Builds index_map_ from nzeta_, nzeta_max_ and lmax_.
Definition radial_set.cpp:118
virtual RadialSet * clone() const =0
for polymorphic copy
void set_rcut_max()
Sets rcut_max_ to be the maximum rcut of all NumericalRadial objects.
Definition radial_set.cpp:100
void set_uniform_grid(const bool for_r_space, const int ngrid, const double cutoff, const char mode='i', const bool enable_fft=false)
Sets a common uniform grid for all NumericalRadial objects.
Definition radial_set.cpp:167
virtual void build(const std::string &, const int=0, std::ofstream *const =nullptr, const int=0)
Builds the object from a file.
Definition radial_set.h:56
int itype() const
Definition radial_set.h:154
int * index_map_
A map from (l,izeta) to an index in chi_ array.
Definition radial_set.h:203
const NumericalRadial & chi(const int l, const int izeta)
Definition radial_set.cpp:141
const NumericalRadial * cend() const
Definition radial_set.h:164
std::string symbol_
usually the chemical symbol
Definition radial_set.h:186
int nchi_
total number of NumericalRadial objects
Definition radial_set.h:193
virtual void to_numerical_orbital(Numerical_Orbital &, const int nk_legacy=4005, const double lcao_dk=0.01) const
Overwrites the content of a Numerical_Orbital object with the current object.
Definition radial_set.cpp:88
int * nzeta_
number of NumericalRadial objects for each angular momentum
Definition radial_set.h:191
int nzeta_max() const
Definition radial_set.h:159
virtual void build(const std::string &, const int, const double, const double, std::ofstream *const =nullptr, const int=0)
Builds from pseudopotential file.
Definition radial_set.h:98
double rcut_max() const
Definition radial_set.h:156
int nzeta(const int l) const
Definition radial_set.h:158
int lmax_
maximum angular momentum among all NumericalRadial objects
Definition radial_set.h:188
void write_abacus_orb(const std::string &, const int=0) const
write any RadialSet object to a file in ABACUS numerical atomic orbital format.
Definition radial_set.cpp:198
virtual void build(const int, const int, const double, const double=0.1, const double=0.01, const int=0, std::ofstream *=nullptr, const int=0)
Builds with the truncated spherical Bessel functions.
Definition radial_set.h:113
RadialSet & operator=(const RadialSet &)
deep copy
Definition radial_set.cpp:49
double rcut_max_
maximum rcut (NOT rmax!) among all NumericalRadial objects
Definition radial_set.h:189
const NumericalRadial * cbegin() const
Definition radial_set.h:163
const std::string & symbol() const
Definition radial_set.h:153
void set_transformer(ModuleBase::SphericalBesselTransformer sbt, const int update=0)
Definition radial_set.cpp:150
int nchi() const
Definition radial_set.h:160
int itype_
usually the index for element in calculation
Definition radial_set.h:187
void set_grid(const bool for_r_space, const int ngrid, const double *grid, const char mode='i')
Sets a common grid for all NumericalRadial objects.
Definition radial_set.cpp:158