QMCPACK
LCAOHDFParser Class Reference
+ Inheritance diagram for LCAOHDFParser:
+ Collaboration diagram for LCAOHDFParser:

Public Member Functions

 LCAOHDFParser ()
 
 LCAOHDFParser (int argc, char **argv)
 
void parse (const std::string &fname) override
 
void getGeometry (const std::string &fname)
 
void getCell (const std::string &fname)
 
void getSuperTwist (const std::string &fname)
 
void getMO (const std::string &fname)
 
void getGaussianCenters (const std::string fname)
 
- Public Member Functions inherited from QMCGaussianParserBase
 QMCGaussianParserBase ()
 
 QMCGaussianParserBase (int argc, char **argv)
 
virtual ~QMCGaussianParserBase ()=default
 
void setOccupationNumbers ()
 
void createGridNode (int argc, char **argv)
 
void createSPOSets (xmlNodePtr, xmlNodePtr)
 
void createSPOSetsH5 (xmlNodePtr, xmlNodePtr)
 
void PrepareSPOSetsFromH5 (xmlNodePtr, xmlNodePtr)
 
xmlNodePtr createElectronSet (const std::string &ion_tag)
 
xmlNodePtr createIonSet ()
 
xmlNodePtr createCell ()
 
xmlNodePtr createHamiltonian (const std::string &ion_tag, const std::string &psi_tag)
 
xmlNodePtr createBasisSet ()
 
xmlNodePtr createBasisSetWithHDF5 ()
 
xmlNodePtr createCenter (int iat, int _off)
 
void createCenterH5 (int iat, int _off, int numelem)
 
void createShell (int n, int ig, int off_, xmlNodePtr abasis)
 
void createShellH5 (int n, int ig, int off_, int numelem)
 
xmlNodePtr createDeterminantSet ()
 
xmlNodePtr createMultiDeterminantSet ()
 
xmlNodePtr createDeterminantSetWithHDF5 ()
 
xmlNodePtr createMultiDeterminantSetFromH5 ()
 
xmlNodePtr createMultiDeterminantSetCIHDF5 ()
 
xmlNodePtr PrepareDeterminantSetFromHDF5 ()
 
xmlNodePtr createJ3 ()
 
xmlNodePtr createJ2 ()
 
xmlNodePtr createJ1 ()
 
xmlNodePtr parameter (xmlNodePtr Parent, std::string Mypara, std::string a)
 
int numberOfExcitationsCSF (std::string &)
 
virtual void dumpPBC (const std::string &psi_tag, const std::string &ion_tag)
 
virtual void dump (const std::string &psi_tag, const std::string &ion_tag)
 
void dumpStdInput (const std::string &psi_tag, const std::string &ion_tag)
 
void dumpStdInputProd (const std::string &psi_tag, const std::string &ion_tag)
 
- Public Member Functions inherited from OhmmsAsciiParser
void skiplines (std::istream &is, int n)
 
template<class T >
void getValue (std::istream &is, T &aval)
 
template<class T1 , class T2 >
void getValue (std::istream &is, T1 &aval, T2 &bval)
 
template<class IT >
void getValues (std::istream &is, IT first, IT last)
 
int search (std::istream &is, const std::string &keyword)
 
int search (std::istream &is, const std::string &keyword, std::string &the_line)
 
bool lookFor (std::istream &is, const std::string &keyword)
 
bool lookFor (std::istream &is, const std::string &keyword, std::string &the_line)
 

Public Attributes

std::streampos pivot_begin
 
std::vector< std::string > tags
 
std::string MOtype
 
int readtype
 
int numAO
 
int NFZC
 
int NEXT
 
int NTOT
 
int NAC
 
- Public Attributes inherited from QMCGaussianParserBase
bool multideterminant
 
bool multidetH5
 
bool BohrUnit
 
bool SpinRestricted
 
bool Periodicity
 
bool UseHDF5
 
bool PBC
 
bool production
 
bool zeroCI
 
bool orderByExcitation
 
bool addJastrow
 
bool addJastrow3Body
 
bool ECP
 
bool debug
 
bool Structure
 
bool DoCusp
 
bool FixValence
 
bool singledetH5
 
bool optDetCoeffs
 
bool usingCSF
 
bool isSpinor
 
int IonChargeIndex
 
int ValenceChargeIndex
 
int AtomicNumberIndex
 
int NumberOfAtoms
 
int NumberOfEls
 
int target_state
 
int SpinMultiplicity
 
int NumberOfAlpha
 
int NumberOfBeta
 
int SizeOfBasisSet
 
int numMO
 
int readNO
 
int readGuess
 
int numMO2print
 
int ci_size
 
int ci_nca
 
int ci_ncb
 
int ci_nea
 
int ci_neb
 
int ci_nstates
 
int NbKpts
 
int nbexcitedstates
 
double ci_threshold
 
std::vector< double > STwist_Coord
 
std::string Title
 
std::string basisType
 
std::string basisName
 
std::string Normalized
 
std::string CurrentCenter
 
std::string outputFile
 
std::string angular_type
 
std::string expandYlm
 
std::string h5file
 
std::string multih5file
 
std::string WFS_name
 
std::string CodeName
 
const SimulationCell simulation_cell
 
ParticleSet IonSystem
 
std::vector< std::string > GroupName
 
std::vector< int > gShell
 
std::vector< int > gNumber
 
std::vector< int > gBound
 
std::vector< int > Occ_alpha
 
std::vector< int > Occ_beta
 
std::vector< value_typeQv
 
std::vector< value_typegExp
 
std::vector< value_typegC0
 
std::vector< value_typegC1
 
std::vector< value_typeEigVal_alpha
 
std::vector< value_typeEigVal_beta
 
std::vector< value_typeEigVec
 
std::unique_ptr< xmlNode, void(*)(xmlNodePtr)> gridPtr
 
std::vector< std::string > CIalpha
 
std::vector< std::string > CIbeta
 
std::vector< std::string > CSFocc
 
std::vector< std::vector< std::string > > CSFalpha
 
std::vector< std::vector< std::string > > CSFbeta
 
std::vector< std::vector< double > > CSFexpansion
 
std::vector< double > CIcoeff
 
std::vector< double > X
 
std::vector< double > Y
 
std::vector< double > Z
 
std::vector< int > Image
 
std::vector< int > CIexcitLVL
 
std::vector< std::pair< int, double > > coeff2csf
 
- Public Attributes inherited from OhmmsAsciiParser
char dbuffer [bufferSize]
 
std::vector< std::string > currentWords
 

Additional Inherited Members

- Public Types inherited from QMCGaussianParserBase
using value_type = double
 
using SingleParticlePos = ParticleSet::SingleParticlePos
 
- Static Public Member Functions inherited from QMCGaussianParserBase
static void init ()
 
- Static Public Attributes inherited from QMCGaussianParserBase
static std::map< int, std::string > IonName
 
static std::vector< std::string > gShellType
 
static std::vector< int > gShellID
 
static const std::vector< double > gCoreTable
 
- Static Public Attributes inherited from OhmmsAsciiParser
static const int bufferSize = 200
 

Detailed Description

Definition at line 24 of file LCAOHDFParser.h.

Constructor & Destructor Documentation

◆ LCAOHDFParser() [1/2]

Definition at line 23 of file LCAOHDFParser.cpp.

References QMCGaussianParserBase::angular_type, QMCGaussianParserBase::basisName, QMCGaussianParserBase::BohrUnit, MOtype, NFZC, QMCGaussianParserBase::Normalized, and readtype.

24 {
25  basisName = "Gaussian";
26  Normalized = "no";
27  BohrUnit = true;
28  MOtype = "Canonical";
29  angular_type = "cartesian";
30  readtype = 0;
31  NFZC = 0;
32 }
std::string MOtype
Definition: LCAOHDFParser.h:33

◆ LCAOHDFParser() [2/2]

Member Function Documentation

◆ getCell()

