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

Rename mover to walker #221

Open
ye-luo opened this issue May 9, 2019 · 9 comments
Open

Rename mover to walker #221

ye-luo opened this issue May 9, 2019 · 9 comments

Comments

@ye-luo
Copy link
Collaborator

ye-luo commented May 9, 2019

I feel it is my fault that calling it mover which is a collection of ParticleSet, Wavefunction and random number generator (also hamiltonian).
I think it should be correctly renamed to 'walker'. Any objection?

@lshulen
Copy link

lshulen commented May 9, 2019

I've got no problem with that. What would you think about creating something like a population class to hold walkers?

@ye-luo
Copy link
Collaborator Author

ye-luo commented May 9, 2019

We use std::vector<Walker*> mover_list now.
Do you have a particular reason to do something like

class population {
  std::vector<Walker*> mover_list;
}

Or

class population {
  std::vector<ParticleSet*>
  std::vector<WaveFunction*>
  ...
}

I think this is better.

Or you mean something else?

@lshulen
Copy link

lshulen commented May 9, 2019

I like the second one. It may also make sense to eventually move some of the generic methods to here rather than having to rely on generic_walker->waveFunction.method(blah....)

@lshulen
Copy link

lshulen commented May 9, 2019

In response to your question, I like having this sort of object because by passing it to a method to work on the population you can defer how it should be iterated over and it seems cleaner conceptually (to me).

@PDoakORNL
Copy link
Collaborator

Why not just refactor my crowd class to your liking? Does it need to be written from scratch again.

@PDoakORNL
Copy link
Collaborator

Population is a better name.

@lshulen
Copy link

lshulen commented May 9, 2019

Not opposed to that idea. It could be a good point of convergence.

@ye-luo
Copy link
Collaborator Author

ye-luo commented May 12, 2019

I'm still digesting the Crowd class. I believe some portion will be moved to the develop.
At the moment, I'm trying not to do drastic changes and settle a bit other changes first.
I did see the miniqmc main routine gets very big and some effort will be needed to separate the main and drivers.

@PDoakORNL
Copy link
Collaborator

When I have some spare cycles I have a useful idea to generate the generic wrappers of the single evals in the class template declaration for Crowd as well as the default method definitions. These can be specialized when useful.

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

No branches or pull requests

3 participants