IPotential
, IPotentialAtomic
, PotentialSoft
public class PotentialEAM extends PotentialN implements PotentialSoft
Modifier and Type | Field | Description |
---|---|---|
protected double |
a |
|
protected Boundary |
boundary |
|
protected double |
C |
|
protected Vector |
dr |
|
protected Vector |
drij |
|
protected Vector |
drik |
|
protected Vector |
drjk |
|
protected double |
eps |
|
protected Vector[] |
gradient |
|
protected double |
m |
|
protected double |
n |
|
protected double |
rC1 |
|
protected double |
rC2 |
|
protected Vector[] |
rhograd |
|
protected double[][] |
secondder |
Constructor | Description |
---|---|
PotentialEAM(Space space,
double n,
double m,
double eps,
double a,
double C,
double rC) |
Modifier and Type | Method | Description |
---|---|---|
double |
energy(IAtomList atoms) |
Returns the interaction energy between the given atoms.
|
double |
getRange() |
Returns the range over which the potential applies.
|
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.
|
double[][] |
secondder(IAtomList atoms) |
|
void |
setBox(Box box) |
Informs the potential of the box on which it acts.
|
void |
setRange(double rC) |
|
double |
virial(IAtomList atoms) |
nBody
protected double n
protected double m
protected double eps
protected double a
protected double C
protected double rC1
protected double rC2
protected Boundary boundary
protected final Vector dr
protected final Vector drij
protected final Vector drik
protected final Vector drjk
protected Vector[] gradient
protected Vector[] rhograd
protected double[][] secondder
public PotentialEAM(Space space, double n, double m, double eps, double a, double C, double rC)
public double getRange()
IPotential
getRange
in interface IPotential
getRange
in class Potential
public void setRange(double rC)
public double energy(IAtomList atoms)
Potential
energy
in interface IPotentialAtomic
energy
in class Potential
public void setBox(Box box)
Potential
setBox
in interface IPotential
setBox
in class Potential
public double virial(IAtomList atoms)
virial
in interface PotentialSoft
public Vector[] gradient(IAtomList atoms)
PotentialSoft
gradient
in interface PotentialSoft
public Vector[] gradient(IAtomList atoms, Tensor pressureTensor)
PotentialSoft
gradient
in interface PotentialSoft
public double[][] secondder(IAtomList atoms)