IPotential
, IPotentialAtomic
, Potential2Spherical
, PotentialHard
public class P2PenetrableSquareWell extends Potential2HardSpherical
Modifier and Type | Field | Description |
---|---|---|
protected double |
coreDiameterSquared |
|
protected double |
deltaEps |
|
protected Vector |
dv |
|
protected double |
epsilon |
|
protected double |
epsilonCore |
|
protected boolean |
ignoreOverlap |
|
protected double |
lambdaSquared |
|
protected double |
lastCollisionVirial |
|
protected double |
lastCollisionVirialr2 |
|
protected Tensor |
lastCollisionVirialTensor |
|
protected double |
lastEnergyChange |
|
protected double |
wellDiameterSquared |
boundary, dr
Constructor | Description |
---|---|
P2PenetrableSquareWell(Space space) |
|
P2PenetrableSquareWell(Space space,
double coreDiameter,
double lambda,
double epsilon,
boolean ignoreOverlap) |
Modifier and Type | Method | Description |
---|---|---|
void |
bump(IAtomList pair,
double falseTime) |
Implements collision dynamics between two square-well atoms.
|
double |
collisionTime(IAtomList pair,
double falseTime) |
Computes next time of collision of two square-well atoms, assuming free-flight kinematics.
|
double |
energyChange() |
returns change in potential energy due to the last collision
|
double |
getCoreDiameter() |
Accessor method for core diameter.
|
Dimension |
getCoreDiameterDimension() |
|
double |
getEpsilon() |
Accessor method for depth of well
|
double |
getEpsilonCore() |
|
Dimension |
getEpsilonCoreDimension() |
|
Dimension |
getEpsilonDimension() |
|
double |
getLambda() |
Accessor method for well-diameter multiplier.
|
Dimension |
getLambdaDimension() |
|
double |
getRange() |
Returns the range over which the potential applies.
|
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.
|
void |
setCoreDiameter(double c) |
Accessor method for core diameter.
|
void |
setCoreDiameterSquared(double c2) |
|
void |
setEpsilon(double eps) |
Mutator method for depth of well.
|
void |
setEpsilonCore(double epsilsonCore) |
Sets height of penetrable core.
|
void |
setLambda(double lam) |
Accessor method for well-diameter multiplier.
|
double |
u(double r2) |
Returns infinity if overlapping, -epsilon if otherwise less than well diameter, or zero if neither.
|
nBody
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
energy, setBox
protected double coreDiameterSquared
protected double wellDiameterSquared
protected double lambdaSquared
protected double epsilon
protected double epsilonCore
protected double deltaEps
protected double lastCollisionVirial
protected double lastCollisionVirialr2
protected Tensor lastCollisionVirialTensor
protected double lastEnergyChange
protected Vector dv
protected final boolean ignoreOverlap
public P2PenetrableSquareWell(Space space)
public P2PenetrableSquareWell(Space space, double coreDiameter, double lambda, double epsilon, boolean ignoreOverlap)
public double getRange()
IPotential
getRange
in interface IPotential
getRange
in class Potential
public void bump(IAtomList pair, double falseTime)
public double lastCollisionVirial()
PotentialHard
public Tensor lastCollisionVirialTensor()
PotentialHard
public double collisionTime(IAtomList pair, double falseTime)
public double u(double r2)
u
in interface Potential2Spherical
u
in class Potential2HardSpherical
r2
- the square of the distance between the particles.public double energyChange()
PotentialHard
public double getCoreDiameter()
public void setCoreDiameter(double c)
public Dimension getCoreDiameterDimension()
public void setCoreDiameterSquared(double c2)
public double getLambda()
public void setLambda(double lam)
public Dimension getLambdaDimension()
public double getEpsilon()
public void setEpsilon(double eps)
public Dimension getEpsilonDimension()
public double getEpsilonCore()
public void setEpsilonCore(double epsilsonCore)
public Dimension getEpsilonCoreDimension()