qmcpack icon indicating copy to clipboard operation
qmcpack copied to clipboard

How to resurrect true 2D capability?

Open Paul-St-Young opened this issue 3 years ago • 2 comments
trafficstars

Problem OHMMS_DIM is planned for obsolescence. With its removal, all code snippets for true 2D calculation will be history.

Proposed Solution Enable true 2D calculation via xml input.

To-do List:

  • [x] 2D potential energy (#3852)
  • [ ] 2D Jastrow wavefunction (kinetic energy)
  • [x] 2D determinant wavefunction (#4084)
  • [ ] 2D VMC driver
  • [ ] 2D DMC driver

Paul-St-Young avatar Feb 22 '22 21:02 Paul-St-Young

Please take a look at #3867 and think generally about how the dimensionality might be hidden/abstracted. #3867 will eventually get spin-orbit and non-spin orbit to use the same batched drivers. (The old cpu serial drivers are also heading for retirement since they will never run on GPUs efficiently). Realistically I don't think we can have multiple drivers for each dimensionality, at least the way we have done them historically - the humans simply don't scale. If you can come up with a design that is compatible with a generic driver you will also get wavefunction optimization, reptation etc. for "free", and 1D might already be nearly supported. For sure other people will have ideas on this.

prckent avatar Feb 22 '22 21:02 prckent

@prckent from a preliminary look, I don't think the MCCoords abstraction poses any difficulty at all. For true 2D, one can:

  1. fill the z-component of all vectors in walker_deltas.positions with zeros.
  2. check that the z-component of all vectors in drifts are zero.

Paul-St-Young avatar Feb 22 '22 21:02 Paul-St-Young