diff --git a/extras/Hadrons/A2AVectors.hpp b/extras/Hadrons/A2AVectors.hpp index 745ef94f..82ed502e 100644 --- a/extras/Hadrons/A2AVectors.hpp +++ b/extras/Hadrons/A2AVectors.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/A2AVectors.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef A2A_Vectors_hpp_ #define A2A_Vectors_hpp_ @@ -183,205 +210,6 @@ void A2AVectorsSchurDiagTwo::makeHighModeW5D(FermionField &wout_4d, } } - - // A2AVectorsSchurDiagTwo(const int Nl, const int Nh, - // std::vector &v, - // std::vector &w, - // const bool _return_5d) - // : Nl(_Nl), Nh(_Nh), - // return_5d(_return_5d) - // { - // if (!return_5d) - // { - // init_resize(1, Nl + Nh); - // } - // else - // { - // init_resize(Nl + Nh, Nl + Nh); - // } - // } - - // void init_resize(const size_t size_5d, const size_t size_4d, - // GridBase *grid_5d, GridBase *grid_4d) - // { - // w_5d.resize(size_5d, grid_5d); - // v_5d.resize(size_5d, grid_5d); - // w_4d.resize(size_4d, grid_4d); - // v_4d.resize(size_4d, grid_4d); - // } - - // int get_Nh(void) const - // { - // return Nh; - // } - - // int get_Nl(void) const - // { - // return Nl; - // } - - // void low_modes(int il, const Field &evec, const Real &eval, Matrix &action) - // { - // int i5d; - - // i5d = 0; - // if (return_5d) i5d = il; - // this->low_mode_v(v_5d[i5d], v_4d[il], evec, eval, action); - // this->low_mode_w(w_5d[i5d], w_4d[il], evec, eval, action); - // } - - // void high_modes(int ih, Field &source_5d, Field &w_source_5d, - // Field &source_4d, Solver &solver) - // { - // int i5d; - - // i5d = 0; - // if (return_5d) i5d = ih + Nl; - // this->high_mode_v(source_5d, v_5d[i5d], v_4d[ih + Nl], solver); - // this->high_mode_w(w_source_5d, source_4d, w_5d[i5d], w_4d[ih + Nl]); - // } - - // void return_v(int i, Field &vout_5d, Field &vout_4d) - // { - // vout_4d = v_4d[i]; - // if (!(return_5d)) i = 0; - // vout_5d = v_5d[i]; - // } - - // void return_w(int i, Field &wout_5d, Field &wout_4d) - // { - // wout_4d = w_4d[i]; - // if (!(return_5d)) i = 0; - // wout_5d = w_5d[i]; - // } - - // void low_mode_v(Field &vout_5d, Field &vout_4d, const Field &evec, - // const Real &eval, Matrix &action) - // { - // GridBase *grid = action.RedBlackGrid(); - // Field src_o(grid); - // Field sol_e(grid); - // Field sol_o(grid); - // Field tmp(grid); - - // src_o = evec; - // src_o.checkerboard = Odd; - // pickCheckerboard(Even, sol_e, vout_5d); - // pickCheckerboard(Odd, sol_o, vout_5d); - - // ///////////////////////////////////////////////////// - // // v_ie = -(1/eval_i) * MeeInv Meo MooInv evec_i - // ///////////////////////////////////////////////////// - // action.MooeeInv(src_o, tmp); - // assert(tmp.checkerboard == Odd); - // action.Meooe(tmp, sol_e); - // assert(sol_e.checkerboard == Even); - // action.MooeeInv(sol_e, tmp); - // assert(tmp.checkerboard == Even); - // sol_e = (-1.0 / eval) * tmp; - // assert(sol_e.checkerboard == Even); - - // ///////////////////////////////////////////////////// - // // v_io = (1/eval_i) * MooInv evec_i - // ///////////////////////////////////////////////////// - // action.MooeeInv(src_o, tmp); - // assert(tmp.checkerboard == Odd); - // sol_o = (1.0 / eval) * tmp; - // assert(sol_o.checkerboard == Odd); - - // setCheckerboard(vout_5d, sol_e); - // assert(sol_e.checkerboard == Even); - // setCheckerboard(vout_5d, sol_o); - // assert(sol_o.checkerboard == Odd); - - // action.ExportPhysicalFermionSolution(vout_5d, vout_4d); - // } - - // void low_mode_w(Field &wout_5d, Field &wout_4d, const Field &evec, - // const Real &eval, Matrix &action) - // { - // GridBase *grid = action.RedBlackGrid(); - // SchurDiagTwoOperator _HermOpEO(action); - - // Field src_o(grid); - // Field sol_e(grid); - // Field sol_o(grid); - // Field tmp(grid); - - // GridBase *fgrid = action.Grid(); - // Field tmp_wout(fgrid); - - // src_o = evec; - // src_o.checkerboard = Odd; - // pickCheckerboard(Even, sol_e, tmp_wout); - // pickCheckerboard(Odd, sol_o, tmp_wout); - - // ///////////////////////////////////////////////////// - // // w_ie = - MeeInvDag MoeDag Doo evec_i - // ///////////////////////////////////////////////////// - // _HermOpEO.Mpc(src_o, tmp); - // assert(tmp.checkerboard == Odd); - // action.MeooeDag(tmp, sol_e); - // assert(sol_e.checkerboard == Even); - // action.MooeeInvDag(sol_e, tmp); - // assert(tmp.checkerboard == Even); - // sol_e = (-1.0) * tmp; - - // ///////////////////////////////////////////////////// - // // w_io = Doo evec_i - // ///////////////////////////////////////////////////// - // _HermOpEO.Mpc(src_o, sol_o); - // assert(sol_o.checkerboard == Odd); - - // setCheckerboard(tmp_wout, sol_e); - // assert(sol_e.checkerboard == Even); - // setCheckerboard(tmp_wout, sol_o); - // assert(sol_o.checkerboard == Odd); - - // action.DminusDag(tmp_wout, wout_5d); - - // action.ExportPhysicalFermionSource(wout_5d, wout_4d); - // } - - // void high_mode_v(const Field &source, Field &vout_5d, Field &vout_4d, - // Matrix &action, Solver &solver) - // { - // GridBase *fgrid = action.Grid(); - // solver(vout_5d, source); // Note: solver is solver(out, in) - // action.ExportPhysicalFermionSolution(vout_5d, vout_4d); - // } - - // void high_mode_w(const Field &w_source_5d, const Field &source_4d, - // Field &wout_5d, Field &wout_4d) - // { - // wout_5d = w_source_5d; - // wout_4d = source_4d; - // } - -// TODO: A2A for coarse eigenvectors - -// template -// class A2ALMSchurDiagTwoCoarse : public A2AModesSchurDiagTwo -// { -// private: -// const std::vector &subspace; -// const std::vector &evec_coarse; -// const std::vector &eval_coarse; -// Matrix &action; - -// public: -// A2ALMSchurDiagTwoCoarse(const std::vector &_subspace, const std::vector &_evec_coarse, const std::vector &_eval_coarse, Matrix &_action) -// : subspace(_subspace), evec_coarse(_evec_coarse), eval_coarse(_eval_coarse), action(_action){}; - -// void operator()(int i, FineField &vout, FineField &wout) -// { -// FineField prom_evec(subspace[0]._grid); -// blockPromote(evec_coarse[i], prom_evec, subspace); -// this->low_mode_v(action, prom_evec, eval_coarse[i], vout); -// this->low_mode_w(action, prom_evec, eval_coarse[i], wout); -// } -// }; - END_HADRONS_NAMESPACE #endif // A2A_Vectors_hpp_ \ No newline at end of file diff --git a/extras/Hadrons/DilutedNoise.hpp b/extras/Hadrons/DilutedNoise.hpp index a284d46b..16561c99 100644 --- a/extras/Hadrons/DilutedNoise.hpp +++ b/extras/Hadrons/DilutedNoise.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/DilutedNoise.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_DilutedNoise_hpp_ #define Hadrons_DilutedNoise_hpp_ diff --git a/extras/Hadrons/Modules/MAction/MobiusDWF.cc b/extras/Hadrons/Modules/MAction/MobiusDWF.cc index 8c138bca..9cc4755a 100644 --- a/extras/Hadrons/Modules/MAction/MobiusDWF.cc +++ b/extras/Hadrons/Modules/MAction/MobiusDWF.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MAction/MobiusDWF.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MAction/MobiusDWF.hpp b/extras/Hadrons/Modules/MAction/MobiusDWF.hpp index a026a864..9cead7bd 100644 --- a/extras/Hadrons/Modules/MAction/MobiusDWF.hpp +++ b/extras/Hadrons/Modules/MAction/MobiusDWF.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MAction/MobiusDWF.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_MAction_MobiusDWF_hpp_ #define Hadrons_MAction_MobiusDWF_hpp_ diff --git a/extras/Hadrons/Modules/MAction/ScaledDWF.cc b/extras/Hadrons/Modules/MAction/ScaledDWF.cc index 19e7cf4c..40eed326 100644 --- a/extras/Hadrons/Modules/MAction/ScaledDWF.cc +++ b/extras/Hadrons/Modules/MAction/ScaledDWF.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MAction/ScaledDWF.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MAction/ScaledDWF.hpp b/extras/Hadrons/Modules/MAction/ScaledDWF.hpp index 78127f6f..b75ff31d 100644 --- a/extras/Hadrons/Modules/MAction/ScaledDWF.hpp +++ b/extras/Hadrons/Modules/MAction/ScaledDWF.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MAction/ScaledDWF.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_MAction_ScaledDWF_hpp_ #define Hadrons_MAction_ScaledDWF_hpp_ diff --git a/extras/Hadrons/Modules/MContraction/A2AMesonField.cc b/extras/Hadrons/Modules/MContraction/A2AMesonField.cc index 5867b1dd..ffc45e22 100644 --- a/extras/Hadrons/Modules/MContraction/A2AMesonField.cc +++ b/extras/Hadrons/Modules/MContraction/A2AMesonField.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MContraction/A2AMesonField.cc + +Copyright (C) 2015-2018 + +Author: paboyle + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MContraction/A2AMesonField.hpp b/extras/Hadrons/Modules/MContraction/A2AMesonField.hpp index c2dd9007..0f419186 100644 --- a/extras/Hadrons/Modules/MContraction/A2AMesonField.hpp +++ b/extras/Hadrons/Modules/MContraction/A2AMesonField.hpp @@ -1,3 +1,32 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MContraction/A2AMesonField.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli +Author: Peter Boyle +Author: paboyle + +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 */ #ifndef Hadrons_MContraction_A2AMesonField_hpp_ #define Hadrons_MContraction_A2AMesonField_hpp_ @@ -10,7 +39,7 @@ BEGIN_HADRONS_NAMESPACE /****************************************************************************** - * A2AMesonField * + * All-to-all meson field creation * ******************************************************************************/ BEGIN_MODULE_NAMESPACE(MContraction) diff --git a/extras/Hadrons/Modules/MContraction/Meson.hpp b/extras/Hadrons/Modules/MContraction/Meson.hpp index 96d65512..66a19214 100644 --- a/extras/Hadrons/Modules/MContraction/Meson.hpp +++ b/extras/Hadrons/Modules/MContraction/Meson.hpp @@ -8,6 +8,7 @@ Copyright (C) 2015-2018 Author: Antonin Portelli Author: Lanny91 +Author: Vera Guelpers 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 diff --git a/extras/Hadrons/Modules/MFermion/FreeProp.cc b/extras/Hadrons/Modules/MFermion/FreeProp.cc index b8eb0529..7b3a0ce5 100644 --- a/extras/Hadrons/Modules/MFermion/FreeProp.cc +++ b/extras/Hadrons/Modules/MFermion/FreeProp.cc @@ -6,8 +6,7 @@ Source file: extras/Hadrons/Modules/MFermion/FreeProp.cc Copyright (C) 2015-2018 -Author: Antonin Portelli -Author: Vera Guelpers +Author: Vera Guelpers 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 diff --git a/extras/Hadrons/Modules/MFermion/FreeProp.hpp b/extras/Hadrons/Modules/MFermion/FreeProp.hpp index 4e448188..6538e09d 100644 --- a/extras/Hadrons/Modules/MFermion/FreeProp.hpp +++ b/extras/Hadrons/Modules/MFermion/FreeProp.hpp @@ -6,7 +6,8 @@ Source file: extras/Hadrons/Modules/MFermion/FreeProp.hpp Copyright (C) 2015-2018 -Author: Vera Guelpers +Author: Antonin Portelli +Author: Vera Guelpers 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 diff --git a/extras/Hadrons/Modules/MGauge/StochEm.cc b/extras/Hadrons/Modules/MGauge/StochEm.cc index 1727706c..36d0be7c 100644 --- a/extras/Hadrons/Modules/MGauge/StochEm.cc +++ b/extras/Hadrons/Modules/MGauge/StochEm.cc @@ -7,7 +7,7 @@ Source file: extras/Hadrons/Modules/MGauge/StochEm.cc Copyright (C) 2015-2018 Author: Antonin Portelli -Author: James Harrison +Author: James Harrison Author: Vera Guelpers This program is free software; you can redistribute it and/or modify diff --git a/extras/Hadrons/Modules/MGauge/StochEm.hpp b/extras/Hadrons/Modules/MGauge/StochEm.hpp index 5eb9f1e9..fd07c294 100644 --- a/extras/Hadrons/Modules/MGauge/StochEm.hpp +++ b/extras/Hadrons/Modules/MGauge/StochEm.hpp @@ -7,7 +7,7 @@ Source file: extras/Hadrons/Modules/MGauge/StochEm.hpp Copyright (C) 2015-2018 Author: Antonin Portelli -Author: James Harrison +Author: James Harrison Author: Vera Guelpers This program is free software; you can redistribute it and/or modify diff --git a/extras/Hadrons/Modules/MGauge/StoutSmearing.cc b/extras/Hadrons/Modules/MGauge/StoutSmearing.cc index 161e74aa..3dae8428 100644 --- a/extras/Hadrons/Modules/MGauge/StoutSmearing.cc +++ b/extras/Hadrons/Modules/MGauge/StoutSmearing.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MGauge/StoutSmearing.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MGauge/StoutSmearing.hpp b/extras/Hadrons/Modules/MGauge/StoutSmearing.hpp index 66406f5b..ddfc1a73 100644 --- a/extras/Hadrons/Modules/MGauge/StoutSmearing.hpp +++ b/extras/Hadrons/Modules/MGauge/StoutSmearing.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MGauge/StoutSmearing.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_MGauge_StoutSmearing_hpp_ #define Hadrons_MGauge_StoutSmearing_hpp_ diff --git a/extras/Hadrons/Modules/MGauge/UnitEm.cc b/extras/Hadrons/Modules/MGauge/UnitEm.cc index 6260f10a..6b3be47e 100644 --- a/extras/Hadrons/Modules/MGauge/UnitEm.cc +++ b/extras/Hadrons/Modules/MGauge/UnitEm.cc @@ -2,12 +2,11 @@ Grid physics library, www.github.com/paboyle/Grid -Source file: extras/Hadrons/Modules/MGauge/StochEm.cc +Source file: extras/Hadrons/Modules/MGauge/UnitEm.cc -Copyright (C) 2015 -Copyright (C) 2016 +Copyright (C) 2015-2018 -Author: James Harrison +Author: James Harrison 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 diff --git a/extras/Hadrons/Modules/MGauge/UnitEm.hpp b/extras/Hadrons/Modules/MGauge/UnitEm.hpp index 07ee5bba..a9cb9dfa 100644 --- a/extras/Hadrons/Modules/MGauge/UnitEm.hpp +++ b/extras/Hadrons/Modules/MGauge/UnitEm.hpp @@ -2,12 +2,11 @@ Grid physics library, www.github.com/paboyle/Grid -Source file: extras/Hadrons/Modules/MGauge/StochEm.hpp +Source file: extras/Hadrons/Modules/MGauge/UnitEm.hpp -Copyright (C) 2015 -Copyright (C) 2016 +Copyright (C) 2015-2018 -Author: James Harrison +Author: James Harrison 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 diff --git a/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.cc b/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.cc index 472a0b4d..50997962 100644 --- a/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.cc +++ b/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.hpp b/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.hpp index 7e2a471f..12340cbb 100644 --- a/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.hpp +++ b/extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MNoise/TimeDilutedSpinColorDiagonal.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_MNoise_TimeDilutedSpinColorDiagonal_hpp_ #define Hadrons_MNoise_TimeDilutedSpinColorDiagonal_hpp_ diff --git a/extras/Hadrons/Modules/MScalar/ChargedProp.hpp b/extras/Hadrons/Modules/MScalar/ChargedProp.hpp index 3ca7940f..5b2f0422 100644 --- a/extras/Hadrons/Modules/MScalar/ChargedProp.hpp +++ b/extras/Hadrons/Modules/MScalar/ChargedProp.hpp @@ -7,7 +7,7 @@ Source file: extras/Hadrons/Modules/MScalar/ChargedProp.hpp Copyright (C) 2015-2018 Author: Antonin Portelli -Author: James Harrison +Author: James Harrison 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 diff --git a/extras/Hadrons/Modules/MScalar/ScalarVP.cc b/extras/Hadrons/Modules/MScalar/ScalarVP.cc index fdb9586e..d560ec5a 100644 --- a/extras/Hadrons/Modules/MScalar/ScalarVP.cc +++ b/extras/Hadrons/Modules/MScalar/ScalarVP.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalar/ScalarVP.cc + +Copyright (C) 2015-2018 + +Author: James Harrison + +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 */ #include #include #include diff --git a/extras/Hadrons/Modules/MScalar/ScalarVP.hpp b/extras/Hadrons/Modules/MScalar/ScalarVP.hpp index 741325d1..e1b2dc3d 100644 --- a/extras/Hadrons/Modules/MScalar/ScalarVP.hpp +++ b/extras/Hadrons/Modules/MScalar/ScalarVP.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalar/ScalarVP.hpp + +Copyright (C) 2015-2018 + +Author: James Harrison + +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 */ #ifndef Hadrons_MScalar_ScalarVP_hpp_ #define Hadrons_MScalar_ScalarVP_hpp_ diff --git a/extras/Hadrons/Modules/MScalar/VPCounterTerms.cc b/extras/Hadrons/Modules/MScalar/VPCounterTerms.cc index b3393679..86867788 100644 --- a/extras/Hadrons/Modules/MScalar/VPCounterTerms.cc +++ b/extras/Hadrons/Modules/MScalar/VPCounterTerms.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalar/VPCounterTerms.cc + +Copyright (C) 2015-2018 + +Author: James Harrison + +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 */ #include #include diff --git a/extras/Hadrons/Modules/MScalar/VPCounterTerms.hpp b/extras/Hadrons/Modules/MScalar/VPCounterTerms.hpp index 99e1b1ce..a2ccbb56 100644 --- a/extras/Hadrons/Modules/MScalar/VPCounterTerms.hpp +++ b/extras/Hadrons/Modules/MScalar/VPCounterTerms.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalar/VPCounterTerms.hpp + +Copyright (C) 2015-2018 + +Author: James Harrison + +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 */ #ifndef Hadrons_MScalar_VPCounterTerms_hpp_ #define Hadrons_MScalar_VPCounterTerms_hpp_ diff --git a/extras/Hadrons/Modules/MScalarSUN/StochFreeField.cc b/extras/Hadrons/Modules/MScalarSUN/StochFreeField.cc index 0be90022..db14d75d 100644 --- a/extras/Hadrons/Modules/MScalarSUN/StochFreeField.cc +++ b/extras/Hadrons/Modules/MScalarSUN/StochFreeField.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalarSUN/StochFreeField.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MScalarSUN/StochFreeField.hpp b/extras/Hadrons/Modules/MScalarSUN/StochFreeField.hpp index 75ef3fde..ea15f3ef 100644 --- a/extras/Hadrons/Modules/MScalarSUN/StochFreeField.hpp +++ b/extras/Hadrons/Modules/MScalarSUN/StochFreeField.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalarSUN/StochFreeField.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_MScalarSUN_StochFreeField_hpp_ #define Hadrons_MScalarSUN_StochFreeField_hpp_ diff --git a/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.cc b/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.cc index f22d08af..eaddd318 100644 --- a/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.cc +++ b/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.hpp b/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.hpp index 4807e865..80424936 100644 --- a/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.hpp +++ b/extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalarSUN/TimeMomProbe.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_MScalarSUN_TimeMomProbe_hpp_ #define Hadrons_MScalarSUN_TimeMomProbe_hpp_ diff --git a/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.cc b/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.cc index 70fb2445..712f86d8 100644 --- a/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.cc +++ b/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.cc @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.hpp b/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.hpp index 4c2cdb0d..48dddd4f 100644 --- a/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.hpp +++ b/extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.hpp @@ -1,3 +1,30 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MScalarSUN/TwoPointNPR.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli + +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 */ #ifndef Hadrons_MScalarSUN_TwoPointNPR_hpp_ #define Hadrons_MScalarSUN_TwoPointNPR_hpp_ diff --git a/extras/Hadrons/Modules/MSolver/A2AVectors.cc b/extras/Hadrons/Modules/MSolver/A2AVectors.cc index 477d0b72..a13920ff 100644 --- a/extras/Hadrons/Modules/MSolver/A2AVectors.cc +++ b/extras/Hadrons/Modules/MSolver/A2AVectors.cc @@ -1,3 +1,31 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MSolver/A2AVectors.cc + +Copyright (C) 2015-2018 + +Author: Antonin Portelli +Author: fionnoh + +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 */ #include using namespace Grid; diff --git a/extras/Hadrons/Modules/MSolver/A2AVectors.hpp b/extras/Hadrons/Modules/MSolver/A2AVectors.hpp index 9d2de4dd..27c0cca1 100644 --- a/extras/Hadrons/Modules/MSolver/A2AVectors.hpp +++ b/extras/Hadrons/Modules/MSolver/A2AVectors.hpp @@ -1,3 +1,31 @@ +/************************************************************************************* + +Grid physics library, www.github.com/paboyle/Grid + +Source file: extras/Hadrons/Modules/MSolver/A2AVectors.hpp + +Copyright (C) 2015-2018 + +Author: Antonin Portelli +Author: fionnoh + +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 */ #ifndef Hadrons_MSolver_A2AVectors_hpp_ #define Hadrons_MSolver_A2AVectors_hpp_ @@ -12,7 +40,7 @@ BEGIN_HADRONS_NAMESPACE /****************************************************************************** - * Create all-to-all vector class * + * Create all-to-all V & W vectors * ******************************************************************************/ BEGIN_MODULE_NAMESPACE(MSolver) @@ -57,7 +85,7 @@ MODULE_REGISTER_TMP(ZA2AVectors, ARG(TA2AVectors>), MSolver); /****************************************************************************** - * TA2AVectors implementation * + * TA2AVectors implementation * ******************************************************************************/ // constructor ///////////////////////////////////////////////////////////////// template @@ -200,39 +228,8 @@ void TA2AVectors::execute(void) std::cout << norm2(w[Nl_ + ih]) << std::endl; } } - - - // // source conversion for 4D sources - // if (!env().isObject5d(par().noise)) - // { - // if (Ls == 1) - // { - // ferm_src = noise[ih]; - // tmp = ferm_src; - // } - // else - // { - // tmp = noise[ih]; - // action.ImportPhysicalFermionSource(noise[ih], ferm_src); - // action.ImportUnphysicalFermion(noise[ih], unphys_ferm); - // } - // } - // // source conversion for 5D sources - // else - // { - // if (Ls != env().getObjectLs(par().noise)) - // { - // HADRONS_ERROR(Size, "Ls mismatch between quark action and source"); - // } - // else - // { - // ferm_src = noise[ih]; - // action.ExportPhysicalFermionSolution(ferm_src, tmp); - // unphys_ferm = ferm_src; - // } - // } - // a2a.high_modes(ih, ferm_src, unphys_ferm, tmp, solver); } + END_MODULE_NAMESPACE END_HADRONS_NAMESPACE diff --git a/extras/Hadrons/Modules/MSolver/RBPrecCG.hpp b/extras/Hadrons/Modules/MSolver/RBPrecCG.hpp index 347371a3..3b9a43c8 100644 --- a/extras/Hadrons/Modules/MSolver/RBPrecCG.hpp +++ b/extras/Hadrons/Modules/MSolver/RBPrecCG.hpp @@ -7,6 +7,7 @@ Source file: extras/Hadrons/Modules/MSolver/RBPrecCG.hpp Copyright (C) 2015-2018 Author: Antonin Portelli +Author: fionnoh 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 diff --git a/extras/Hadrons/Solver.hpp b/extras/Hadrons/Solver.hpp index 08867634..5d72e3d5 100644 --- a/extras/Hadrons/Solver.hpp +++ b/extras/Hadrons/Solver.hpp @@ -2,7 +2,7 @@ Grid physics library, www.github.com/paboyle/Grid -Source file: extras/Hadrons/EigenPack.hpp +Source file: extras/Hadrons/Solver.hpp Copyright (C) 2015-2018