IPotential
, IPotentialMolecular
, IPotentialMolecularSecondDerivative
, IPotentialMolecularTorque
, PotentialMolecularSoft
public class P2LJDipole extends PotentialMolecular implements IPotentialMolecularSecondDerivative
Modifier and Type | Field | Description |
---|---|---|
protected Vector[] |
a |
|
protected Vector[][] |
gradientAndTorque |
|
protected Tensor[] |
secondDerivative |
|
protected double |
temperature |
|
protected Vector[] |
torque |
nBody, space
Constructor | Description |
---|---|
P2LJDipole(Space space,
double sigma,
double epsilon,
double dipole,
double rCut) |
Modifier and Type | Method | Description |
---|---|---|
double |
energy(IMoleculeList pair) |
Returns the interaction energy between the given molecules.
|
double |
getEpsilon() |
|
double |
getRange() |
Returns the range over which the potential applies.
|
double |
getSigma() |
|
double |
getTemperature() |
|
Vector[] |
gradient(IMoleculeList pair) |
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(IMoleculeList pair,
Tensor pressureTensor) |
Returns the same gradient as gradient(IMoleculeList) and also adds in
the contribution of the molecules to the pressureTensor.
|
Vector[][] |
gradientAndTorque(IMoleculeList molecules) |
|
Tensor[] |
secondDerivative(IMoleculeList molecules) |
|
void |
setBox(Box box) |
Informs the potential of the box on which it acts.
|
void |
setDipole(double s) |
|
void |
setEpsilon(double eps) |
|
void |
setSigma(double s) |
|
void |
setTemperature(double newTemperature) |
Sets the temperature used for Boltzmann-weighting of the orientational
average energy used in u(double) and integral(double)
|
double |
virial(IMoleculeList atoms) |
nBody
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
nBody
protected double temperature
protected final Vector[] torque
protected final Vector[] a
protected final Vector[][] gradientAndTorque
protected final Tensor[] secondDerivative
public P2LJDipole(Space space, double sigma, double epsilon, double dipole, double rCut)
public void setBox(Box box)
PotentialMolecular
setBox
in interface IPotential
setBox
in class PotentialMolecular
public double getRange()
IPotential
getRange
in interface IPotential
getRange
in class PotentialMolecular
public Vector[] gradient(IMoleculeList pair, Tensor pressureTensor)
PotentialMolecularSoft
gradient
in interface PotentialMolecularSoft
public Vector[] gradient(IMoleculeList pair)
PotentialMolecularSoft
gradient
in interface PotentialMolecularSoft
public double virial(IMoleculeList atoms)
virial
in interface PotentialMolecularSoft
public double energy(IMoleculeList pair)
PotentialMolecular
energy
in interface IPotentialMolecular
energy
in class PotentialMolecular
public Vector[][] gradientAndTorque(IMoleculeList molecules)
gradientAndTorque
in interface IPotentialMolecularTorque
public Tensor[] secondDerivative(IMoleculeList molecules)
secondDerivative
in interface IPotentialMolecularSecondDerivative
public double getSigma()
public final void setSigma(double s)
public double getEpsilon()
public void setEpsilon(double eps)
public void setDipole(double s)
public void setTemperature(double newTemperature)
public double getTemperature()