OpenMPCD
Instrumentation/VelocityAutocorrelation/Triplets.hpp
Go to the documentation of this file.
1 /**
2  * @file
3  * Defines the OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Triplets class.
4  */
5 
6 #ifndef OPENMPCD_CUDA_MPCFLUID_INSTRUMENTATION_VELOCITYAUTOCORRELATION_TRIPLETS_HPP
7 #define OPENMPCD_CUDA_MPCFLUID_INSTRUMENTATION_VELOCITYAUTOCORRELATION_TRIPLETS_HPP
8 
10 
11 namespace OpenMPCD
12 {
13 namespace CUDA
14 {
15 namespace MPCFluid
16 {
17 namespace Instrumentation
18 {
19 namespace VelocityAutocorrelation
20 {
21 /**
22  * Class for measurements of velocity autocorrelation in MPC fluids that consist of triplets of particles.
23  *
24  * The particles that belong to one triplet are assumed to be adjacent to each other in memory.
25  * E.g. triplet 0 consists of particles 0 and 1 and 2, triplet 1 of particles 3 and 4 and 5, etc.
26  */
27 class Triplets : public Base
28 {
29  public:
30  /**
31  * The constructor.
32  * @param[in] sim The simulation instance.
33  * @param[in] devMemMgr The Device memory manager.
34  * @param[in] mpcFluid_ The MPC fluid to measure.
35  */
36  Triplets(const Simulation* const sim, DeviceMemoryManager* devMemMgr, const MPCFluid::Base* const mpcFluid_);
37 
38  private:
39  Triplets(const Triplets&); ///< The copy constructor.
40 
41  public:
42  /**
43  * The destructor.
44  */
45  virtual ~Triplets()
46  {
47  }
48 
49  protected:
50  /**
51  * Populates the currentVelocities buffer with the current velocities of the fluid constituents.
52  */
53  virtual void populateCurrentVelocities();
54 }; //class Triplets
55 } //namespace VelocityAutocorrelation
56 } //namespace Instrumentation
57 } //namespace MPCFluid
58 } //namespace CUDA
59 } //namespace OpenMPCD
60 
61 #endif
OpenMPCD::CUDA::MPCFluid::Base
Base class for MPC fluids.
Definition: CUDA/MPCFluid/Base.hpp:40
OpenMPCD::CUDA::DeviceMemoryManager
Class for managing memory on the CUDA Device.
Definition: DeviceMemoryManager.hpp:21
Base.hpp
OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Triplets::populateCurrentVelocities
virtual void populateCurrentVelocities()
Populates the currentVelocities buffer with the current velocities of the fluid constituents.
OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Triplets::Triplets
Triplets(const Simulation *const sim, DeviceMemoryManager *devMemMgr, const MPCFluid::Base *const mpcFluid_)
The constructor.
OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Triplets::~Triplets
virtual ~Triplets()
The destructor.
Definition: Instrumentation/VelocityAutocorrelation/Triplets.hpp:45
OpenMPCD::CUDA::Simulation
MPCD simulation with Molecular Dynamics on CUDA-capable GPUs.
Definition: CUDA/Simulation.hpp:48
OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Base
Base class for measurements of velocity autocorrelation in MPC fluids.
Definition: CUDA/MPCFluid/Instrumentation/VelocityAutocorrelation/Base.hpp:110
OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Triplets
Class for measurements of velocity autocorrelation in MPC fluids that consist of triplets of particle...
Definition: Instrumentation/VelocityAutocorrelation/Triplets.hpp:27