Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RHMC cleanup #122

Open
2 of 3 tasks
clarkedavida opened this issue Feb 8, 2023 · 4 comments
Open
2 of 3 tasks

RHMC cleanup #122

clarkedavida opened this issue Feb 8, 2023 · 4 comments
Assignees
Labels
design Discussion on how to implement something

Comments

@clarkedavida
Copy link
Collaborator

clarkedavida commented Feb 8, 2023

  • Formatting makes hisq smearing and force modules and associated files difficult to read. Should be cleaned up.
  • DSlash has HisqMdaggMFunctor which is not used anywhere? Should be deleted, since one would guess the applyMdaggerM method calls it, but it doesn't.
  • hisqforceconstructs header has a hisqforce include guard. Meanwhile hisqforce.h has no include guard. Can be fixed with replace include guards with pragma once #101

I may add more things. I'm cleaning up the formatting stuff right now while adding some documentation, but the other changes require testing so I'm going to postpone them to a different commit.

@clarkedavida clarkedavida self-assigned this Feb 8, 2023
@clarkedavida clarkedavida changed the title HISQ module cleanup RHMC cleanup Feb 8, 2023
@clarkedavida
Copy link
Collaborator Author

  • The HisqSmearing class has a smearAll method carrying out the level 1 hisq smear, unitarization, and level 2 smear. Separately is class has a SmearLvl1 method and a ProjectU3 method, apparently because they are used in the force. Would it make sense to have the smearAll method call these two, to reduce code redundancy?

@clarkedavida
Copy link
Collaborator Author

clarkedavida commented Feb 8, 2023

  • There is a "SHARED_GAUGENAIK", which is only shared between level 1 smearing fields. It is also shared with a gaugeNaik field in the Force profiler... I guess this should be renamed?
  • Along this vein, the force profiler is apparently quite outdated by now. Maybe we should just axe it?

@clarkedavida
Copy link
Collaborator Author

    //this is only a placeholder function for testing, real implementation is in HISQ force! REMOVE for production!
    void make_f0(Spinorfield<floatT, onDevice, Even, HaloDepthSpin> &phi, std::vector <floatT> rat_coeff);

This is in our integrator.h... What do I do?

I'm adding a bunch of you guys b/c I want your perspectives on some of the stuff I'm putting in here.

@clarkedavida
Copy link
Collaborator Author

clarkedavida commented Feb 12, 2023

  • both plaqconstructs.h and rectconstructs.h have the same include-guard... how is this possible? Lukas you wrote these, do you know what happened?

@clarkedavida clarkedavida added the design Discussion on how to implement something label Mar 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design Discussion on how to implement something
Projects
None yet
Development

No branches or pull requests

5 participants