void getCell ( const std::string &  fname)

Definition at line 187 of file LCAOHDFParser.cpp.

References hdf_archive::close(), hdf_archive::open(), hdf_archive::push(), hdf_archive::read(), QMCGaussianParserBase::X, QMCGaussianParserBase::Y, and QMCGaussianParserBase::Z.

Referenced by parse().

188 {
189  X.resize(3);
190  Y.resize(3);
191  Z.resize(3);
192 
193  hdf_archive hin;
194 
195  if (!hin.open(fname.c_str(), H5F_ACC_RDONLY))
196  {
197  std::cerr << "Could not open H5 file" << std::endl;
198  abort();
199  }
200  hin.push("Cell");
201  Matrix<double> LatticeVec(3, 3);
202  hin.read(LatticeVec, "LatticeVectors");
203  X[0] = LatticeVec[0][0];
204  X[1] = LatticeVec[0][1];
205  X[2] = LatticeVec[0][2];
206  Y[0] = LatticeVec[1][0];
207  Y[1] = LatticeVec[1][1];
208  Y[2] = LatticeVec[1][2];
209  Z[0] = LatticeVec[2][0];
210  Z[1] = LatticeVec[2][1];
211  Z[2] = LatticeVec[2][2];
212  hin.close();
213  std::cout << "Lattice parameters in Bohr:" << std::endl;
214  std::cout << X[0] << " " << X[1] << " " << X[2] << std::endl;
215  std::cout << Y[0] << " " << Y[1] << " " << Y[2] << std::endl;
216  std::cout << Z[0] << " " << Z[1] << " " << Z[2] << std::endl;
217 }
bool open(const std::filesystem::path &fname, unsigned flags=H5F_ACC_RDWR)
open a file
std::vector< double > Z
std::vector< double > X
void close()
close all the open groups and file
Definition: hdf_archive.cpp:38
class to handle hdf file
Definition: hdf_archive.h:51
std::vector< double > Y
void push(const std::string &gname, bool createit=true)
push a group to the group stack
void read(T &data, const std::string &aname)
read the data from the group aname and check status runtime error is issued on I/O error ...
Definition: hdf_archive.h:306

◆ getGaussianCenters()

void getGaussianCenters ( const std::string  fname)

Definition at line 358 of file LCAOHDFParser.cpp.

Referenced by parse().

358 {}

◆ getGeometry()

void getGeometry ( const std::string &  fname)

Definition at line 218 of file LCAOHDFParser.cpp.

References QMCGaussianParserBase::AtomicNumberIndex, hdf_archive::close(), ParticleSet::getSpeciesSet(), ParticleSet::GroupID, QMCGaussianParserBase::GroupName, QMCGaussianParserBase::IonChargeIndex, QMCGaussianParserBase::IonName, QMCGaussianParserBase::IonSystem, QMCGaussianParserBase::NumberOfAtoms, hdf_archive::open(), hdf_archive::pop(), hdf_archive::push(), ParticleSet::R, hdf_archive::read(), and tags.

Referenced by parse().

