12#include <util/containers/DArray.h>
13#include <pscf/math/IntVec.h>
17 template <
typename Data>
class Array;
45 template <
int D,
class T>
113 using McMoveT =
typename T::McMove;
116 using McMoveT::system;
117 using McMoveT::simulator;
An IntVec<D, T> is a D-component vector of elements of integer type T.
void attemptMove() override
Attempt move that translates all w fields.
DArray< typename Types< D >::RField > w_
~ShiftMove()=default
Destructor.
void readParameters(std::istream &in) override
Read body of parameter file block.
ShiftMove(typename T::McSimulator &simulator)
Constructor.
virtual void shiftFields(IntVec< D > const &shift)=0
Compute and store shifted w fields.
void shiftField(Array< double > &out, Array< double > const &in, IntVec< D > shift, IntVec< D > dimensions) const
Compute a shifted version of a field.
void setup() override
Setup before the beginning of each simulation run.
Array container class template.
Class templates for real-valued periodic fields.
PSCF package top-level namespace.
Utility classes for scientific computation.