Package ffx.numerics.multipole
Class PolarizableMultipole
java.lang.Object
ffx.numerics.multipole.PolarizableMultipole
The PolarizableMultipole class defines a polarizable multipole.
- Since:
- 1.0
- Author:
- Michael J. Schnieders
-
Field Summary
Modifier and TypeFieldDescriptionprotected double
Dipole x-component.protected double
Dipole y-component.protected double
Dipole z-component.protected double
Induced dipole chain rule x-component.protected double
Induced dipole chain rule y-component.protected double
Induced dipole chain rule z-component.protected double
Partial charge.protected double
Quadrupole xx-component multiplied by 1/3.protected double
Quadrupole xy-component multiplied by 2/3.protected double
Quadrupole xz-component multiplied by 2/3.protected double
Quadrupole yy-component multiplied by 1/3.protected double
Quadrupole xz-component multiplied by 2/3.protected double
Quadrupole zz-component multiplied by 1/3.protected double
Averaged induced dipole + induced dipole chain-rule x-component: sx = 0.5 * (ux + px).protected double
Averaged induced dipole + induced dipole chain-rule y-component: sy = 0.5 * (uy + py).protected double
Averaged induced dipole + induced dipole chain-rule z-component: sz = 0.5 * (uz + pz).protected double
Induced dipole x-component.protected double
Induced dipole y-component.protected double
Induced dipole z-component.protected double
-
Constructor Summary
ConstructorDescriptionPolarizableMultipole constructor with zero moments.PolarizableMultipole
(double[] Q, double[] u, double[] uCR) PolarizableMultipole constructor.PolarizableMultipole
(double[] Q, double[] u, double[] uCR, double Z) PolarizableMultipole constructor. -
Method Summary
Modifier and TypeMethodDescriptionfinal void
applyMasks
(double scaleInduction, double scaleEnergy) Compute the scaled and averaged induced dipole.void
Clear the induced dipoles.void
set
(double[] Q, double[] u, double[] uCR) Set the permanent multipole.final void
setInducedDipole
(double[] u, double[] uCR) Set the induced dipole.final void
setPermanentMultipole
(double[] Q) Set the permanent multipole.
-
Field Details
-
q
protected double qPartial charge. -
dx
protected double dxDipole x-component. -
dy
protected double dyDipole y-component. -
dz
protected double dzDipole z-component. -
qxx
protected double qxxQuadrupole xx-component multiplied by 1/3. -
qyy
protected double qyyQuadrupole yy-component multiplied by 1/3. -
qzz
protected double qzzQuadrupole zz-component multiplied by 1/3. -
qxy
protected double qxyQuadrupole xy-component multiplied by 2/3. -
qxz
protected double qxzQuadrupole xz-component multiplied by 2/3. -
qyz
protected double qyzQuadrupole xz-component multiplied by 2/3. -
ux
protected double uxInduced dipole x-component. -
uy
protected double uyInduced dipole y-component. -
uz
protected double uzInduced dipole z-component. -
px
protected double pxInduced dipole chain rule x-component. -
py
protected double pyInduced dipole chain rule y-component. -
pz
protected double pzInduced dipole chain rule z-component. -
sx
protected double sxAveraged induced dipole + induced dipole chain-rule x-component: sx = 0.5 * (ux + px). -
sy
protected double syAveraged induced dipole + induced dipole chain-rule y-component: sy = 0.5 * (uy + py). -
sz
protected double szAveraged induced dipole + induced dipole chain-rule z-component: sz = 0.5 * (uz + pz). -
Z
protected double Z
-
-
Constructor Details
-
PolarizableMultipole
public PolarizableMultipole()PolarizableMultipole constructor with zero moments. -
PolarizableMultipole
public PolarizableMultipole(double[] Q, double[] u, double[] uCR) PolarizableMultipole constructor.- Parameters:
Q
- Multipole Q[q, dx, dy, dz, qxx, qyy, qzz, qxy, qxz, qyz]u
- Induced dipole u[ux, uy, uz]uCR
- Induced dipole chain-rule uCR[ux, uy, uz]
-
PolarizableMultipole
public PolarizableMultipole(double[] Q, double[] u, double[] uCR, double Z) PolarizableMultipole constructor.- Parameters:
Q
- Multipole Q[q, dx, dy, dz, qxx, qyy, qzz, qxy, qxz, qyz]u
- Induced dipole u[ux, uy, uz]uCR
- Induced dipole chain-rule uCR[ux, uy, uz]
-
-
Method Details
-
set
public void set(double[] Q, double[] u, double[] uCR) Set the permanent multipole.Note that the quadrupole trace components are multiplied by 1/3 and the off-diagonal components are multiplied by 2/3.
- Parameters:
Q
- Multipole Q[q, dx, dy, dz, qxx, qyy, qzz, qxy, qxz, qyz]u
- Induced dipole u[ux, uy, uz]uCR
- Induced dipole chain-rule uCR[ux, uy, uz]
-
setPermanentMultipole
public final void setPermanentMultipole(double[] Q) Set the permanent multipole.Note that the quadrupole trace components are multiplied by 1/3 and the off-diagonal components are multiplied by 2/3.
- Parameters:
Q
- Multipole Q[q, dx, dy, dz, qxx, qyy, qzz, qxy, qxz, qyz]
-
setInducedDipole
public final void setInducedDipole(double[] u, double[] uCR) Set the induced dipole.- Parameters:
u
- Induced dipole u[ux, uy, uz]uCR
- Induced dipole chain-rule uCR[ux, uy, uz]
-
clearInducedDipoles
public void clearInducedDipoles()Clear the induced dipoles. -
applyMasks
public final void applyMasks(double scaleInduction, double scaleEnergy) Compute the scaled and averaged induced dipole.- Parameters:
scaleInduction
- Induction mask scale factor.scaleEnergy
- Energy mask scale factor.
-