1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-04-11 14:40:46 +01:00

Hadrons: eigenpack metadata is no ignored anymore when reading

This commit is contained in:
Antonin Portelli 2018-10-01 19:33:45 +01:00
parent 6448fe7121
commit 21bba95909

View File

@ -122,10 +122,16 @@ protected:
void basicRead(std::vector<T> &evec, std::vector<RealD> &eval, void basicRead(std::vector<T> &evec, std::vector<RealD> &eval,
const std::string filename, const unsigned int size) const std::string filename, const unsigned int size)
{ {
ScidacReader binReader; ScidacReader binReader;
std::string recordXml;
binReader.open(filename); binReader.open(filename);
binReader.skipPastObjectRecord(SCIDAC_FILE_XML); binReader.readLimeObject(recordXml, SCIDAC_FILE_XML);
XmlReader xmlReader(recordXml, true, "eigenPackPar");
xmlReader.push();
xmlReader.readCurrentSubtree(record.operatorXml);
xmlReader.nextElement();
xmlReader.readCurrentSubtree(record.solverXml);
for(int k = 0; k < size; ++k) for(int k = 0; k < size; ++k)
{ {
VecRecord vecRecord; VecRecord vecRecord;
@ -149,9 +155,15 @@ protected:
{ {
ScidacReader binReader; ScidacReader binReader;
VecRecord vecRecord; VecRecord vecRecord;
std::string recordXml;
binReader.open(filename); binReader.open(filename);
binReader.skipPastObjectRecord(SCIDAC_FILE_XML); binReader.readLimeObject(recordXml, SCIDAC_FILE_XML);
XmlReader xmlReader(recordXml, true, "eigenPackPar");
xmlReader.push();
xmlReader.readCurrentSubtree(record.operatorXml);
xmlReader.nextElement();
xmlReader.readCurrentSubtree(record.solverXml);
LOG(Message) << "Reading eigenvector " << index << std::endl; LOG(Message) << "Reading eigenvector " << index << std::endl;
binReader.readScidacFieldRecord(evec, vecRecord); binReader.readScidacFieldRecord(evec, vecRecord);
if (vecRecord.index != index) if (vecRecord.index != index)