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:
parent
6448fe7121
commit
21bba95909
@ -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)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user