BoxEventListener, MoleculeAgentManager.MoleculeAgentSource, SpeciesAgentManager.AgentSourcepublic class IntegratorRigidMatrixIterative extends IntegratorMD implements SpeciesAgentManager.AgentSource, MoleculeAgentManager.MoleculeAgentSource
| Modifier and Type | Class | Description |
|---|---|---|
static class |
IntegratorRigidMatrixIterative.BoxImposePbcMolecule |
Integrator.Forcible, Integrator.TorquableIntegratorMD.ThermostatType, IntegratorMD.VectorSource| Modifier and Type | Field | Description |
|---|---|---|
protected MoleculePositionCOM |
atomPositionCOM |
|
protected RotationTensor3D |
axesTensor |
|
protected AtomLeafAgentManager<Vector> |
forces |
|
protected int |
maxIterations |
|
protected MoleculeAgentManager |
moleculeAgentManager |
|
protected Tensor |
omegaTensor |
|
protected double |
omegaTolerance |
|
protected Tensor |
pressureTensor |
|
int |
printInterval |
|
protected RotationTensor3D |
rotationTensor |
|
protected double |
rotationTolerance |
|
protected Simulation |
sim |
|
protected Vector |
tempAngularVelocity |
|
protected RotationTensor3D |
tempAxesTensor |
|
protected OrientationFull3D |
tempOrientation |
|
protected PotentialCalculationTorqueSum |
torqueSum |
|
protected AtomActionTranslateBy |
translateBy |
|
protected MoleculeChildAtomAction |
translator |
|
protected SpeciesAgentManager |
typeAgentManager |
|
protected Tensor |
workTensor |
|
protected Vector |
xWork |
|
protected Vector |
yWork |
eventManager, initialized, interval, stepCountbox, currentPotentialEnergy, isothermal, meterPE, potentialMaster, space, temperaturealwaysScaleMomenta, atomActionRandomizeVelocity, currentKineticEnergy, currentTime, integratorMC, mcSteps, meterKE, meterTemperature, momentum, nAccepted, nRejected, oldEnergy, oldPositionAgentManager, oldPotentialEnergy, random, temperatureVec, thermostat, thermostatCount, thermostatInterval, thermostatNoDrift, thermostatting, timeStep| Constructor | Description |
|---|---|
IntegratorRigidMatrixIterative(Simulation sim,
PotentialMaster potentialMaster,
double timeStep,
double temperature,
Box box) |
|
IntegratorRigidMatrixIterative(Simulation sim,
PotentialMaster potentialMaster,
Box box) |
| Modifier and Type | Method | Description |
|---|---|---|
protected void |
doStepInternal() |
Performs the elementary integration step, such as a molecular dynamics
time step, or a Monte Carlo trial.
|
Tensor |
getPressureTensor() |
Returns the pressure tensor based on the forces calculated during the
last time step.
|
java.lang.Object |
makeAgent(IMolecule a) |
Returns an agent for the given Atom.
|
java.lang.Object |
makeAgent(ISpecies type) |
Returns an agent for the given AtomType.
|
void |
randomizeMomenta() |
Randomizes the velocities of all atoms in the box using values
chosen from a Maxwell-Boltzmann distribution, as in the Andersen
thermostat.
|
void |
randomizeMomentum(IAtomKinetic atom) |
Randomizes the velocities of the given atom using value
chosen from a Maxwell-Boltzmann distribution, as in the Andersen
thermostat.
|
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
|
void |
releaseAgent(java.lang.Object agent,
ISpecies type) |
This informs the agent source that the agent is going away and that
the agent source should disconnect the agent from other elements.
|
void |
reset() |
Performs superclass reset actions and recalculated currentPotentialEnergy
|
void |
scaleMomenta() |
Crude method to enforce constant-temperature constraint, by
scaling momenta of all atoms by a constant factor so that
box adheres to setpoint temperature.
|
void |
setMaxIterations(int newMaxIterations) |
|
void |
setOrientationCalc(ISpecies species,
OrientationCalc calcer) |
|
void |
shiftMomenta() |
Subtracts velocity from all atoms such that the new net momentum of
the whole system is zero.
|
doStep, getEventInterval, getEventManager, getStepCount, isInitialized, setEventIntervalgetBox, getMeterPotentialEnergy, getPotentialEnergy, getPotentialMaster, getTemperature, getTemperatureDimension, isIsothermal, setBox, setMeterPotentialEnergyboxAtomLeafIndexChanged, boxGlobalAtomLeafIndexChanged, boxMoleculeAdded, boxMoleculeIndexChanged, boxMoleculeRemoved, boxNumberMolecules, doThermostat, doThermostatInternal, getAlwaysScaleRandomizedMomenta, getCurrentTime, getHybridAcceptance, getIntegratorMC, getKineticEnergy, getMeterTemperature, getThermostat, getThermostatInterval, getTimeStep, isThermostatNoDrift, randomizeTotalKE, resetHybridAcceptance, resetStepCount, scaleMomenta, setAlwaysScaleRandomizedMomenta, setIntegratorMC, setIsothermal, setMeterTemperature, setTemperature, setThermostat, setThermostatInterval, setThermostatNoDrift, setTimeStep, setupprotected PotentialCalculationTorqueSum torqueSum
protected final Tensor pressureTensor
protected final Tensor workTensor
protected final RotationTensor3D rotationTensor
protected final Vector xWork
protected final Vector yWork
protected final SpeciesAgentManager typeAgentManager
protected final Vector tempAngularVelocity
protected final MoleculePositionCOM atomPositionCOM
protected final AtomActionTranslateBy translateBy
protected final MoleculeChildAtomAction translator
protected final OrientationFull3D tempOrientation
public int printInterval
protected int maxIterations
protected double omegaTolerance
protected double rotationTolerance
protected final RotationTensor3D axesTensor
protected final RotationTensor3D tempAxesTensor
protected final Tensor omegaTensor
protected final Simulation sim
protected AtomLeafAgentManager<Vector> forces
protected MoleculeAgentManager moleculeAgentManager
public IntegratorRigidMatrixIterative(Simulation sim, PotentialMaster potentialMaster, Box box)
public IntegratorRigidMatrixIterative(Simulation sim, PotentialMaster potentialMaster, double timeStep, double temperature, Box box)
public void setOrientationCalc(ISpecies species, OrientationCalc calcer)
public void setMaxIterations(int newMaxIterations)
protected void doStepInternal()
IntegratordoStepInternal in class IntegratorMDpublic Tensor getPressureTensor()
public void scaleMomenta()
IntegratorMDscaleMomenta in class IntegratorMDpublic void shiftMomenta()
IntegratorMDshiftMomenta in class IntegratorMDpublic void randomizeMomenta()
IntegratorMDrandomizeMomenta in class IntegratorMDpublic void randomizeMomentum(IAtomKinetic atom)
IntegratorMDrandomizeMomentum in class IntegratorMDatom - whose momenta is be randomizedpublic void reset()
IntegratorBoxreset in class IntegratorMDpublic final java.lang.Object makeAgent(IMolecule a)
MoleculeAgentManager.MoleculeAgentSourcemakeAgent in interface MoleculeAgentManager.MoleculeAgentSourcepublic void releaseAgent(java.lang.Object agent,
IMolecule molecule)
MoleculeAgentManager.MoleculeAgentSourcereleaseAgent in interface MoleculeAgentManager.MoleculeAgentSourcepublic java.lang.Object makeAgent(ISpecies type)
SpeciesAgentManager.AgentSourcemakeAgent in interface SpeciesAgentManager.AgentSourcepublic void releaseAgent(java.lang.Object agent,
ISpecies type)
SpeciesAgentManager.AgentSourcereleaseAgent in interface SpeciesAgentManager.AgentSource