AtomLeafAgentManager.AgentSource<IntegratorVerlet.Agent>, BoxEventListenerpublic final class IntegratorVerlet extends IntegratorMD implements AtomLeafAgentManager.AgentSource<IntegratorVerlet.Agent>
| Modifier and Type | Class | Description |
|---|---|---|
static class |
IntegratorVerlet.Agent |
Integrator.Forcible, Integrator.TorquableIntegratorMD.ThermostatType, IntegratorMD.VectorSource| Modifier and Type | Field | Description |
|---|---|---|
protected AtomLeafAgentManager<IntegratorVerlet.Agent> |
agentManager |
|
protected PotentialCalculationForcePressureSum |
forceSum |
|
protected Tensor |
pressureTensor |
|
protected Tensor |
workTensor |
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 |
|---|---|
IntegratorVerlet(PotentialMaster potentialMaster,
IRandom random,
double timeStep,
double temperature,
Box box) |
|
IntegratorVerlet(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.
|
IntegratorVerlet.Agent |
makeAgent(IAtom a,
Box agentBox) |
Returns an agent for the given Atom.
|
protected void |
randomizeMomenta() |
Updates MrLast appropriately after randomizing momenta
as part of the Andersen thermostat.
|
protected void |
randomizeMomentum(IAtomKinetic atom) |
Updates MrLast appropriately after randomizing momentum
as part of the Andersen thermostat.
|
void |
releaseAgent(IntegratorVerlet.Agent agent,
IAtom atom,
Box agentBox) |
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 |
setTimeStep(double t) |
|
protected void |
updateMrLast() |
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, scaleMomenta, setAlwaysScaleRandomizedMomenta, setIntegratorMC, setIsothermal, setMeterTemperature, setTemperature, setThermostat, setThermostatInterval, setThermostatNoDrift, setup, shiftMomentaprotected final PotentialCalculationForcePressureSum forceSum
protected final Tensor pressureTensor
protected final Tensor workTensor
protected AtomLeafAgentManager<IntegratorVerlet.Agent> agentManager
public IntegratorVerlet(Simulation sim, PotentialMaster potentialMaster, Box box)
public IntegratorVerlet(PotentialMaster potentialMaster, IRandom random, double timeStep, double temperature, Box box)
public final void setTimeStep(double t)
setTimeStep in class IntegratorMDt - the new integration time stepprotected void doStepInternal()
IntegratordoStepInternal in class IntegratorMDpublic Tensor getPressureTensor()
public void reset()
IntegratorBoxreset in class IntegratorMDprotected void updateMrLast()
protected void randomizeMomenta()
randomizeMomenta in class IntegratorMDprotected void randomizeMomentum(IAtomKinetic atom)
randomizeMomentum in class IntegratorMDatom - whose momenta is be randomizedpublic final IntegratorVerlet.Agent makeAgent(IAtom a, Box agentBox)
AtomLeafAgentManager.AgentSourcemakeAgent in interface AtomLeafAgentManager.AgentSource<IntegratorVerlet.Agent>agentBox - TODOpublic void releaseAgent(IntegratorVerlet.Agent agent, IAtom atom, Box agentBox)
AtomLeafAgentManager.AgentSourcereleaseAgent in interface AtomLeafAgentManager.AgentSource<IntegratorVerlet.Agent>