All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
AndersenThermostat Class Reference

This class uses the Andersen method to maintain constant temperature. More...

`#include <AndersenThermostat.h>`

Inheritance diagram for AndersenThermostat:

## Public Member Functions

| AndersenThermostat (double defaultTemperature, double defaultCollisionFrequency)
| Create an AndersenThermostat. More...
double | getDefaultTemperature () const
| Get the default temperature of the heat bath (in Kelvin). More...
void | setDefaultTemperature (double temperature)
| Set the default temperature of the heat bath. More...
double | getDefaultCollisionFrequency () const
| Get the default collision frequency (in 1/ps). More...
void | setDefaultCollisionFrequency (double frequency)
| Set the default collision frequency. More...
int | getRandomNumberSeed () const
| Get the random number seed. More...
void | setRandomNumberSeed (int seed)
| Set the random number seed. More...
bool | usesPeriodicBoundaryConditions () const
| Returns whether or not this force makes use of periodic boundary conditions. More...
Public Member Functions inherited from Force
| Force ()
virtual | ~Force ()
int | getForceGroup () const
| Get the force group this Force belongs to. More...
void | setForceGroup (int group)
| Set the force group this Force belongs to. More...

## Static Public Member Functions

static const std::string & | Temperature ()
| This is the name of the parameter which stores the current temperature of the heat bath (in Kelvin). More...
static const std::string & | CollisionFrequency ()
| This is the name of the parameter which store the current collision frequency (in 1/ps). More...

## Protected Member Functions

ForceImpl * | createImpl () const
| When a Context is created, it invokes this method on each Force in the System. More...
Protected Member Functions inherited from Force
ForceImpl & | getImplInContext (Context &context)
| Get the ForceImpl corresponding to this Force in a Context. More...
ContextImpl & | getContextImpl (Context &context)
| Get the ContextImpl corresponding to a Context. More...

## Detailed Description

This class uses the Andersen method to maintain constant temperature.

## Constructor & Destructor Documentation

AndersenThermostat | ( | double | defaultTemperature,
|  | double | defaultCollisionFrequency
| ) |  |

Create an AndersenThermostat.

Parameters

  defaultTemperature | the default temperature of the heat bath (in Kelvin)
  defaultCollisionFrequency | the default collision frequency (in 1/ps)

## Member Function Documentation

static const std::string& CollisionFrequency | ( |  | ) |

inlinestatic

This is the name of the parameter which store the current collision frequency (in 1/ps).

ForceImpl* createImpl | ( |  | ) | const

protectedvirtual

When a Context is created, it invokes this method on each Force in the System.

It should create a new ForceImpl object which can be used by the context for calculating forces. The ForceImpl will be deleted automatically when the Context is deleted.

Implements Force.

double getDefaultCollisionFrequency | ( |  | ) | const

inline

Get the default collision frequency (in 1/ps).

Returns
  the default collision frequency, measured in 1/ps.

double getDefaultTemperature | ( |  | ) | const

inline

Get the default temperature of the heat bath (in Kelvin).

Returns
  the default temperature of the heat bath, measured in Kelvin.

int getRandomNumberSeed | ( |  | ) | const

inline

Get the random number seed.

See setRandomNumberSeed() for details.

void setDefaultCollisionFrequency | ( | double | frequency | ) |

inline

Set the default collision frequency.

This will affect any new Contexts you create, but not ones that already exist.

Parameters

  frequency | the default collision frequency (in 1/ps)

void setDefaultTemperature | ( | double | temperature | ) |

inline

Set the default temperature of the heat bath.

This will affect any new Contexts you create, but not ones that already exist.

Parameters

  temperature | the default temperature of the heat bath (in Kelvin)

void setRandomNumberSeed | ( | int | seed | ) |

inline

Set the random number seed.

The precise meaning of this parameter is undefined, and is left up to each Platform to interpret in an appropriate way. It is guaranteed that if two simulations are run with different random number seeds, the sequence of collisions will be different. On the other hand, no guarantees are made about the behavior of simulations that use the same seed. In particular, Platforms are permitted to use non-deterministic algorithms which produce different results on successive runs, even if those runs were initialized identically.

If seed is set to 0 (which is the default value assigned), a unique seed is chosen when a Context is created from this Force. This is done to ensure that each Context receives unique random seeds without you needing to set them explicitly.

static const std::string& Temperature | ( |  | ) |

inlinestatic

This is the name of the parameter which stores the current temperature of the heat bath (in Kelvin).

bool usesPeriodicBoundaryConditions | ( |  | ) | const

inlinevirtual

Returns whether or not this force makes use of periodic boundary conditions.

Returns
  true if force uses PBC and false otherwise

Reimplemented from Force.

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

- AndersenThermostat.h