Interface for Yang-Mills gradient flow#1480
Conversation
|
@Jenkins ok to test |
maddyscientist
left a comment
There was a problem hiding this comment.
Thanks for this contribution @aniketsen, an excellent addition to QUDA. I've left a few review comments, and a few things need fixed, but all should be easy to do.
Can you also apply clang-format to the diff please, as described here?
Do you have any thoughts on how we can correctness tests for this (as well as the regular Wilson Flow function) in QUDA? Short of fully implementing Wilson flow in a separate test code, is there anything that makes sense for testing?
|
@maddyscientist sorry for taking so long to get back. I have made the changes that you suggested. For testing, we have a native cpu implementation which both the interfaces for Wilson flow and Gradient flow have been tested against. For a correctness test for Wilson flow, I don't see any other way than implementing the individual steps. For the Gradient flow, if the Wilson flow steps and ApplyLaplace are tested, the rest is just algebra, which I suppose is also separately tested. |
|
@maddyscientist @aniketsen That reminds me to implement some CPU code for (at least) the 3-staple action Stout and APE routines. I can get to that relatively soon if I find time away from my day job. Please leave it with me and I'll either make a separate PR or attach to this if it's not merged before I'm done. |
|
cscs-ci run |
Implemented an interface for Yang-Mills gradient flow (arXiv:1302.5246, Appendix D). Uses existing kernels for Wilson flow and Laplace operator. Added a function
GFlowStepto perform individual sub-steps of the Wilson flow. For this purpose, movedWFlowStepTypetoenum_qudato make it globally accessible.