OpenMPCD
include
OpenMPCD
CUDA
MPCFluid
Instrumentation
VelocityAutocorrelation
Instrumentation/VelocityAutocorrelation/Chains.hpp
Go to the documentation of this file.
1
/**
2
* @file
3
* Defines the OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Chains class.
4
*/
5
6
#ifndef OPENMPCD_CUDA_MPCFLUID_INSTRUMENTATION_VELOCITYAUTOCORRELATION_CHAINS_HPP
7
#define OPENMPCD_CUDA_MPCFLUID_INSTRUMENTATION_VELOCITYAUTOCORRELATION_CHAINS_HPP
8
9
#include <
OpenMPCD/CUDA/MPCFluid/Instrumentation/VelocityAutocorrelation/Base.hpp
>
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 chains of particles.
23
*
24
* All chains are assumed to be of the same length.
25
*
26
* The particles that belong to one chain are assumed to be adjacent to each other in memory.
27
* E.g. chain 0 consists of particles [0,n-1], chain 1 of particles [n,2n-1], etc.
28
*/
29
class
Chains
:
public
Base
30
{
31
public
:
32
/**
33
* The constructor.
34
* @param[in] chainLength_ The number of MPC fluid particles per chain.
35
* @param[in] sim The simulation instance.
36
* @param[in] devMemMgr The Device memory manager.
37
* @param[in] mpcFluid_ The MPC fluid to measure.
38
*/
39
Chains
(
40
const
unsigned
int
chainLength_,
const
Simulation
*
const
sim,
41
DeviceMemoryManager
* devMemMgr,
const
MPCFluid::Base
*
const
mpcFluid_);
42
43
private
:
44
Chains
(
const
Chains
&);
///< The copy constructor.
45
46
public
:
47
/**
48
* The destructor.
49
*/
50
virtual
~Chains
()
51
{
52
}
53
54
protected
:
55
/**
56
* Populates the currentVelocities buffer with the current velocities of the fluid constituents.
57
*/
58
virtual
void
populateCurrentVelocities
();
59
60
private
:
61
const
unsigned
int
chainLength;
///< The number of MPC fluid particles per chain.
62
};
//class Chains
63
}
//namespace VelocityAutocorrelation
64
}
//namespace Instrumentation
65
}
//namespace MPCFluid
66
}
//namespace CUDA
67
}
//namespace OpenMPCD
68
69
#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::Chains::populateCurrentVelocities
virtual void populateCurrentVelocities()
Populates the currentVelocities buffer with the current velocities of the fluid constituents.
OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Chains::~Chains
virtual ~Chains()
The destructor.
Definition:
Instrumentation/VelocityAutocorrelation/Chains.hpp:50
OpenMPCD::CUDA::MPCFluid::Instrumentation::VelocityAutocorrelation::Chains
Class for measurements of velocity autocorrelation in MPC fluids that consist of chains of particles.
Definition:
Instrumentation/VelocityAutocorrelation/Chains.hpp:29
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::Chains::Chains
Chains(const unsigned int chainLength_, const Simulation *const sim, DeviceMemoryManager *devMemMgr, const MPCFluid::Base *const mpcFluid_)
The constructor.
Generated by
1.8.17