From 220ad5e3ee8bf39e8bd403570914d600ff3e4c81 Mon Sep 17 00:00:00 2001 From: Christopher Kelly Date: Tue, 22 Dec 2020 11:08:22 -0500 Subject: [PATCH] Added more verbose log output to GeneralEvenOddRatioRationalPseudoFermionAction In GeneralEvenOddRatioRationalPseudoFermionAction, setting the bounds check frequency to 0 now disables the check --- .../GeneralEvenOddRationalRatio.h | 27 ++++++++++++++----- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/Grid/qcd/action/pseudofermion/GeneralEvenOddRationalRatio.h b/Grid/qcd/action/pseudofermion/GeneralEvenOddRationalRatio.h index ecc140b4..8561bd36 100644 --- a/Grid/qcd/action/pseudofermion/GeneralEvenOddRationalRatio.h +++ b/Grid/qcd/action/pseudofermion/GeneralEvenOddRationalRatio.h @@ -84,6 +84,7 @@ NAMESPACE_BEGIN(Grid); PhiEven(_NumOp.FermionRedBlackGrid()), param(p) { + std::cout< MdagM(DenOp); ConjugateGradientMultiShift msCG_M(param.MaxIter,ApproxHalfPower); msCG_M(MdagM,etaOdd,tmp); // VdagV^-1/(2*inv_pow) MdagM^1/(2*inv_pow) eta + std::cout< VdagV(NumOp); ConjugateGradientMultiShift msCG_V(param.MaxIter,ApproxNegHalfPower); msCG_V(VdagV,tmp,PhiOdd); @@ -161,14 +166,14 @@ NAMESPACE_BEGIN(Grid); assert(NumOp.ConstEE() == 1); assert(DenOp.ConstEE() == 1); PhiEven = Zero(); - + std::cout< VdagV(NumOp); ConjugateGradientMultiShift msCG_V(param.MaxIter,ApproxHalfPower); msCG_V(VdagV,PhiOdd,X); // MdagM^-1/(2*inv_pow) VdagV^1/(2*inv_pow) Phi + std::cout< MdagM(DenOp); ConjugateGradientMultiShift msCG_M(param.MaxIter,ApproxNegHalfPower); msCG_M(MdagM,X,Y); // Randomly apply rational bounds checks. - if ( (rand()%param.BoundsCheckFreq)==0 ) { + if ( param.BoundsCheckFreq != 0 && (rand()%param.BoundsCheckFreq)==0 ) { + std::cout< msCG_V(param.MaxIter,ApproxHalfPower); ConjugateGradientMultiShift msCG_M(param.MaxIter,ApproxNegPower); + std::cout<