219 {
220  hdf_archive hin;
221 
222  if (!hin.open(fname.c_str(), H5F_ACC_RDONLY))
223  {
224  std::cerr << "Could not open H5 file" << std::endl;
225  abort();
226  }
227  hin.push("atoms");
228 
229  //atomic numbers
230  std::vector<int> atomic_number;
231  std::vector<double> q, pos;
232  tags.clear();
233  //read atomic info
234  //MAP: (Atom Number, Species Index)
235  std::vector<int> idx(NumberOfAtoms);
236  std::map<int, int> AtomIndexmap;
237  hin.read(idx, "species_ids");
238  for (int i = 0; i < NumberOfAtoms; i++)
239  {
240  AtomIndexmap.insert(std::pair<int, int>(i, idx[i]));
241  }
242  for (int i = 0; i < NumberOfAtoms; i++)
243  {
244  std::string speciesName("species_");
245  speciesName = speciesName + std::to_string(AtomIndexmap[i]);
246  hin.push(speciesName);
247  int zint;
248  double z;
249  std::string Name;
250  hin.read(zint, "atomic_number");
251  atomic_number.push_back(zint);
252  hin.read(z, "charge");
253  q.push_back(z);
254  hin.read(Name, "name");
255  tags.push_back(Name);
256  hin.pop();
257  }
258 
259  Matrix<double> IonPos(NumberOfAtoms, 3);
260  hin.read(IonPos, "positions");
261 
262  SpeciesSet& species(IonSystem.getSpeciesSet());
263  for (int i = 0; i < NumberOfAtoms; i++)
264  {
265  IonSystem.R[i][0] = IonPos[i][0];
266  IonSystem.R[i][1] = IonPos[i][1];
267  IonSystem.R[i][2] = IonPos[i][2];
268  GroupName[i] = IonName[atomic_number[i]];
269  int speciesID = species.addSpecies(GroupName[i]);
270  IonSystem.GroupID[i] = speciesID;
271  species(AtomicNumberIndex, speciesID) = atomic_number[i];
272  species(IonChargeIndex, speciesID) = q[i];
273  }
274  hin.close();
275 }
bool open(const std::filesystem::path &fname, unsigned flags=H5F_ACC_RDWR)
open a file
void close()
close all the open groups and file
Definition: hdf_archive.cpp:38
std::vector< std::string > tags
Definition: LCAOHDFParser.h:32
class to handle hdf file
Definition: hdf_archive.h:51
std::vector< std::string > GroupName
ParticleIndex GroupID
Species ID.
Definition: ParticleSet.h:77
ParticlePos R
Position.
Definition: ParticleSet.h:79
static std::map< int, std::string > IonName
SpeciesSet & getSpeciesSet()
retrun the SpeciesSet of this particle set
Definition: ParticleSet.h:231
void push(const std::string &gname, bool createit=true)
push a group to the group stack
void read(T &data, const std::string &aname)
read the data from the group aname and check status runtime error is issued on I/O error ...
Definition: hdf_archive.h:306
Custom container for set of attributes for a set of species.
Definition: SpeciesSet.h:33

◆ getMO()

void getMO ( const std::string &  fname)

Definition at line 302 of file LCAOHDFParser.cpp.

References Matrix< T, Alloc >::begin(), hdf_archive::close(), copy(), QMCGaussianParserBase::EigVal_alpha, QMCGaussianParserBase::EigVal_beta, QMCGaussianParserBase::EigVec, Matrix< T, Alloc >::end(), qmcplusplus::n, QMCGaussianParserBase::numMO, hdf_archive::open(), hdf_archive::read(), QMCGaussianParserBase::SizeOfBasisSet, and QMCGaussianParserBase::SpinRestricted.

Referenced by parse().

