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

feat: more control of averaging potentials #1970

Open
wants to merge 36 commits into
base: develop
Choose a base branch
from
Open

Conversation

Danbr4d
Copy link
Contributor

@Danbr4d Danbr4d commented Sep 9, 2024

Added in capability to average over a specified number of iterations instead of each time. The hope is that this will fix an issue of spikes in r-factor when running the averaging of potentials currently.

@Danbr4d Danbr4d added Type: Enhancement Enhancement for existing feature Scope: Modules Related to a specific Module labels Sep 9, 2024
@Danbr4d Danbr4d self-assigned this Sep 9, 2024
@Danbr4d Danbr4d requested a review from trisyoungs September 11, 2024 10:04
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
@Danbr4d Danbr4d requested a review from trisyoungs September 27, 2024 08:30
Copy link
Member

@trisyoungs trisyoungs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For me, I think this PR is valuable as a proof of concept study that the averaging of potentials makes a positive difference, but we shouldn't merge it in in it's current form, simply because if we did we would immediately have to fix it up in a patch release anyway.

I think the best route forward is to introduce a PotentialSet class (distinct from a PartialSet and a PotentialMap, and living somewhere in the middle - we might consider renaming the latter to make the separation clear, since the new PotentialSet class would be based around a std::map) into which we can implement the necessary de/serialisation and += / /= operators necessary for the Averaging functions to work.

src/modules/epsrManager/epsrManager.h Show resolved Hide resolved
src/modules/epsrManager/epsrManager.h Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
@Danbr4d Danbr4d requested a review from rprospero November 5, 2024 09:33
Danbr4d and others added 2 commits November 5, 2024 13:09
Co-authored-by: Adam Washington <adam.washington@stfc.ac.uk>
@Danbr4d Danbr4d requested a review from trisyoungs November 18, 2024 11:22
Copy link
Member

@trisyoungs trisyoungs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry - few things to consider. Almost there but not quite!

src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
src/modules/epsrManager/process.cpp Outdated Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Scope: Modules Related to a specific Module Type: Enhancement Enhancement for existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants