OpenMPCD
include
OpenMPCD
CUDA
MPCSolute
Instrumentation
Instrumentation/StarPolymers.hpp
Go to the documentation of this file.
1
/**
2
* @file
3
* Defines the OpenMPCD::CUDA::MPCSolute::Instrumentation::StarPolymers class.
4
*/
5
6
#ifndef OPENMPCD_CUDA_MPCSOLUTE_INSTRUMENTATION_STARPOLYMERS_HPP
7
#define OPENMPCD_CUDA_MPCSOLUTE_INSTRUMENTATION_STARPOLYMERS_HPP
8
9
#include <
OpenMPCD/CUDA/MPCSolute/Instrumentation/Base.hpp
>
10
#include <
OpenMPCD/CUDA/MPCSolute/StarPolymers.hpp
>
11
#include <
OpenMPCD/VTFSnapshotFile.hpp
>
12
13
#include <boost/scoped_ptr.hpp>
14
15
namespace
OpenMPCD
16
{
17
namespace
CUDA
18
{
19
namespace
MPCSolute
20
{
21
namespace
Instrumentation
22
{
23
24
/**
25
* Instrumentation for `OpenMPCD::CUDA::MPCSolute::StarPolymers`.
26
*
27
* @tparam PositionCoordinate The type to store position coordinates.
28
* @tparam VelocityCoordinate The type to store velocity coordinates.
29
*/
30
template
<
31
typename
PositionCoordinate,
32
typename
VelocityCoordinate>
33
class
StarPolymers
:
public
Base
34
{
35
public
:
36
/**
37
* The constructor.
38
*
39
* @param[in] starPolymers_ The solute instance.
40
* @param[in] settings_ The configuration settings that have been used
41
* to configure the given star polymers instance.
42
*/
43
StarPolymers
(
44
MPCSolute::StarPolymers<PositionCoordinate, VelocityCoordinate>
*
const
45
starPolymers_,
46
const
Configuration::Setting
& settings_);
47
48
/**
49
* The destructor.
50
*/
51
virtual
~StarPolymers
();
52
53
protected
:
54
virtual
void
measureSpecific
();
55
virtual
void
saveSpecific
(
const
std::string& rundir)
const
;
56
57
private
:
58
/**
59
* Resets the snapshot file.
60
*/
61
void
resetSnapshotFile()
const
;
62
63
private
:
64
MPCSolute::StarPolymers<PositionCoordinate, VelocityCoordinate>
*
const
65
starPolymers;
///< The solute instance.
66
const
Configuration::Setting
settings;
67
///< The configuration settings for the star polymers instance.
68
69
mutable
std::string snapshotFilePath;
///< The path to the snapshot file.
70
mutable
boost::scoped_ptr<VTFSnapshotFile> snapshotFile;
71
///< The file storing simulation snapshots.
72
};
//class StarPolymers
73
74
}
//namespace Instrumentation
75
}
//namespace MPCSolute
76
}
//namespace CUDA
77
}
//namespace OpenMPCD
78
79
#endif //OPENMPCD_CUDA_MPCSOLUTE_INSTRUMENTATION_STARPOLYMERS_HPP
OpenMPCD::CUDA::MPCSolute::Instrumentation::StarPolymers::~StarPolymers
virtual ~StarPolymers()
The destructor.
Definition:
StarPolymers.cpp:27
Base.hpp
VTFSnapshotFile.hpp
OpenMPCD::CUDA::MPCSolute::Instrumentation::StarPolymers::measureSpecific
virtual void measureSpecific()
Performs measurements specific to the solute type.
Definition:
StarPolymers.cpp:34
OpenMPCD::CUDA::MPCSolute::Instrumentation::Base
Base class for MPC solutes instrumentation.
Definition:
CUDA/MPCSolute/Instrumentation/Base.hpp:25
OpenMPCD::CUDA::MPCSolute::Instrumentation::StarPolymers::StarPolymers
StarPolymers(MPCSolute::StarPolymers< PositionCoordinate, VelocityCoordinate > *const starPolymers_, const Configuration::Setting &settings_)
The constructor.
Definition:
StarPolymers.cpp:17
StarPolymers.hpp
OpenMPCD::CUDA::MPCSolute::Instrumentation::StarPolymers::saveSpecific
virtual void saveSpecific(const std::string &rundir) const
Saves measurements specific to the solute type.
Definition:
StarPolymers.cpp:40
OpenMPCD::Configuration::Setting
Represents a setting in the configuration.
Definition:
Configuration.hpp:36
OpenMPCD::CUDA::MPCSolute::Instrumentation::StarPolymers
Instrumentation for OpenMPCD::CUDA::MPCSolute::StarPolymers.
Definition:
Instrumentation/StarPolymers.hpp:33
OpenMPCD::CUDA::MPCSolute::StarPolymers
Class representing star polymers.
Definition:
StarPolymers.hpp:123
Generated by
1.8.17