MCMoveStepDependent
public class MCMoveVolumeMonoclinicScaled extends MCMoveBoxStep
Modifier and Type | Field | Description |
---|---|---|
protected AtomIteratorLeafAtoms |
affectedAtomIterator |
|
protected Vector |
boxSize |
|
protected Vector |
comOld |
|
protected int |
D |
|
protected Vector |
dest |
|
protected MeterPotentialEnergy |
energyMeter |
|
protected BoxInflate |
inflate |
|
protected Box |
latticeBox |
|
protected Vector |
latticeScale |
|
protected MoleculePositionGeometricCenter |
moleculeCenter |
|
protected double |
pressure |
|
protected IRandom |
random |
|
protected Vector |
scaleVector |
|
protected double |
temperature |
|
protected MoleculeActionTranslateTo |
translateTo |
|
static Function |
uLat0 |
Nominal function for lattice energy
|
protected Function |
uLatFunction |
|
protected double |
uNew |
|
protected double |
uOld |
moveTracker, nominalFrequency, potential
box, perParticleFrequency
stepSize, stepSizeMax, stepSizeMin
Constructor | Description |
---|---|
MCMoveVolumeMonoclinicScaled(PotentialMaster potentialMaster,
IRandom random,
Space space,
double pressure) |
|
MCMoveVolumeMonoclinicScaled(PotentialMaster potentialMaster,
IRandom random,
Space space,
double pressure,
int D) |
Modifier and Type | Method | Description |
---|---|---|
void |
acceptNotify() |
Method called by IntegratorMC in the event that the most recent trial is
accepted.
|
AtomIterator |
affectedAtoms() |
|
void |
doTransform() |
|
boolean |
doTrial() |
Method to perform trial move.
|
double |
energyChange() |
|
double |
getChi(double temp) |
Chi is the parameter within standard Metropolis Monte Carlo.
|
double |
getPressure() |
|
Dimension |
getPressureDimension() |
|
Function |
getULatFunction() |
|
void |
rejectNotify() |
Method called by IntegratorMC in the event that the most recent trial
move is rejected.
|
void |
setBox(Box p) |
Sets the box on which this move acts.
|
void |
setInflater(BoxInflate newInflate) |
|
void |
setLatticeBox(Box newLatticeBox) |
|
void |
setPressure(double p) |
|
void |
setTemperature(double newTemperature) |
Sets the temperature being sampled.
|
void |
setULatFunction(Function newULatFunction) |
Sets a function that returns the lattice energy for a given density.
|
getNominalFrequency, getTracker, setTracker
affectedAtoms, energyChange, getBox, isNominallyPerParticleFrequency, toString
getStepSize, getStepSizeDimension, getStepSizeMax, getStepSizeMaxDimension, getStepSizeMin, getStepSizeMinDimension, setStepSize, setStepSizeMax, setStepSizeMin
protected double pressure
protected MeterPotentialEnergy energyMeter
protected BoxInflate inflate
protected final int D
protected IRandom random
protected final AtomIteratorLeafAtoms affectedAtomIterator
protected double temperature
protected final Vector boxSize
protected final Vector dest
protected final Vector comOld
protected final Vector scaleVector
protected final Vector latticeScale
protected final MoleculePositionGeometricCenter moleculeCenter
protected final MoleculeActionTranslateTo translateTo
protected transient double uOld
protected transient double uNew
protected Function uLatFunction
protected Box latticeBox
public static Function uLat0
public MCMoveVolumeMonoclinicScaled(PotentialMaster potentialMaster, IRandom random, Space space, double pressure)
potentialMaster
- an appropriate PotentialMaster instance for calculating energiesspace
- the governing space for the simulationpublic MCMoveVolumeMonoclinicScaled(PotentialMaster potentialMaster, IRandom random, Space space, double pressure, int D)
public void setInflater(BoxInflate newInflate)
public void setLatticeBox(Box newLatticeBox)
public void setBox(Box p)
MCMoveBox
public void setTemperature(double newTemperature)
public void setULatFunction(Function newULatFunction)
public Function getULatFunction()
public boolean doTrial()
MCMove
public void doTransform()
public double getChi(double temp)
MCMove
public void acceptNotify()
MCMove
acceptNotify
in class MCMove
public void rejectNotify()
MCMove
rejectNotify
in class MCMove
public double energyChange()
energyChange
in class MCMoveBox
public AtomIterator affectedAtoms()
affectedAtoms
in class MCMoveBox
public void setPressure(double p)
public final double getPressure()
public Dimension getPressureDimension()