303 {
304  EigVal_alpha.resize(numMO);
305  EigVal_beta.resize(numMO);
306  EigVec.resize(2 * SizeOfBasisSet * numMO);
307 
309 
310  hdf_archive hin;
311 
312  if (!hin.open(fname.c_str(), H5F_ACC_RDONLY))
313  {
314  std::cerr << "Could not open H5 file" << std::endl;
315  abort();
316  }
317 
318  std::string setname = "/Super_Twist/eigenset_0";
319  hin.read(CartMat, setname);
320  setname = "/Super_Twist/eigenval_0";
321  hin.read(EigVal_alpha, setname);
322  std::copy(CartMat.begin(), CartMat.end(), EigVec.begin());
323 
324  if (!SpinRestricted)
325  {
326  setname = "/Super_Twist/eigenset_1";
327  hin.read(CartMat, setname);
328  setname = "/Super_Twist/eigenval_1";
329  hin.read(EigVal_beta, setname);
330  }
331  std::copy(CartMat.begin(), CartMat.end(), EigVec.begin() + SizeOfBasisSet * numMO);
332 
333  hin.close();
334  int btot = numMO * SizeOfBasisSet;
335  int n = btot / 4, b = 0;
336  int dn = btot - n * 4;
337  std::ostringstream eig;
338 
339  eig.setf(std::ios::scientific, std::ios::floatfield);
340  eig.setf(std::ios::right, std::ios::adjustfield);
341  eig.precision(14);
342  eig << "\n";
343  for (int k = 0; k < n; k++)
344  {
345  eig << std::setw(22) << EigVec[b] << std::setw(22) << EigVec[b + 1] << std::setw(22) << EigVec[b + 2]
346  << std::setw(22) << EigVec[b + 3] << "\n";
347  b += 4;
348  }
349  for (int k = 0; k < dn; k++)
350  {
351  eig << std::setw(22) << EigVec[b++];
352  }
353  std::cout << eig.str() << std::endl;
354  std::cout << "Finished reading MO." << std::endl;
355  hin.close();
356 }
std::vector< value_type > EigVal_beta
bool open(const std::filesystem::path &fname, unsigned flags=H5F_ACC_RDWR)
open a file
void close()
close all the open groups and file
Definition: hdf_archive.cpp:38
class to handle hdf file
Definition: hdf_archive.h:51
void copy(const Array< T1, 3 > &src, Array< T2, 3 > &dest)
Definition: Blitz.h:639
std::vector< value_type > EigVal_alpha
std::vector< value_type > EigVec
void read(T &data, const std::string &aname)
read the data from the group aname and check status runtime error is issued on I/O error ...
Definition: hdf_archive.h:306

◆ getSuperTwist()

void getSuperTwist ( const std::string &  fname)

Definition at line 277 of file LCAOHDFParser.cpp.

References hdf_archive::close(), hdf_archive::open(), hdf_archive::pop(), hdf_archive::push(), hdf_archive::read(), and QMCGaussianParserBase::STwist_Coord.

Referenced by parse().

278 {
279  Matrix<double> MyVec(1, 3);
280  hdf_archive hin;
281 
282  if (!hin.open(fname.c_str(), H5F_ACC_RDONLY))
283  {
284  std::cerr << "Could not open H5 file" << std::endl;
285  abort();
286  }
287 
288  hin.push("Super_Twist");
289 
290  STwist_Coord.resize(3);
291 
292  hin.read(MyVec, "Coord");
293 
294  hin.pop();
295  STwist_Coord[0] = MyVec[0][0];
296  STwist_Coord[1] = MyVec[0][1];
297  STwist_Coord[2] = MyVec[0][2];
298 
299  hin.close();
300 }
bool open(const std::filesystem::path &fname, unsigned flags=H5F_ACC_RDWR)
open a file
void close()
close all the open groups and file
Definition: hdf_archive.cpp:38
class to handle hdf file
Definition: hdf_archive.h:51
std::vector< double > STwist_Coord
void push(const std::string &gname, bool createit=true)
push a group to the group stack
void read(T &data, const std::string &aname)
read the data from the group aname and check status runtime error is issued on I/O error ...
Definition: hdf_archive.h:306

◆ parse()

void parse ( const std::string &  fname)
overridevirtual

Implements QMCGaussianParserBase.

Definition at line 46 of file LCAOHDFParser.cpp.

References qmcplusplus::app_warning(), qmcplusplus::Units::bohr, QMCGaussianParserBase::BohrUnit, QMCGaussianParserBase::ci_nca, QMCGaussianParserBase::ci_ncb, QMCGaussianParserBase::ci_nea, QMCGaussianParserBase::ci_neb, QMCGaussianParserBase::ci_nstates, QMCGaussianParserBase::ci_size, QMCGaussianParserBase::CIalpha, QMCGaussianParserBase::CIbeta, QMCGaussianParserBase::CIcoeff, hdf_archive::close(), QMCGaussianParserBase::CodeName, ParticleSet::create(), QMCGaussianParserBase::debug, QMCGaussianParserBase::ECP, QMCGaussianParserBase::EigVal_alpha, QMCGaussianParserBase::EigVal_beta, getCell(), getGaussianCenters(), getGeometry(), getMO(), getSuperTwist(), QMCGaussianParserBase::GroupName, QMCGaussianParserBase::IonSystem, QMCGaussianParserBase::multideterminant, QMCGaussianParserBase::nbexcitedstates, numAO, QMCGaussianParserBase::NumberOfAlpha, QMCGaussianParserBase::NumberOfAtoms, QMCGaussianParserBase::NumberOfBeta, QMCGaussianParserBase::NumberOfEls, QMCGaussianParserBase::numMO, hdf_archive::open(), QMCGaussianParserBase::outputFile, QMCGaussianParserBase::PBC, hdf_archive::pop(), hdf_archive::push(), hdf_archive::read(), hdf_archive::readEntry(), QMCGaussianParserBase::SizeOfBasisSet, QMCGaussianParserBase::SpinMultiplicity, and QMCGaussianParserBase::SpinRestricted.

