OpenMPCD
|
Instrumentation for Gaussian Chain fluids. More...
#include <GaussianChains.hpp>
Public Member Functions | |
GaussianChains (const unsigned int chainLength, const Simulation *const sim, DeviceMemoryManager *const devMemMgr, const MPCFluid::GaussianChains *const mpcFluid_) | |
The constructor. More... | |
virtual | ~GaussianChains () |
The destructor. More... | |
void | measure () |
Performs measurements. More... | |
void | save (const std::string &rundir) const |
Saves the data to the given run directory. More... | |
const LogicalEntityMeanSquareDisplacement * | getLogicalEntityMeanSquareDisplacement () const |
Returns the LogicalEntityMeanSquareDisplacement instance, or nullptr if none was configured. More... | |
const NormalModeAutocorrelation * | getNormalModeAutocorrelation () const |
Returns the NormalModeAutocorrelation instance, or nullptr if none was configured. More... | |
Protected Member Functions | |
virtual void | measureSpecific () |
Performs measurements. More... | |
virtual void | saveSpecific (const std::string &rundir) const |
Saves the data to the given run directory. More... | |
Protected Attributes | |
FourierTransformedVelocity::Base * | fourierTransformedVelocity |
Measures Fourier-transformed velocities. More... | |
LogicalEntityMeanSquareDisplacement * | logicalEntityMeanSquareDisplacement |
Measures the mean square displacement of the centers of mass of the logical entities of the fluid. More... | |
NormalModeAutocorrelation * | normalModeAutocorrelation |
Measures the autocorrelation of normal mode coordinates. More... | |
VelocityAutocorrelation::Base * | velocityAutocorrelation |
Measures velocity autocorrelation. More... | |
Instrumentation for Gaussian Chain fluids.
If the OpenMPCD::Configuration
contains a key instrumentation.gaussianChains.squaredBondLengths
, which must be set only if there are at least two particles per chain, this object will measure the squared lengths of each of the bonds, bond 0
being the one connecting particles 0
and 1
in a chain, bond 1
connecting particles 1
and 2
, and so forth up to bond N_particlesPerChain - 1
.
The data measured this way will be saved to the file gaussianChains--squaredBondLengths.txt
, which will contain (after comment lines starting with #
) a line for each bond, each consisting of
0
,OpenMPCD::OnTheFlyStatisticsDDDA::getOptimalBlockIDForStandardErrorOfTheMean
,OpenMPCD::OnTheFlyStatisticsDDDA::getOptimalStandardErrorOfTheMean
,OpenMPCD::OnTheFlyStatisticsDDDA::optimalStandardErrorOfTheMeanEstimateIsReliable
, as either 1
for true
, and 0
for false
. Definition at line 50 of file Instrumentation/GaussianChains.hpp.
GaussianChains::GaussianChains | ( | const unsigned int | chainLength, |
const Simulation *const | sim, | ||
DeviceMemoryManager *const | devMemMgr, | ||
const MPCFluid::GaussianChains *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. |
Definition at line 8 of file GaussianChains.cpp.
|
inlinevirtual |
The destructor.
Definition at line 68 of file Instrumentation/GaussianChains.hpp.
|
inlineinherited |
Returns the LogicalEntityMeanSquareDisplacement
instance, or nullptr
if none was configured.
Definition at line 129 of file CUDA/MPCFluid/Instrumentation/Base.hpp.
|
inlineinherited |
Returns the NormalModeAutocorrelation
instance, or nullptr
if none was configured.
Definition at line 139 of file CUDA/MPCFluid/Instrumentation/Base.hpp.
|
inlineinherited |
Performs measurements.
Definition at line 86 of file CUDA/MPCFluid/Instrumentation/Base.hpp.
|
protectedvirtual |
Performs measurements.
Implements OpenMPCD::CUDA::MPCFluid::Instrumentation::Base.
Definition at line 48 of file GaussianChains.cpp.
|
inlineinherited |
Saves the data to the given run directory.
[in] | rundir | The path to the run directory. |
Definition at line 107 of file CUDA/MPCFluid/Instrumentation/Base.hpp.
|
protectedvirtual |
Saves the data to the given run directory.
[in] | rundir | The path to the run directory. |
Implements OpenMPCD::CUDA::MPCFluid::Instrumentation::Base.
Definition at line 77 of file GaussianChains.cpp.
|
protectedinherited |
Measures Fourier-transformed velocities.
Definition at line 160 of file CUDA/MPCFluid/Instrumentation/Base.hpp.
|
protectedinherited |
Measures the mean square displacement of the centers of mass of the logical entities of the fluid.
Definition at line 163 of file CUDA/MPCFluid/Instrumentation/Base.hpp.
|
protectedinherited |
Measures the autocorrelation of normal mode coordinates.
Definition at line 167 of file CUDA/MPCFluid/Instrumentation/Base.hpp.
|
protectedinherited |
Measures velocity autocorrelation.
Definition at line 169 of file CUDA/MPCFluid/Instrumentation/Base.hpp.