AtomLeafAgentManager.AgentSource<Vector>
, IPotential
, IPotentialAtomic
, PotentialSoft
public class P1Tether extends Potential1 implements AtomLeafAgentManager.AgentSource<Vector>, PotentialSoft
Potential1.Intramolecular
Modifier and Type | Field | Description |
---|---|---|
protected AtomLeafAgentManager<Vector> |
agentManager |
|
protected double |
epsilon |
|
protected Vector[] |
gradient |
|
protected ISpecies |
species |
|
protected Vector |
work |
boundary
Constructor | Description |
---|---|
P1Tether(Box box,
ISpecies species,
Space _space) |
Modifier and Type | Method | Description |
---|---|---|
double |
energy(IAtomList atoms) |
Returns the interaction energy between the given atoms.
|
double |
getEpsilon() |
|
Vector[] |
gradient(IAtomList atoms) |
Returns the gradient of the potential as it applies to each atom in the
given AtomSet, indicating how the energy would change as the position of
the first atom is varied.
|
Vector[] |
gradient(IAtomList atoms,
Tensor pressureTensor) |
Returns the same gradient as gradient(AtomSet) and also adds in the
contribution of the AtomSet to the pressureTensor.
|
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 |
setEpsilon(double newEpsilon) |
|
double |
virial(IAtomList atoms) |
getRange, nBody, setBox
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getRange, setBox
protected final AtomLeafAgentManager<Vector> agentManager
protected final ISpecies species
protected final Vector work
protected final Vector[] gradient
protected double epsilon
public void setEpsilon(double newEpsilon)
public double getEpsilon()
public double energy(IAtomList atoms)
Potential
energy
in interface IPotentialAtomic
energy
in class Potential
public Vector[] gradient(IAtomList atoms)
PotentialSoft
gradient
in interface PotentialSoft
public Vector[] gradient(IAtomList atoms, Tensor pressureTensor)
PotentialSoft
gradient
in interface PotentialSoft
public double virial(IAtomList atoms)
virial
in interface PotentialSoft
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>