47 {
48  hdf_archive hin;
49 
50  if (!hin.open(fname.c_str(), H5F_ACC_RDONLY))
51  {
52  std::cerr << "Could not open H5 file" << std::endl;
53  abort();
54  }
55 
56  hin.push("application");
57  hin.read(CodeName, "code");
58  hin.pop();
59  std::cout << "Converting Wavefunction from the " << CodeName << " Code" << std::endl;
60 
61  hin.push("PBC");
62  hin.read(PBC, "PBC");
63  hin.pop();
64 
65  std::cout << "Periodic Boundary Conditions: " << (PBC ? ("yes") : ("no")) << std::endl;
66  std::cout.flush();
67 
68 
69  hin.push("parameters");
70  hin.read(ECP, "ECP");
71  std::cout << "usingECP: " << (ECP ? ("yes") : ("no")) << std::endl;
72  std::cout.flush();
73 
74  std::cout << "Multideterminants: " << (multideterminant ? ("yes") : ("no")) << std::endl;
75  std::cout.flush();
76 
77  hin.read(SpinRestricted, "SpinRestricted");
78  hin.read(numAO, "numAO");
79  hin.read(numMO, "numMO");
80 
81 
82  std::cout << "NUMBER OF AOs: " << numAO << std::endl;
84  std::cout << "Size of Basis Set: " << SizeOfBasisSet << std::endl;
85  std::cout << "NUMBER OF MOs: " << numMO << std::endl;
86 
87  bool bohr = true;
88  hin.read(bohr, "Unit");
89  std::cout << "Unit in Bohr=" << bohr << std::endl;
90  BohrUnit = bohr;
91 
92  hin.read(NumberOfAlpha, "NbAlpha");
93  hin.read(NumberOfBeta, "NbBeta");
94  hin.read(NumberOfEls, "NbTotElec");
95  int ds;
96  hin.read(ds, "spin");
97  if (CodeName == "PySCF")
98  SpinMultiplicity = ds + 1;
99  else
100  SpinMultiplicity = ds;
101 
102  std::cout << "Number of alpha electrons: " << NumberOfAlpha << std::endl;
103  std::cout << "Number of beta electrons: " << NumberOfBeta << std::endl;
104  std::cout << "Number of electrons: " << NumberOfEls << std::endl;
105  std::cout << "SPIN MULTIPLICITY: " << SpinMultiplicity << std::endl;
106 
107  hin.pop();
108  hin.push("atoms");
109  hin.read(NumberOfAtoms, "number_of_atoms");
110  std::cout << "NUMBER OF ATOMS: " << NumberOfAtoms << std::endl;
111  hin.pop();
112 
113  EigVal_alpha.resize(numMO);
114  EigVal_beta.resize(numMO);
115  Matrix<double> myvec(1, numMO);
116 
117  hin.push("Super_Twist");
118  if (hin.readEntry(myvec, "eigenval_0"))
119  {
120  // eigenval_0 exists on file
121  for (int i = 0; i < numMO; i++)
122  EigVal_alpha[i] = myvec[0][i];
123 
124  //Reading Eigenvals for Spin unRestricted calculation. This section is needed to set the occupation numbers
125  if (!SpinRestricted)
126  {
127  hin.read(myvec, "eigenval_1");
128  for (int i = 0; i < numMO; i++)
129  EigVal_beta[i] = myvec[0][i];
130  }
131  }
132  else
133  {
134  app_warning() << "eigenval_0 doesn't exist in h5 file. Treat all values zero." << std::endl;
135  }
136  hin.close();
137 
138 
140  GroupName.resize(NumberOfAtoms);
141  if (PBC)
142  {
143  getCell(fname);
144  getSuperTwist(fname);
145  if (debug)
146  {
147  getGaussianCenters(fname);
148  getMO(fname);
149  }
150  }
151  getGeometry(fname);
152 
153  if (multideterminant)
154  {
155  hdf_archive hin;
156 
157  if (!hin.open(outputFile.c_str(), H5F_ACC_RDONLY))
158  {
159  std::cerr << "Could not open H5 file" << std::endl;
160  abort();
161  }
162 
163  hin.push("MultiDet");
164 
165  hin.read(ci_size, "NbDet");
166  hin.read(ci_nstates, "nstate");
167  hin.read(nbexcitedstates, "nexcitedstate");
168  CIcoeff.clear();
169  CIalpha.clear();
170  CIbeta.clear();
171  CIcoeff.resize(ci_size);
172  CIalpha.resize(ci_size);
173  CIbeta.resize(ci_size);
174 
175  int ds = SpinMultiplicity - 1;
176  int neb = (NumberOfEls - ds) / 2;
177  int nea = NumberOfEls - NumberOfBeta;
180  ci_nca = nea - ci_nea;
181  ci_ncb = neb - ci_neb;
182  std::cout << " Done reading CIs!!" << std::endl;
183  hin.close();
184  }
185 }
std::vector< value_type > EigVal_beta
std::ostream & app_warning()
Definition: OutputManager.h:69
bool open(const std::filesystem::path &fname, unsigned flags=H5F_ACC_RDWR)
open a file
void getSuperTwist(const std::string &fname)
void close()
close all the open groups and file
Definition: hdf_archive.cpp:38
std::vector< double > CIcoeff
class to handle hdf file
Definition: hdf_archive.h:51
std::vector< std::string > GroupName
std::vector< value_type > EigVal_alpha
void getMO(const std::string &fname)
std::vector< std::string > CIalpha
void create(const std::vector< int > &agroup)
create grouped particles
void push(const std::string &gname, bool createit=true)
push a group to the group stack
void getCell(const std::string &fname)
void read(T &data, const std::string &aname)
read the data from the group aname and check status runtime error is issued on I/O error ...
Definition: hdf_archive.h:306
void getGaussianCenters(const std::string fname)
void getGeometry(const std::string &fname)
bool readEntry(T &data, const std::string &aname)
read the data from the group aname and return status use read() for inbuilt error checking ...
Definition: hdf_archive.h:293
std::vector< std::string > CIbeta

Member Data Documentation

◆ MOtype

std::string MOtype

Definition at line 33 of file LCAOHDFParser.h.

Referenced by LCAOHDFParser().

◆ NAC

int NAC

Definition at line 35 of file LCAOHDFParser.h.

◆ NEXT

int NEXT

Definition at line 35 of file LCAOHDFParser.h.

◆ NFZC

int NFZC

Definition at line 35 of file LCAOHDFParser.h.

Referenced by LCAOHDFParser().

◆ NTOT

int NTOT

Definition at line 35 of file LCAOHDFParser.h.

◆ numAO

int numAO

Definition at line 34 of file LCAOHDFParser.h.

Referenced by parse().

◆ pivot_begin

std::streampos pivot_begin

Definition at line 31 of file LCAOHDFParser.h.

◆ readtype

int readtype

Definition at line 34 of file LCAOHDFParser.h.

Referenced by LCAOHDFParser().

◆ tags

std::vector<std::string> tags

Definition at line 32 of file LCAOHDFParser.h.

Referenced by getGeometry().


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