QMCPACK
RadialOrbitalSetBuilder< SoaAtomicBasisSet< MultiFunctorAdapter< FN >, SH > > Class Template Reference
+ Inheritance diagram for RadialOrbitalSetBuilder< SoaAtomicBasisSet< MultiFunctorAdapter< FN >, SH > >:
+ Collaboration diagram for RadialOrbitalSetBuilder< SoaAtomicBasisSet< MultiFunctorAdapter< FN >, SH > >:

Public Types

using COT = SoaAtomicBasisSet< MultiFunctorAdapter< FN >, SH >
 
using RadialOrbital_t = MultiFunctorAdapter< FN >
 
using single_type = typename RadialOrbital_t::single_type
 
- Public Types inherited from MPIObjectBase
using mpi_comm_type = Communicate::mpi_comm_type
 

Public Member Functions

 RadialOrbitalSetBuilder (Communicate *comm, COT &aos)
 constructor More...
 
bool addGrid (xmlNodePtr cur, const std::string &rad_type)
 implement functions used by AOBasisBuilder More...
 
bool addGridH5 (hdf_archive &hin)
 
bool openNumericalBasisH5 (xmlNodePtr cur)
 
bool put (xmlNodePtr cur)
 
bool addRadialOrbital (xmlNodePtr cur, const std::string &rad_type, const QuantumNumberType &nlms)
 
bool addRadialOrbitalH5 (hdf_archive &hin, const std::string &rad_type, const QuantumNumberType &nlms)
 
void finalize ()
 
- Public Member Functions inherited from MPIObjectBase
 MPIObjectBase (Communicate *c)
 constructor with communicator More...
 
int rank () const
 return the rank of the communicator More...
 
int getGroupID () const
 return the group id of the communicator More...
 
CommunicategetCommunicator () const
 return myComm More...
 
CommunicategetCommRef () const
 return a TEMPORARY reference to Communicate More...
 
mpi_comm_type getMPI () const
 return MPI communicator if one wants to use MPI directly More...
 
bool is_manager () const
 return true if the rank == 0 More...
 
const std::string & getName () const
 return the name More...
 
void setName (const std::string &aname)
 

Public Attributes

bool Normalized
 true, if the RadialOrbitalType is normalized More...
 
COTm_orbitals
 orbitals to build More...
 

Additional Inherited Members

- Protected Attributes inherited from MPIObjectBase
CommunicatemyComm
 pointer to Communicate More...
 
std::string ClassName
 class Name More...
 
std::string myName
 name of the object More...
 

Detailed Description

template<typename FN, typename SH>
class qmcplusplus::RadialOrbitalSetBuilder< SoaAtomicBasisSet< MultiFunctorAdapter< FN >, SH > >

Definition at line 190 of file MultiFunctorAdapter.h.

Member Typedef Documentation

◆ COT

Definition at line 193 of file MultiFunctorAdapter.h.

◆ RadialOrbital_t

Definition at line 194 of file MultiFunctorAdapter.h.

◆ single_type

Definition at line 195 of file MultiFunctorAdapter.h.

Constructor & Destructor Documentation

◆ RadialOrbitalSetBuilder()

RadialOrbitalSetBuilder ( Communicate comm,
COT aos 
)
inline

constructor

Definition at line 203 of file MultiFunctorAdapter.h.

Member Function Documentation

◆ addGrid()

bool addGrid ( xmlNodePtr  cur,
const std::string &  rad_type 
)
inline

implement functions used by AOBasisBuilder

Definition at line 206 of file MultiFunctorAdapter.h.

206 { return true; }

◆ addGridH5()

bool addGridH5 ( hdf_archive hin)
inline

Definition at line 207 of file MultiFunctorAdapter.h.

207 { return true; }

◆ addRadialOrbital()

bool addRadialOrbital ( xmlNodePtr  cur,
const std::string &  rad_type,
const QuantumNumberType nlms 
)
inline

Definition at line 217 of file MultiFunctorAdapter.h.

References RadialOrbitalSetBuilder< COT >::m_orbitals, RadialOrbitalSetBuilder< COT >::Normalized, and qmcplusplus::q_l.

218  {
219  auto radorb = std::make_unique<single_type>(nlms[q_l], Normalized);
220  radorb->putBasisGroup(cur);
221 
222  m_orbitals.RnlID.push_back(nlms);
223  m_orbitals.MultiRnl.Rnl.push_back(std::move(radorb));
224  return true;
225  }
std::vector< QuantumNumberType > RnlID
container for the quantum-numbers

◆ addRadialOrbitalH5()

bool addRadialOrbitalH5 ( hdf_archive hin,
const std::string &  rad_type,
const QuantumNumberType nlms 
)
inline

Definition at line 227 of file MultiFunctorAdapter.h.

References RadialOrbitalSetBuilder< COT >::hin, RadialOrbitalSetBuilder< COT >::m_orbitals, MPIObjectBase::myComm, RadialOrbitalSetBuilder< COT >::Normalized, and qmcplusplus::q_l.

228  {
229  auto radorb = std::make_unique<single_type>(nlms[q_l], Normalized);
230  radorb->putBasisGroupH5(hin, *myComm);
231 
232  m_orbitals.RnlID.push_back(nlms);
233  m_orbitals.MultiRnl.Rnl.push_back(std::move(radorb));
234 
235  return true;
236  }
std::vector< QuantumNumberType > RnlID
container for the quantum-numbers
Communicate * myComm
pointer to Communicate
Definition: MPIObjectBase.h:62

◆ finalize()

void finalize ( )
inline

◆ openNumericalBasisH5()

bool openNumericalBasisH5 ( xmlNodePtr  cur)
inline

Definition at line 208 of file MultiFunctorAdapter.h.

208 { return true; }

◆ put()

bool put ( xmlNodePtr  cur)
inline

Definition at line 209 of file MultiFunctorAdapter.h.

References getXMLAttributeValue(), qmcplusplus::lowerCase(), and RadialOrbitalSetBuilder< COT >::Normalized.

210  {
211  const std::string a(lowerCase(getXMLAttributeValue(cur, "normalized")));
212  if (a == "no")
213  Normalized = false;
214  return true;
215  }
std::string lowerCase(const std::string_view s)
++17
std::string getXMLAttributeValue(const xmlNodePtr cur, const std::string_view name)
get the value string for attribute name if name is unfound in cur you get an empty string back this i...

Member Data Documentation

◆ m_orbitals

COT& m_orbitals

orbitals to build

Definition at line 200 of file MultiFunctorAdapter.h.

◆ Normalized

bool Normalized

true, if the RadialOrbitalType is normalized

Definition at line 198 of file MultiFunctorAdapter.h.


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