IPotential
, IPotentialAtomic
, IPotentialTorque
, PotentialSoft
public class P2WaterSzalewicz extends java.lang.Object implements IPotentialTorque
Modifier and Type | Class | Description |
---|---|---|
static class |
P2WaterSzalewicz.Component |
|
class |
P2WaterSzalewicz.P2H2OSC |
Modifier and Type | Field | Description |
---|---|---|
protected double[] |
aj |
|
protected double[] |
aj3 |
|
protected Vector[] |
allOr |
|
protected double |
bohrConv |
|
static boolean |
broken3body |
|
protected static double[] |
c |
|
protected static double[] |
c3 |
|
protected static double[] |
chrg3 |
|
protected static double |
cmzFix |
|
protected Vector[] |
com0 |
|
protected Vector[] |
com3 |
|
protected P2WaterSzalewicz.Component |
component |
|
protected static double |
core |
|
static boolean |
debug |
|
protected double[][] |
distPol |
|
protected double[][] |
dmptab |
|
protected Vector[][] |
E0 |
|
protected Vector |
E1 |
|
protected Vector |
epom |
|
protected static double |
gamma |
|
protected Vector[] |
Gpol |
|
protected Vector |
H1O |
|
protected static double[] |
H1pol |
|
protected Vector |
H2O |
|
protected static double[] |
H2pol |
|
protected int[] |
ijk |
|
protected static int[][] |
ind_beta |
|
protected static int[][] |
ind_C10 |
|
protected static int[][] |
ind_C6 |
|
protected static int[][] |
ind_C8 |
|
protected static int[] |
ind_charge |
|
protected static int[][] |
ind_d1 |
|
protected static int[][] |
ind_d10 |
|
protected static int[][] |
ind_d6 |
|
protected static int[][] |
ind_d8 |
|
protected int[][][][][][] |
ind_lin |
|
protected static int[][] |
ind3_beta |
|
protected static int[][] |
ind3_gamma |
|
protected static int[][] |
ind3_R0 |
|
protected static double |
mass |
|
protected static int |
nlin |
|
protected int |
nlin3 |
|
protected static int |
npol |
|
protected static int |
nsite3 |
|
protected Vector |
or2 |
|
protected static double[] |
params |
|
protected static double[] |
params3 |
|
protected static double[] |
pol |
|
protected Vector |
polE1 |
|
protected static double |
R0 |
|
protected Vector[] |
Rpol |
|
protected Vector |
rTmp |
|
protected Vector |
S2 |
|
protected Vector |
S3 |
|
protected Vector |
sep |
|
protected static double[][] |
siteDoubles |
|
protected Vector[][] |
sitePos |
|
protected Vector[][] |
sitePos3 |
|
protected static Vector[] |
sites |
|
protected Space |
space |
Constructor | Description |
---|---|
P2WaterSzalewicz(Space space,
int nBody) |
Modifier and Type | Method | Description |
---|---|---|
protected double |
damp(int n,
double beta,
double r) |
|
protected void |
efieldBohrDamped(Vector veci,
Vector[] sitebt,
double delta) |
Calculate the contribution of molecule b to the field on a
Use the CC-pol site charges.
|
double |
energy(IAtomList atoms) |
Returns the interaction energy between the given atoms.
|
protected double[] |
eulerFromOrientation(OrientationFull3D or) |
|
protected void |
fill(int iat,
int jat,
int kat,
int ip,
int jp,
int kp,
int nr) |
|
protected double |
fit3b() |
|
static double[] |
getQ() |
|
double |
getRange() |
Returns the range over which the potential applies.
|
static Vector[] |
getSites(Space space) |
|
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[][] |
gradientAndTorque(IAtomList atoms) |
|
double |
indN_iter() |
Compute the iterative induction between N water molecules
using several polarization centers in the molecular plane
|
static void |
main(java.lang.String[] args) |
|
static void |
main1(java.lang.String[] args) |
|
static void |
main2(java.lang.String[] args) |
|
static void |
main3(java.lang.String[] args) |
|
P2WaterSzalewicz.P2H2OSC |
makeSemiclassical(double temperature) |
|
int |
nBody() |
The number of atoms on which the potential depends.
|
void |
printFortranInput(IAtomList atoms) |
Prints atom coordinates and euler angles in a format compatible with the CCpol fortran program
The orientations are taken from the given atoms.
|
protected double |
S2fit(double AOOex,
double AHHex,
double AOHex,
double betaOO,
double betaHH,
double betaOH,
double exqpos) |
|
void |
setBox(Box box) |
Informs the potential of the box on which it acts so that it can
properly consider the boundaries.
|
void |
setComponent(P2WaterSzalewicz.Component newComponent) |
|
protected void |
Tprod(Vector Ri,
Vector Rj,
Vector u,
double rij) |
Calculate the vector V resulting from the action
of the dipole propagator tensor T_ij on U
Ri, Rj - position vectors of molecules i and j, respectively
rij = |Ri - Rj|^(-3)
|
double |
virial(IAtomList atoms) |
public static final boolean broken3body
protected static final double[][] siteDoubles
protected static final double mass
protected static final double cmzFix
protected static final Vector[] sites
protected static final double[] params
protected static final double[] c
protected static final int[] ind_charge
protected static final int[][] ind_beta
protected static final double[] params3
protected static final double[] c3
protected static final int[][] ind3_beta
protected static final int[][] ind3_gamma
protected static final int[][] ind3_R0
protected static final int[][] ind_d1
protected static final int[][] ind_d6
protected static final int[][] ind_d8
protected static final int[][] ind_d10
protected static final int[][] ind_C6
protected static final int[][] ind_C8
protected static final int[][] ind_C10
protected static final double gamma
protected static final double R0
protected final Vector[][] sitePos
protected final Vector[] com0
protected final Vector rTmp
protected final Vector or2
protected final Vector[] allOr
protected static final int npol
protected final Vector[][] E0
protected final Vector E1
protected final Vector polE1
protected final int[][][][][][] ind_lin
protected P2WaterSzalewicz.Component component
protected final double[] aj3
protected final double bohrConv
protected final Space space
protected static final int nlin
protected final int nlin3
protected final double[] aj
protected static final double core
public static boolean debug
protected final Vector[] Rpol
protected final Vector[] Gpol
protected final Vector epom
protected final double[][] distPol
protected final double[][] dmptab
protected static final double[] pol
protected static final double[] H1pol
protected static final double[] H2pol
protected final Vector H1O
protected final Vector H2O
protected final Vector[] com3
protected final Vector[][] sitePos3
protected final Vector sep
protected static final int nsite3
protected final int[] ijk
protected static final double[] chrg3
protected final Vector S2
protected final Vector S3
public P2WaterSzalewicz(Space space, int nBody)
public static double[] getQ()
protected void fill(int iat, int jat, int kat, int ip, int jp, int kp, int nr)
public void setComponent(P2WaterSzalewicz.Component newComponent)
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 energy(IAtomList atoms)
IPotentialAtomic
energy
in interface IPotentialAtomic
public void printFortranInput(IAtomList atoms)
protected double[] eulerFromOrientation(OrientationFull3D or)
protected double damp(int n, double beta, double r)
public double indN_iter()
protected void efieldBohrDamped(Vector veci, Vector[] sitebt, double delta)
protected void Tprod(Vector Ri, Vector Rj, Vector u, double rij)
protected double fit3b()
protected double S2fit(double AOOex, double AHHex, double AOHex, double betaOO, double betaHH, double betaOH, double exqpos)
public double getRange()
IPotential
getRange
in interface IPotential
public void setBox(Box box)
IPotential
setBox
in interface IPotential
public int nBody()
IPotential
nBody
in interface IPotential
public Vector[][] gradientAndTorque(IAtomList atoms)
gradientAndTorque
in interface IPotentialTorque
public P2WaterSzalewicz.P2H2OSC makeSemiclassical(double temperature)
public static void main1(java.lang.String[] args)
public static void main3(java.lang.String[] args)
public static void main2(java.lang.String[] args)
public static void main(java.lang.String[] args)