1
0
mirror of https://github.com/paboyle/Grid.git synced 2024-11-10 07:55:35 +00:00
Commit Graph

3630 Commits

Author SHA1 Message Date
Guido Cossu
94b0d66e4c
Merge pull request #157 from goracle/dev-pull
Add print of the current git hash on Grid init.
2018-03-08 16:09:28 +09:00
Dan H
5e8af396fd Add print of the current git hash on Grid init. 2018-03-07 13:11:51 -05:00
a7d19dbb64 Merge branch 'develop' of github.com:paboyle/Grid into develop
# Conflicts:
#	lib/serialisation/BaseIO.h
2018-03-07 15:13:54 +00:00
90dbe03e17 Conversion of Grid tensors to std::vector made more elegant, also pair syntax changed to (x y) to avoid issues with JSON/XML 2018-03-07 15:12:32 +00:00
8b14096990 Conversion of Grid tensors to std::vector made more elegant, also pair syntax changed to (x y) to avoid issues with JSON/XML 2018-03-07 15:12:18 +00:00
485c5db0fe conversion of Grid tensors to nested std::vector in preparation for tensor serialisation 2018-03-06 19:22:03 +00:00
paboyle
c399c2b44d Guido broke the charge conjugate plaquette action with premature optimisation.
This sector of the code does not matter for anything other than Guido's quenched HMC
studies, and any plaq specific optimisations should be retained in a private branch
instead of destroying the code simplicity.
2018-03-05 12:55:41 +00:00
paboyle
af7de7a294 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2018-03-05 12:22:41 +00:00
paboyle
1dc86efd26 Finalize protection 2018-03-05 12:22:18 +00:00
30391cb2eb
Merge pull request #155 from fionnoh/develop
Some changes needed for deflation interface
2018-03-03 13:43:59 +00:00
Fionn O hOgain
2e88408f5c Some changes needed for deflation interface 2018-03-02 22:27:41 +00:00
paboyle
4790e99817 Extra communicator free that I had missed.
Hard to audit them all as this is complex
2018-02-20 15:12:31 +00:00
paboyle
2dd63aa7a4 Merge branch 'develop' of https://github.com/paboyle/Grid into develop 2018-02-20 14:29:26 +00:00
paboyle
559a501140 Deflation interface for solvers 2018-02-20 14:29:08 +00:00
paboyle
945684c470 updates for deflation in the RB solver 2018-02-20 14:28:38 +00:00
Christopher Kelly
e30a80a234 Relaxed constraints on MPI thread mode when not using multiple comms threads 2018-02-15 17:13:36 +00:00
paboyle
c96483e3bd Whitespace only change 2018-02-13 11:39:07 +00:00
paboyle
ae31a6a760 Move deflate to right class 2018-02-13 02:11:37 +00:00
paboyle
dd8f2a64fe INterface to suit hadrons on Lanczos 2018-02-13 02:08:49 +00:00
paboyle
7b8b2731e7 Conj error for complex coeffs 2018-02-12 16:06:31 +00:00
paboyle
237a8ec918 Communicator leak fixed (I think) 2018-02-12 13:27:20 +00:00
Daniel Richtmann
6ab60c5b70
Merge remote-tracking branch 'upstream/develop' into feature/wilsonmg 2018-02-08 23:59:07 +01:00
Daniel Richtmann
8c692b7ffd
WilsonMG: Comment assertion on hermiticity of coarse operator for now
TODO: Think of a way to not break dwf_hdcr by doing that. It's only an assertion
but it still interferes with it.
2018-02-08 23:55:05 +01:00
Daniel Richtmann
2976132bdd
Add first version of multigrid for wilson clover analogous to wilson one
Just like the wilson one, this algorithm

• is currently only a 2-level method since I don't have correct implementations
  for Mdir and Mdiag in CoarsenedMatrix yet (needed for further coarsening)
