OpenMPCD
|
Class for measurements of Fourier-transformed velocities in MPC fluids that consist of chains of arbitrary size. More...
#include <Chains.hpp>
Public Member Functions | |
Chains (const unsigned int chainLength_, const Simulation *const sim, DeviceMemoryManager *devMemMgr, const MPCFluid::Base *const mpcFluid_) | |
The constructor. More... | |
virtual | ~Chains () |
The destructor. More... | |
virtual void | measure () |
Performs measurements. More... | |
virtual void | save (const std::string &rundir) const |
Saves the data to the given run directory. More... | |
Static Public Member Functions | |
static bool | isConfigured (const Simulation *const sim) |
Returns whether the given simulation configured this instrumentation. More... | |
Protected Attributes | |
const Simulation *const | simulation |
The simulation instance. More... | |
DeviceMemoryManager *const | deviceMemoryManager |
The Device memory manager. More... | |
const MPCFluid::Base *const | mpcFluid |
The fluid to measure. More... | |
MPCParticleVelocityType * | realBuffer |
Device buffer for temporary results. More... | |
MPCParticleVelocityType * | imagBuffer |
Device buffer for temporary results. More... | |
std::vector< std::vector< MPCParticlePositionType > > | k_n |
The multiples of \( 2*\pi/L_i \) for each component \( i \) of each \(\vec{k}\) vector. More... | |
std::vector< std::deque< std::pair< FP, Vector3D< std::complex< MPCParticleVelocityType > > > > > | fourierTransformedVelocities |
The Fourier-transformed velocities measured, along with the corresponding simulation timestamps. More... | |
Class for measurements of Fourier-transformed velocities in MPC fluids that consist of chains of arbitrary size.
All chains are assumed to be of the same length.
The particles that belong to one chain are assumed to be adjacent to each other in memory. E.g. chain 0 consists of particles [0,n-1], chain 1 of particles [n,2n-1], etc.
Definition at line 29 of file Instrumentation/FourierTransformedVelocity/Chains.hpp.
OpenMPCD::CUDA::MPCFluid::Instrumentation::FourierTransformedVelocity::Chains::Chains | ( | const unsigned int | chainLength_, |
const Simulation *const | sim, | ||
DeviceMemoryManager * | devMemMgr, | ||
const MPCFluid::Base *const | mpcFluid_ | ||
) |
The constructor.
[in] | chainLength_ | The number of MPC fluid particles per chain. |
[in] | sim | The simulation instance. |
[in] | devMemMgr | The Device memory manager. |
[in] | mpcFluid_ | The MPC fluid to measure. |
|
inlinevirtual |
The destructor.
Definition at line 49 of file Instrumentation/FourierTransformedVelocity/Chains.hpp.
|
staticinherited |
Returns whether the given simulation configured this instrumentation.
[in] | sim | The simulation instance. |
NULLPointerException | Throws if sim is nullptr . |
|
virtual |
Performs measurements.
Implements OpenMPCD::CUDA::MPCFluid::Instrumentation::FourierTransformedVelocity::Base.
|
virtualinherited |
|
protectedinherited |
The Device memory manager.
Definition at line 106 of file CUDA/MPCFluid/Instrumentation/FourierTransformedVelocity/Base.hpp.
|
protectedinherited |
The Fourier-transformed velocities measured, along with the corresponding simulation timestamps.
Definition at line 115 of file CUDA/MPCFluid/Instrumentation/FourierTransformedVelocity/Base.hpp.
|
protectedinherited |
Device buffer for temporary results.
Definition at line 110 of file CUDA/MPCFluid/Instrumentation/FourierTransformedVelocity/Base.hpp.
|
protectedinherited |
The multiples of \( 2*\pi/L_i \) for each component \( i \) of each \(\vec{k}\) vector.
Definition at line 112 of file CUDA/MPCFluid/Instrumentation/FourierTransformedVelocity/Base.hpp.
|
protectedinherited |
The fluid to measure.
Definition at line 107 of file CUDA/MPCFluid/Instrumentation/FourierTransformedVelocity/Base.hpp.
|
protectedinherited |
Device buffer for temporary results.
Definition at line 109 of file CUDA/MPCFluid/Instrumentation/FourierTransformedVelocity/Base.hpp.
|
protectedinherited |
The simulation instance.
Definition at line 105 of file CUDA/MPCFluid/Instrumentation/FourierTransformedVelocity/Base.hpp.