JeffersonLab / qphix

QCD for Intel Xeon Phi and Xeon processors
http://jeffersonlab.github.io/qphix/
Other
13 stars 11 forks source link

InvRichardsonMultiPrec: add support for CG as the inner solver #86

Closed kostrzewa closed 7 years ago

kostrzewa commented 7 years ago

by adding a new template argument MdagM, which will cause the correct operator to be applied in the updates

This is unfortunately not transparent unless we go ahead and add MdagM linear operators which would serve as m_outer here.

kostrzewa commented 7 years ago

To be more precise, this is required when we are doing the "NORMERR" type solve (in QUDA language)

MMdag y = b -> x = Mdag y

(this is achieved by instantiating InvCG with isign=-1, as we do in tmLQCD)

kostrzewa commented 7 years ago

Note that currently Travis does not run any Richardson solves, which is why we missed the issue with const in the devel branch as the code was moved to n-flavour support. I'll try to fix up the test cases to also instantiate and run the Richardson.

kostrzewa commented 7 years ago

Sorry, this was merged before the review. If you find some time @bjoo and @azrael417, it would be good if we could discuss whether you're okay with the approach taken here.