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

Adjust one body Jastrow SoA algorithm #752

Merged
merged 4 commits into from
Apr 9, 2018
Merged

Conversation

ye-luo
Copy link
Contributor

@ye-luo ye-luo commented Apr 8, 2018

The SoA J1 was written not using the memory pool while J2 and JeeI do.
When a walker with its memory pool loaded, Det and J2 JeeI have the up-to-date value but J1 doesn't.
This is not a problem after all the electrons are proposed to move once but not from the beginning.
This potential risk is secured by checking the ParticleSet.Ready4Measure flag.
However, the flag is delicate and needs a careful maintaining.

This PR changes the algorithm to be aligned as J2 and JeeI. No more need to recompute since it is loaded from the memory pool and the needed size is small, order Nelec.
The state flag ParticleSet.Ready4Measure is also removed.

This PR also fixed the missing names of ParticleSet objects in Sandbox apps.

@ghost ghost assigned ye-luo Apr 8, 2018
@ghost ghost added the in progress label Apr 8, 2018
@prckent
Copy link
Contributor

prckent commented Apr 9, 2018

+1 I am in favor of having one less fragile state machine in the code. I think the only place where a state machine is required is the drivers, which are explicit state machines.

Are there any more of these in the SoA code?

@ye-luo
Copy link
Contributor Author

ye-luo commented Apr 9, 2018

A state flag across classes are very fragile and must be minimized. Yes, drivers should take responsibility.
I think I have clean up all such things in the SoA code.

@markdewing markdewing merged commit fbbde82 into QMCPACK:develop Apr 9, 2018
@ghost ghost removed the in progress label Apr 9, 2018
@ye-luo ye-luo deleted the adjust-J1 branch April 13, 2018 18:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants