diff --git a/Grid/algorithms/iterative/Reconstruct5Dprop.h b/Grid/algorithms/iterative/Reconstruct5Dprop.h new file mode 100644 index 00000000..303202af --- /dev/null +++ b/Grid/algorithms/iterative/Reconstruct5Dprop.h @@ -0,0 +1,139 @@ + /************************************************************************************* + + Grid physics library, www.github.com/paboyle/Grid + + Source file: ./lib/algorithms/iterative/SchurRedBlack.h + + Copyright (C) 2015 + +Author: Peter Boyle + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + See the full license in the file "LICENSE" in the top level distribution directory + *************************************************************************************/ + /* END LEGAL */ +#pragma once + +namespace Grid { +namespace QCD { + + +template class Reconstruct5DfromPhysical { + private: + OperatorFunction & _PauliVillarsSolver; + public: + + ///////////////////////////////////////////////////// + // Wrap the usual normal equations Schur trick + ///////////////////////////////////////////////////// + Reconstruct5DfromPhysical(OperatorFunction &PauliVillarsSolver) : + _PauliVillarsSolver(PauliVillarsSolver) + { }; + /* + void SliceDump(const Field &f) + { + std::vector C1; + Field ff(f._grid); + Gamma G5 ( Gamma::Algebra::Gamma5); + ff= f+ G5*f; + ff=ff*0.5; + { + auto ip = localInnerProduct(ff,ff); + sliceSum(ip,C1,0); + for(int s=0;s