diff --git a/Grid/algorithms/multigrid/Aggregates.h b/Grid/algorithms/multigrid/Aggregates.h index fc527929c..204b0aac9 100644 --- a/Grid/algorithms/multigrid/Aggregates.h +++ b/Grid/algorithms/multigrid/Aggregates.h @@ -66,7 +66,21 @@ public: { }; - + void GlobalOrthonormalise(void) + { + // Normalise all vectors + for(int i=0;i "< "< "< GCR(0.001,10,DiracOp,simple_fine,30,30); // PrecGeneralisedConjugateResidualNonHermitian GCR(0.001,10,DiracOp,simple_fine,12,12); // PrecGeneralisedConjugateResidualNonHermitian GCR(0.001,30,DiracOp,simple_fine,12,12); - PrecGeneralisedConjugateResidualNonHermitian GCR(0.001,30,DiracOp,simple_fine,10,10); + // PrecGeneralisedConjugateResidualNonHermitian GCR(0.0005,30,DiracOp,simple_fine,20,20); + PrecGeneralisedConjugateResidualNonHermitian GCR(0.0005,30,DiracOp,simple_fine,10,10); FineField noise(FineGrid); FineField src(FineGrid); FineField guess(FineGrid); @@ -167,6 +184,8 @@ public: noise = subspace[b]; scale = std::pow(norm2(noise),-0.5); noise=noise*scale; + + DiracOp.Op(noise,Mn); std::cout< "<"<