12#include <util/param/ParamComposite.h>
13#include <pscf/cuda/CudaRandom.h>
21 template <
int D>
class System;
138 {
return *systemPtr_; }
145 {
return *simulatorPtr_; }
152 {
return *cudaRandomPtr_; }
154 #ifndef RPG_BD_STEP_TPP
Random number generator on GPU.
Brownian dynamics simulator.
BdStep is an abstract base class for Brownian dynamics steps.
virtual void outputTimers(std::ostream &out)
Log output timing results.
virtual void readParameters(std::istream &in)
Read required parameters from file.
virtual ~BdStep()
Destructor.
BdStep(BdSimulator< D > &simulator)
Constructor.
System< D > & system()
Get parent System object.
virtual bool needsCc()
Decide whether cc fields need to be saved for move.
CudaRandom & cudaRandom()
Get Random number generator of parent System.
virtual void clearTimers()
Clear timers.
virtual void output()
Output statistics for this move (at the end of simulation)
virtual bool needsDc()
Decide whether dc fields need to be saved for move.
BdSimulator< D > & simulator()
Get parent BdSimulator object.
virtual bool step()=0
Take a single Brownian dynamics step.
virtual void setup()
Setup before the beginning of each simulation run.
Main class, representing one complete system.
ParamComposite()
Constructor.
File containing preprocessor macros for error handling.
SCFT and PS-FTS with real periodic fields (GPU)
PSCF package top-level namespace.