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
FieldsModifier and TypeFieldDescriptionprotected doubleDipole x-component.protected doubleDipole y-component.protected doubleDipole z-component.protected doubleInduced dipole chain rule x-component.protected doubleInduced dipole chain rule y-component.protected doubleInduced dipole chain rule z-component.protected doublePartial charge.protected doubleQuadrupole xx-component multiplied by 1/3.protected doubleQuadrupole xy-component multiplied by 2/3.protected doubleQuadrupole xz-component multiplied by 2/3.protected doubleQuadrupole yy-component multiplied by 1/3.protected doubleQuadrupole xz-component multiplied by 2/3.protected doubleQuadrupole zz-component multiplied by 1/3.protected doubleAveraged induced dipole + induced dipole chain-rule x-component: sx = 0.5 * (ux + px).protected doubleAveraged induced dipole + induced dipole chain-rule y-component: sy = 0.5 * (uy + py).protected doubleAveraged induced dipole + induced dipole chain-rule z-component: sz = 0.5 * (uz + pz).protected doubleInduced dipole x-component.protected doubleInduced dipole y-component.protected doubleInduced dipole z-component.protected double -
Constructor Summary
ConstructorsConstructorDescriptionPolarizableMultipole 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 voidapplyMasks(double scaleInduction, double scaleEnergy) Compute the scaled and averaged induced dipole.voidClear the induced dipoles.voidset(double[] Q, double[] u, double[] uCR) Set the permanent multipole.final voidsetInducedDipole(double[] u, double[] uCR) Set the induced dipole.final voidsetPermanentMultipole(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.
-