AtomLeafAgentManager.AgentSource<Vector>
public class IntegratorDimerRT extends IntegratorBox implements AtomLeafAgentManager.AgentSource<Vector>
Integrator.Forcible, Integrator.Torquable
eventManager, initialized, interval, stepCount
box, currentPotentialEnergy, isothermal, meterPE, potentialMaster, space, temperature
Constructor | Description |
---|---|
IntegratorDimerRT(Simulation sim,
PotentialMaster potentialMaster,
ISpecies[] species,
Box box) |
|
IntegratorDimerRT(Simulation aSim,
PotentialMaster potentialMaster,
IRandom random,
double temperature,
ISpecies[] aspecies,
Box box) |
Modifier and Type | Method | Description |
---|---|---|
protected void |
dimerCurvature(Vector[] aN,
Vector[] aF1,
Vector[] aF2) |
Computes curvature value, C, for the energy surface.
|
protected void |
dimerForceCenter(Vector[] aF) |
|
protected void |
dimerForceEff(Vector[] aF,
Vector[] aFeff,
Vector[] aNeff) |
|
protected void |
dimerForcePerp(Vector[] aN,
Vector[] aF1,
Vector[] aF2,
Vector[] aFperp) |
|
protected void |
dimerForces(Vector[] aF1,
Vector[] aF2,
Vector[] aF) |
|
protected void |
dimerForcesStar(Vector[] aF1star,
Vector[] aF2star,
Vector[] aF) |
|
protected void |
dimerNormal() |
|
protected void |
dimerSaddleTolerance() |
|
protected void |
dimerUpdatePositions(double a1,
Vector[] normal) |
|
protected void |
doStepInternal() |
Performs the elementary integration step, such as a molecular dynamics
time step, or a Monte Carlo trial.
|
Vector |
makeAgent(IAtom a,
Box agentBox) |
Returns an agent for the given Atom.
|
void |
releaseAgent(Vector 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
|
protected void |
resizeDimer() |
|
void |
rotateDimerNewton() |
Rotates the dimer in potential energy hyperspace and aligns it with the surface's lowest
curvature mode.
|
void |
setFileName(java.lang.String fileName) |
Set's the filename of the output of this integrator.
|
void |
setOrtho(boolean orthoON,
boolean o2) |
Set's the Dimer search's orthogonality criteria.
|
void |
setRotNum(int num) |
|
protected void |
setup() |
Takes in a current configuration of atoms (Rc) and creates a dimer of their positions (R1 and R2).
|
protected void |
testOrthoCurvature(Vector[] aN1,
Vector[] aNortho) |
Checks the curvature value at dimer orientation along a vector orthogonal to
lowest curvature mode's (lcm) vector with the lcm's unit vector.
|
void |
translateDimerQuickmin() |
Moves the dimer along the lowest curvature mode of the energy surface, Quickmin style.
|
doStep, getEventInterval, getEventManager, getStepCount, isInitialized, resetStepCount, setEventInterval
getBox, getMeterPotentialEnergy, getPotentialEnergy, getPotentialMaster, getTemperature, getTemperatureDimension, isIsothermal, setBox, setIsothermal, setMeterPotentialEnergy, setTemperature
public Box box1
public Box box2
public Simulation sim
public double deltaR
public double dTheta
public double deltaXl
public double dXl
public double deltaTheta
public double curvature
public double deltaXmax
public double Frot
public double Frot2
public double Fprimerot
public double dFrot
public double saddleT
public double dFsq
public double gammai
public double saddleEnergy
public int rotNum
public int counter
public int rotCounter
public int movableAtoms
public boolean rotate
public boolean ortho
public boolean ortho2
public boolean startOrtho
public boolean saddleFound
public MeterPotentialEnergy energyBox1
public MeterPotentialEnergy energyBox2
public MeterPotentialEnergy energyBox0
public Vector[] THETA
public Vector[] THETAstar
public Vector[] THETAstarstar
public Vector[] F
public Vector[] F1
public Vector[] F2
public Vector[] Fperp
public Vector[] F1perp
public Vector[] F2perp
public Vector[] Gperp
public Vector[] Gperplast
public Vector[] Fperplast
public Vector[] Fstar
public Vector[] F1star
public Vector[] F2star
public Vector[] Fstarperp
public Vector[] Feff
public Vector[] Feffstar
public Vector[] Fr
public Vector[] Fpara
public Vector[] deltaV
public Vector[] V
public Vector[] newPosition
public Vector[] workVector3
public Vector[] N
public Vector[] Nstar
public Vector[] Neff
public Vector[] N1
public Vector NDelta
public Vector NstarDelta
public Vector workVector
public IRandom random1
public ISpecies[] movableSpecies
public PotentialCalculationForceSum force0
public PotentialCalculationForceSum force1
public PotentialCalculationForceSum force2
public AtomArrayList list
public AtomArrayList list1
public AtomArrayList list2
public AtomLeafAgentManager<Vector> atomAgent0
public AtomLeafAgentManager<Vector> atomAgent1
public AtomLeafAgentManager<Vector> atomAgent2
public IteratorDirective allatoms
public java.lang.String file
public CalcVibrationalModes vib
public IntegratorDimerRT(Simulation sim, PotentialMaster potentialMaster, ISpecies[] species, Box box)
public IntegratorDimerRT(Simulation aSim, PotentialMaster potentialMaster, IRandom random, double temperature, ISpecies[] aspecies, Box box)
public void setRotNum(int num)
public void setOrtho(boolean orthoON, boolean o2)
orthoON
- (if true) Once the rotation scheme has converged to a small enough Frot value, the orthogonal search is started.o2
- (if true) Launches another orthogonal path search after the primary orthogonal search.public void setFileName(java.lang.String fileName)
fileName
- Stringprotected void doStepInternal()
Integrator
doStepInternal
in class Integrator
public void reset()
IntegratorBox
reset
in class IntegratorBox
protected void setup()
setup
in class Integrator
public void rotateDimerNewton()
public void translateDimerQuickmin()
protected void dimerCurvature(Vector[] aN, Vector[] aF1, Vector[] aF2)
protected void testOrthoCurvature(Vector[] aN1, Vector[] aNortho)
protected void dimerNormal()
protected void dimerForceCenter(Vector[] aF)
protected void dimerForcePerp(Vector[] aN, Vector[] aF1, Vector[] aF2, Vector[] aFperp)
protected void dimerUpdatePositions(double a1, Vector[] normal)
protected void resizeDimer()
protected void dimerSaddleTolerance()
public Vector makeAgent(IAtom a, Box agentBox)
AtomLeafAgentManager.AgentSource
makeAgent
in interface AtomLeafAgentManager.AgentSource<Vector>
agentBox
- TODOpublic void releaseAgent(Vector agent, IAtom atom, Box agentBox)
AtomLeafAgentManager.AgentSource
releaseAgent
in interface AtomLeafAgentManager.AgentSource<Vector>