OpenMM
 All Classes Namespaces Functions Variables Pages
MonteCarloAnisotropicBarostat Class Reference

This class uses a Monte Carlo algorithm to adjust the size of the periodic box, simulating the effect of constant pressure. More...

+ Inheritance diagram for MonteCarloAnisotropicBarostat:

Public Member Functions

def PressureX
 PressureX() -> std::string const &. More...
 
def PressureY
 PressureY() -> std::string const &. More...
 
def PressureZ
 PressureZ() -> std::string const &. More...
 
def getDefaultPressure
 getDefaultPressure(MonteCarloAnisotropicBarostat self) -> Vec3 const & More...
 
def getScaleX
 getScaleX(MonteCarloAnisotropicBarostat self) -> bool More...
 
def getScaleY
 getScaleY(MonteCarloAnisotropicBarostat self) -> bool More...
 
def getScaleZ
 getScaleZ(MonteCarloAnisotropicBarostat self) -> bool More...
 
def getFrequency
 getFrequency(MonteCarloAnisotropicBarostat self) -> int More...
 
def setFrequency
 setFrequency(MonteCarloAnisotropicBarostat self, int freq) More...
 
def getTemperature
 getTemperature(MonteCarloAnisotropicBarostat self) -> double More...
 
def setTemperature
 setTemperature(MonteCarloAnisotropicBarostat self, double temp) More...
 
def getRandomNumberSeed
 getRandomNumberSeed(MonteCarloAnisotropicBarostat self) -> int More...
 
def setRandomNumberSeed
 setRandomNumberSeed(MonteCarloAnisotropicBarostat self, int seed) More...
 
def __init__
 init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True, bool scaleY=True, bool scaleZ=True, int frequency=25) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True, bool scaleY=True, bool scaleZ=True) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True, bool scaleY=True) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, MonteCarloAnisotropicBarostat other) -> MonteCarloAnisotropicBarostat More...
 
def __del__
 del(OpenMM::MonteCarloAnisotropicBarostat self) More...
 
- Public Member Functions inherited from Force
def __init__
 
def __del__
 del(OpenMM::Force self) More...
 
def getForceGroup
 getForceGroup(Force self) -> int More...
 
def setForceGroup
 setForceGroup(Force self, int group) More...
 
def __copy__
 
def __deepcopy__
 

Public Attributes

 this
 

Detailed Description

This class uses a Monte Carlo algorithm to adjust the size of the periodic box, simulating the effect of constant pressure.

This class is similar to MonteCarloBarostat, but each Monte Carlo move is applied to only one axis of the periodic box (unlike MonteCarloBarostat, which scales the entire box isotropically). This means that the box may change shape as well as size over the course of the simulation. It also allows you to specify a different pressure for each axis of the box, or to keep the box size fixed along certain axes while still allowing it to change along others.

This class assumes the simulation is also being run at constant temperature, and requires you to specify the system temperature (since it affects the acceptance probability for Monte Carlo moves). It does not actually perform temperature regulation, however. You must use another mechanism along with it to maintain the temperature, such as LangevinIntegrator or AndersenThermostat.

Constructor & Destructor Documentation

def __init__ (   self,
  args 
)

init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True, bool scaleY=True, bool scaleZ=True, int frequency=25) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True, bool scaleY=True, bool scaleZ=True) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True, bool scaleY=True) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature, bool scaleX=True) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, Vec3 const & defaultPressure, double temperature) -> MonteCarloAnisotropicBarostat init(OpenMM::MonteCarloAnisotropicBarostat self, MonteCarloAnisotropicBarostat other) -> MonteCarloAnisotropicBarostat

Create a MonteCarloAnisotropicBarostat.

Parameters
defaultPressureThe default pressure acting on each axis (in bar)
temperaturethe temperature at which the system is being maintained (in Kelvin)
scaleXwhether to allow the X dimension of the periodic box to change size
scaleYwhether to allow the Y dimension of the periodic box to change size
scaleZwhether to allow the Z dimension of the periodic box to change size
frequencythe frequency at which Monte Carlo pressure changes should be attempted (in time steps)

References simtk.openmm.openmm.stripUnits().

def __del__ (   self)

del(OpenMM::MonteCarloAnisotropicBarostat self)

References simtk.openmm.openmm.stripUnits().

Member Function Documentation

def getDefaultPressure (   self)

getDefaultPressure(MonteCarloAnisotropicBarostat self) -> Vec3 const &

Get the default pressure (in bar).

References simtk.openmm.openmm.stripUnits().

def getFrequency (   self)

getFrequency(MonteCarloAnisotropicBarostat self) -> int

Get the frequency (in time steps) at which Monte Carlo pressure changes should be attempted. If this is set to 0, the barostat is disabled.

References simtk.openmm.openmm.stripUnits().

def getRandomNumberSeed (   self)

getRandomNumberSeed(MonteCarloAnisotropicBarostat self) -> int

Get the random number seed. See setRandomNumberSeed() for details.

References simtk.openmm.openmm.stripUnits().

def getScaleX (   self)

getScaleX(MonteCarloAnisotropicBarostat self) -> bool

Get whether to allow the X dimension of the periodic box to change size.

References simtk.openmm.openmm.stripUnits().

def getScaleY (   self)

getScaleY(MonteCarloAnisotropicBarostat self) -> bool

Get whether to allow the Y dimension of the periodic box to change size.

References simtk.openmm.openmm.stripUnits().

def getScaleZ (   self)

getScaleZ(MonteCarloAnisotropicBarostat self) -> bool

Get whether to allow the Z dimension of the periodic box to change size.

References simtk.openmm.openmm.stripUnits().

def getTemperature (   self)

getTemperature(MonteCarloAnisotropicBarostat self) -> double

Get the temperature at which the system is being maintained, measured in Kelvin.

References simtk.openmm.openmm.stripUnits().

def PressureX ( )

PressureX() -> std::string const &.

This is the name of the parameter which stores the current pressure acting on the X-axis (in bar).

References simtk.openmm.openmm.stripUnits().

def PressureY ( )

PressureY() -> std::string const &.

This is the name of the parameter which stores the current pressure acting on the Y-axis (in bar).

References simtk.openmm.openmm.stripUnits().

def PressureZ ( )

PressureZ() -> std::string const &.

This is the name of the parameter which stores the current pressure acting on the Z-axis (in bar).

References simtk.openmm.openmm.stripUnits().

def setFrequency (   self,
  args 
)

setFrequency(MonteCarloAnisotropicBarostat self, int freq)

Set the frequency (in time steps) at which Monte Carlo pressure changes should be attempted. If this is set to 0, the barostat is disabled.

References simtk.openmm.openmm.stripUnits().

def setRandomNumberSeed (   self,
  args 
)

setRandomNumberSeed(MonteCarloAnisotropicBarostat self, int seed)

Set the random number seed. It is guaranteed that if two simulations are run with different random number seeds, the sequence of Monte Carlo steps 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.

References simtk.openmm.openmm.stripUnits().

def setTemperature (   self,
  args 
)

setTemperature(MonteCarloAnisotropicBarostat self, double temp)

Set the temperature at which the system is being maintained.

Parameters
tempthe system temperature, measured in Kelvin.

References simtk.openmm.openmm.stripUnits().

Member Data Documentation

this

Referenced by System.__init__().


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