IPotential
, IPotentialAtomic
, PotentialHard
public class P1Wall extends java.lang.Object implements PotentialHard
Modifier and Type | Field | Description |
---|---|---|
protected Boundary |
boundary |
|
protected double |
epsilon |
|
protected double |
lastEnergyChange |
|
protected double |
lastVirial |
|
protected Tensor |
lastVirialTensor |
|
protected AtomLeafAgentManager |
monomerMonomerBondManager |
|
protected double |
range |
|
protected double |
sigma |
Constructor | Description |
---|---|
P1Wall(Space space,
AtomLeafAgentManager monomerMonomerBondManager) |
Modifier and Type | Method | Description |
---|---|---|
void |
bump(IAtomList a,
double falseTime) |
Implements the collision dynamics.
|
double |
collisionTime(IAtomList a,
double falseTime) |
Computes the time of collision of the given atom(s) with the hard
potential, assuming no intervening collisions.
|
double |
energy(IAtomList atoms) |
Returns the interaction energy between the given atoms.
|
double |
energyChange() |
returns change in potential energy due to the last collision
|
double |
getEpsilon() |
|
double |
getRange() |
Returns the range over which the potential applies.
|
double |
getSigma() |
|
double |
lastCollisionVirial() |
Value of the virial from the most recent collision.
|
Tensor |
lastCollisionVirialTensor() |
Value of the virial from the most recent collision, decomposed into it
tensoral elements.
|
double |
lastWallVirial() |
|
int |
nBody() |
The number of atoms on which the potential depends.
|
void |
setBox(Box box) |
Informs the potential of the box on which it acts so that it can
properly consider the boundaries.
|
void |
setEpsilon(double newEpsilon) |
|
void |
setRange(double newRange) |
|
void |
setSigma(double newSigma) |
protected Boundary boundary
protected final AtomLeafAgentManager monomerMonomerBondManager
protected double range
protected double sigma
protected double epsilon
protected double lastVirial
protected double lastEnergyChange
protected final Tensor lastVirialTensor
public P1Wall(Space space, AtomLeafAgentManager monomerMonomerBondManager)
public void setSigma(double newSigma)
public double getSigma()
public void setRange(double newRange)
public void setEpsilon(double newEpsilon)
public double getEpsilon()
public double energy(IAtomList atoms)
IPotentialAtomic
energy
in interface IPotentialAtomic
public double getRange()
IPotential
getRange
in interface IPotential
public int nBody()
IPotential
nBody
in interface IPotential
public void setBox(Box box)
IPotential
setBox
in interface IPotential
public void bump(IAtomList a, double falseTime)
PotentialHard
bump
in interface PotentialHard
public double collisionTime(IAtomList a, double falseTime)
PotentialHard
collisionTime
in interface PotentialHard
public double energyChange()
PotentialHard
energyChange
in interface PotentialHard
public double lastCollisionVirial()
PotentialHard
lastCollisionVirial
in interface PotentialHard
public Tensor lastCollisionVirialTensor()
PotentialHard
lastCollisionVirialTensor
in interface PotentialHard
public double lastWallVirial()