• needs levelization and refactoring into a proper algorithm
2018-02-08 23:52:10 +01:00
Daniel Richtmann
48177f2f2d
Add tests for all MR|GMRES solvers with wilson clover action 2018-02-08 23:52:09 +01:00
Daniel Richtmann
c4ce70a821
WilsonMG: Major cleanup 2018-02-08 23:52:08 +01:00
Daniel Richtmann
a3e009ba54
Add tests for CAGMRES solvers with staggered action 2018-02-08 17:46:28 +01:00
Daniel Richtmann
eb7cf239d9
Print warning messages in CAGMRES solvers
Currently, the implementation of these algorithms doesn't differ from their non
communication-avoiding versions.
2018-02-08 17:43:47 +01:00
Daniel Richtmann
13ae371ef8
Make solver parameters match in all MR|GMRES solver tests 2018-02-08 17:33:10 +01:00
Daniel Richtmann
9f79a87102
Fix bugs in Flexible GMRES solvers
Somehow I got the left and right-preconditioned versions of GMRES mixed up. As
of now this is right-preconditioned version, which is what we want.
2018-02-08 16:00:31 +01:00
Daniel Richtmann
4ded1ceeb0
Make GMRES solvers perform no more than MaxIterations steps
I noticed that it was possible to overrun this number.
2018-02-08 15:29:44 +01:00
Daniel Richtmann
8bc12e0ce1
Remove superfluous comments in MR solver 2018-02-07 18:09:09 +01:00
Daniel Richtmann
cc2f00f827
Remove test for MR solver with dwf action as it doesn't converge 2018-02-07 18:09:08 +01:00
Daniel Richtmann
cd61e2e6d6
Increase max iterations in test of MR solver with staggered action 2018-02-07 18:09:07 +01:00
Daniel Richtmann
323ed1a588
Add an overrelaxation parameter to the MR solver 2018-02-07 18:09:06 +01:00
Daniel Richtmann
68c66d2e4b
Remove empty line in output of *Residual* solvers 2018-02-07 18:08:56 +01:00
Daniel Richtmann
1671adfd49
WilsonMG: Add some tests for linear operators 2018-02-07 17:15:22 +01:00
Peter Boyle
896f3a8002 Fix to MPI for Hokusai system 2018-02-01 18:51:51 +00:00
Daniel Richtmann
871649238c
WilsonMG: Stricter naming for linear operators 2018-02-01 14:43:08 +01:00
Daniel Richtmann
7c86d2085b
WilsonMG: Some minor cleanup 2018-02-01 12:24:16 +01:00
Daniel Richtmann
9292be0b69
WilsonMG: Add check for Mdiag + Σ Mdir == M
Need to test my implementations of CoarsenedMatrix::Mdiag &
CoarsenedMatrix::Mdir.
2018-01-31 14:03:30 +01:00
Guido Cossu
f0fcdf75b5
Update README.md 2018-01-30 12:44:20 +01:00
Guido Cossu
53bffb83d4
Updating README with new SKL target 2018-01-30 12:42:36 +01:00
Daniel Richtmann
10141f90c9
WilsonMG: Rename test file 2018-01-30 10:25:09 +01:00
Guido Cossu
cd44e851f1 Fixing compilation error in FundtoHirep 2018-01-30 06:04:30 +01:00
Daniel Richtmann
a414430817
Merge remote-tracking branch 'upstream/develop' into feature/ddalphaamg 2018-01-29 18:32:31 +01:00
Daniel Richtmann
f20728baa9
WilsonMG: Some further steps towards a three level method
Currently this is very "manual" as we are still testing stuff. Will refactor
and make it an algorithm once everything works.

What currently does work:

  - All tests in MultiGridPreconditioner::runChecks for the first coarse grid
  - The tests for the intergrid operators going from the first to the second
    coarse grid
    - (1 - P R) v   == 0
    - (1 - R P) v_c == 0
  - A full solve with VPGCR and a two-level MG preconditioner

What hinders the rest of the tests from passing with a three-level method is the
absence of implementations of CoarsenedMatrix::Mdir and CoarsenedMatrix::Mdiag.
2018-01-29 18:29:49 +01:00
Daniel Richtmann
d2e68c4355
WilsonMG: Perform some minor cleanup 2018-01-29 18:07:10 +01:00
Daniel Richtmann
1cb745c8dc
Add function to return full type as std::string
Also works for nested templates. I find it useful for debugging.
Possible usage:

std::cout << "getTypename<AType>() = " << getTypename<Atype>() << std::endl;
std::cout << "getTypename<decltype(AnInstance)>() = " << getTypename<decltype(AnInstance)>() << std::endl;
2018-01-29 17:39:19 +01:00
Daniel Richtmann
faf4278019
Use 2 passes of GS in coarse operator construction 2018-01-29 17:21:42 +01:00