MCMoveMolecular
, MCMoveStepDependent
, MoleculeAgentManager.MoleculeAgentSource
public class MCMoveVolumeAssociatedMolecule extends MCMoveBoxStep implements MoleculeAgentManager.MoleculeAgentSource, MCMoveMolecular
Modifier and Type | Class | Description |
---|---|---|
static class |
MCMoveVolumeAssociatedMolecule.Agent |
Modifier and Type | Field | Description |
---|---|---|
protected AtomIteratorLeafAtoms |
affectedAtomIterator |
|
protected IAssociationHelperMolecule |
associationHelper |
|
protected AssociationManagerMolecule |
associationManager |
|
static boolean |
dodebug |
|
protected Vector |
dr |
|
protected Vector |
dr2 |
|
protected java.io.FileWriter |
fileWriter |
|
protected Vector |
groupTranslationVector |
|
protected MoleculeAgentManager |
moleculeAgentManager |
|
protected MoleculeIteratorAllMolecules |
moleculeIterator |
|
protected MoleculeChildAtomAction |
moveMoleculeAction |
|
protected int |
numAssociatedMolecules |
|
protected int |
numMer |
|
protected double |
pressure |
|
protected Vector |
r |
|
protected Simulation |
sim |
|
protected MoleculeArrayList |
smerList |
moveTracker, nominalFrequency, potential
box, perParticleFrequency
stepSize, stepSizeMax, stepSizeMin
Constructor | Description |
---|---|
MCMoveVolumeAssociatedMolecule(Simulation sim,
PotentialMaster potentialMaster,
Space _space) |
|
MCMoveVolumeAssociatedMolecule(Simulation sim,
PotentialMaster potentialMaster,
IRandom random,
Space _space,
double pressure) |
Modifier and Type | Method | Description |
---|---|---|
void |
acceptNotify() |
Method called by IntegratorMC in the event that the most recent trial is
accepted.
|
AtomIterator |
affectedAtoms() |
|
MoleculeIterator |
affectedMolecules(Box box) |
|
boolean |
doTrial() |
Method to perform trial move.
|
double |
energyChange() |
|
double |
getChi(double temperature) |
Chi is the parameter within standard Metropolis Monte Carlo.
|
double |
getPressure() |
|
Dimension |
getPressureDimension() |
|
java.lang.Object |
makeAgent(IMolecule a) |
Returns an agent for the given Atom.
|
Vector |
positionDefinition(IMolecule molecule) |
|
void |
rejectNotify() |
Method called by IntegratorMC in the event that the most recent trial
move is rejected.
|
void |
releaseAgent(java.lang.Object agent,
IMolecule molecule) |
This informs the agent source that the agent is going away and that
the agent source should disconnect the agent from other elements
|
protected void |
scaleAtoms(double rScale) |
|
void |
setAssociationManager(AssociationManagerMolecule associationManager,
IAssociationHelperMolecule associationHelper) |
|
void |
setBox(Box p) |
Sets the box on which this move acts.
|
void |
setPressure(double p) |
|
protected void |
unscaleAtoms(double rScale) |
getNominalFrequency, getTracker, setTracker
affectedAtoms, energyChange, getBox, isNominallyPerParticleFrequency, toString
getStepSize, getStepSizeDimension, getStepSizeMax, getStepSizeMaxDimension, getStepSizeMin, getStepSizeMinDimension, setStepSize, setStepSizeMax, setStepSizeMin
protected double pressure
protected final AtomIteratorLeafAtoms affectedAtomIterator
protected final MoleculeIteratorAllMolecules moleculeIterator
protected final Vector r
protected final Vector dr
protected final Vector dr2
protected AssociationManagerMolecule associationManager
protected int numAssociatedMolecules
protected int numMer
protected MoleculeAgentManager moleculeAgentManager
protected final MoleculeArrayList smerList
public static boolean dodebug
protected java.io.FileWriter fileWriter
protected IAssociationHelperMolecule associationHelper
protected Vector groupTranslationVector
protected MoleculeChildAtomAction moveMoleculeAction
protected final Simulation sim
public MCMoveVolumeAssociatedMolecule(Simulation sim, PotentialMaster potentialMaster, Space _space)
public MCMoveVolumeAssociatedMolecule(Simulation sim, PotentialMaster potentialMaster, IRandom random, Space _space, double pressure)
potentialMaster
- an appropriate PotentialMaster instance for calculating energiesspace
- the governing space for the simulationpublic void setBox(Box p)
MCMoveBox
public void setAssociationManager(AssociationManagerMolecule associationManager, IAssociationHelperMolecule associationHelper)
public boolean doTrial()
MCMove
protected void scaleAtoms(double rScale)
protected void unscaleAtoms(double rScale)
public double getChi(double temperature)
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()
public java.lang.Object makeAgent(IMolecule a)
MoleculeAgentManager.MoleculeAgentSource
makeAgent
in interface MoleculeAgentManager.MoleculeAgentSource
public void releaseAgent(java.lang.Object agent, IMolecule molecule)
MoleculeAgentManager.MoleculeAgentSource
releaseAgent
in interface MoleculeAgentManager.MoleculeAgentSource
public MoleculeIterator affectedMolecules(Box box)
affectedMolecules
in interface MCMoveMolecular