OpenMPCD
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
OpenMPCD::CUDA::MPCFluid::Instrumentation::GaussianChains Class Reference

Instrumentation for Gaussian Chain fluids. More...

#include <GaussianChains.hpp>

Inheritance diagram for OpenMPCD::CUDA::MPCFluid::Instrumentation::GaussianChains:
Inheritance graph
[legend]
Collaboration diagram for OpenMPCD::CUDA::MPCFluid::Instrumentation::GaussianChains:
Collaboration graph
[legend]

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 LogicalEntityMeanSquareDisplacementgetLogicalEntityMeanSquareDisplacement () const
 Returns the LogicalEntityMeanSquareDisplacement instance, or nullptr if none was configured. More...
 
const NormalModeAutocorrelationgetNormalModeAutocorrelation () 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::BasefourierTransformedVelocity
 Measures Fourier-transformed velocities. More...
 
LogicalEntityMeanSquareDisplacementlogicalEntityMeanSquareDisplacement
 Measures the mean square displacement of the centers of mass of the logical entities of the fluid. More...
 
NormalModeAutocorrelationnormalModeAutocorrelation
 Measures the autocorrelation of normal mode coordinates. More...
 
VelocityAutocorrelation::BasevelocityAutocorrelation
 Measures velocity autocorrelation. More...
 

Detailed Description

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

Definition at line 50 of file Instrumentation/GaussianChains.hpp.

Constructor & Destructor Documentation

◆ GaussianChains()

GaussianChains::GaussianChains ( const unsigned int  chainLength,
const Simulation *const  sim,
DeviceMemoryManager *const  devMemMgr,
const MPCFluid::GaussianChains *const  mpcFluid_ 
)

The constructor.

Parameters
[in]chainLengthThe number of MPC fluid particles per chain.
[in]simThe simulation instance.
[in]devMemMgrThe Device memory manager.
[in]mpcFluid_The MPC fluid to measure.

Definition at line 8 of file GaussianChains.cpp.

◆ ~GaussianChains()

virtual OpenMPCD::CUDA::MPCFluid::Instrumentation::GaussianChains::~GaussianChains ( )
inlinevirtual

The destructor.

Definition at line 68 of file Instrumentation/GaussianChains.hpp.

Member Function Documentation

◆ getLogicalEntityMeanSquareDisplacement()

const LogicalEntityMeanSquareDisplacement* OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::getLogicalEntityMeanSquareDisplacement ( ) const
inlineinherited

Returns the LogicalEntityMeanSquareDisplacement instance, or nullptr if none was configured.

Definition at line 129 of file CUDA/MPCFluid/Instrumentation/Base.hpp.

◆ getNormalModeAutocorrelation()

const NormalModeAutocorrelation* OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::getNormalModeAutocorrelation ( ) const
inlineinherited

Returns the NormalModeAutocorrelation instance, or nullptr if none was configured.

Definition at line 139 of file CUDA/MPCFluid/Instrumentation/Base.hpp.

◆ measure()

void OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::measure ( )
inlineinherited

Performs measurements.

Definition at line 86 of file CUDA/MPCFluid/Instrumentation/Base.hpp.

◆ measureSpecific()

void GaussianChains::measureSpecific ( )
protectedvirtual

Performs measurements.

Implements OpenMPCD::CUDA::MPCFluid::Instrumentation::Base.

Definition at line 48 of file GaussianChains.cpp.

◆ save()

void OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::save ( const std::string &  rundir) const
inlineinherited

Saves the data to the given run directory.

Parameters
[in]rundirThe path to the run directory.

Definition at line 107 of file CUDA/MPCFluid/Instrumentation/Base.hpp.

◆ saveSpecific()

void GaussianChains::saveSpecific ( const std::string &  rundir) const
protectedvirtual

Saves the data to the given run directory.

Parameters
[in]rundirThe path to the run directory.

Implements OpenMPCD::CUDA::MPCFluid::Instrumentation::Base.

Definition at line 77 of file GaussianChains.cpp.

Member Data Documentation

◆ fourierTransformedVelocity

FourierTransformedVelocity::Base* OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::fourierTransformedVelocity
protectedinherited

Measures Fourier-transformed velocities.

Definition at line 160 of file CUDA/MPCFluid/Instrumentation/Base.hpp.

◆ logicalEntityMeanSquareDisplacement

LogicalEntityMeanSquareDisplacement* OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::logicalEntityMeanSquareDisplacement
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.

◆ normalModeAutocorrelation

NormalModeAutocorrelation* OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::normalModeAutocorrelation
protectedinherited

Measures the autocorrelation of normal mode coordinates.

Definition at line 167 of file CUDA/MPCFluid/Instrumentation/Base.hpp.

◆ velocityAutocorrelation

VelocityAutocorrelation::Base* OpenMPCD::CUDA::MPCFluid::Instrumentation::Base::velocityAutocorrelation
protectedinherited

Measures velocity autocorrelation.

Definition at line 169 of file CUDA/MPCFluid/Instrumentation/Base.hpp.


The documentation for this class was generated from the following files: