org.jmol.minimize.forcefield
Class Calculations

java.lang.Object
  extended by org.jmol.minimize.forcefield.Calculations
Direct Known Subclasses:
CalculationsUFF

abstract class Calculations
extends java.lang.Object


Field Summary
(package private)  int[][] angles
           
(package private)  int atomCount
           
(package private)  MinAtom[] atoms
           
(package private)  int bondCount
           
(package private)  MinBond[] bonds
           
(package private) static int CALC_ANGLE
           
(package private) static int CALC_DISTANCE
           
(package private) static int CALC_ES
           
(package private) static int CALC_MAX
           
(package private) static int CALC_OOP
           
(package private) static int CALC_TORSION
           
(package private) static int CALC_VDW
           
(package private)  java.util.List[] calculations
           
(package private)  java.util.List constraints
           
(package private)  javax.vecmath.Vector3d da
           
(package private)  javax.vecmath.Vector3d db
           
(package private)  javax.vecmath.Vector3d dc
           
(package private)  javax.vecmath.Vector3d dd
           
static double DEG_TO_RAD
           
(package private)  ForceField ff
           
 java.util.Hashtable ffParams
           
(package private)  boolean gradients
           
(package private)  boolean havePartialCharges
           
(package private)  int ia
           
(package private)  int ib
           
(package private)  int ic
           
(package private)  int id
           
(package private)  boolean isPreliminary
           
(package private) static double KCAL_TO_KJ
           
(package private)  java.lang.StringBuffer logData
           
(package private)  boolean logging
           
(package private)  boolean loggingEnabled
           
(package private)  double[] partialCharges
           
private static double PI_OVER_2
           
static double RAD_TO_DEG
           
(package private)  boolean silent
           
(package private)  int[][] torsions
           
private static double TWO_PI
           
(package private)  javax.vecmath.Vector3d v1
           
(package private)  javax.vecmath.Vector3d v2
           
(package private)  javax.vecmath.Vector3d v3
           
 
Constructor Summary
Calculations(ForceField ff, MinAtom[] minAtoms, MinBond[] minBonds, int[][] angles, int[][] torsions, double[] partialCharges, java.util.List constraints)
           
 
Method Summary
(package private)  void addForce(javax.vecmath.Vector3d v, int i, double dE)
           
(package private)  void appendLogData(java.lang.String s)
           
private  double calc(int iType, boolean gradients)
           
(package private) abstract  double compute(int iType, java.lang.Object[] dataIn)
           
private  double constrainQuadratic(double value, double targetValue, double k, int iType)
           
private  double constraintEnergy(int iType)
           
(package private)  double energyAngle(boolean gradients)
           
(package private)  double energyBond(boolean gradients)
           
(package private)  double energyES(boolean gradients)
           
(package private)  double energyOOP(boolean gradients)
           
(package private)  double energyStrBnd(boolean gradients)
           
(package private)  double energyTorsion(boolean gradients)
           
(package private)  double energyVDW(boolean gradients)
           
(package private) abstract  java.lang.String getAtomList(java.lang.String title)
           
(package private) abstract  java.lang.String getDebugFooter(int iType, double energy)
           
(package private) abstract  java.lang.String getDebugHeader(int iType)
           
 java.lang.String getLogData()
           
(package private) static FFParam getParameter(java.lang.String a, java.util.Hashtable ffParams)
           
(package private) abstract  java.lang.String getUnit()
           
(package private)  boolean haveParams()
           
 void setConstraints(java.util.List constraints)
           
(package private)  void setLoggingEnabled(boolean TF)
           
(package private)  void setParams(java.util.Hashtable temp)
           
(package private)  void setPreliminary(boolean TF)
           
 void setSilent(boolean TF)
           
(package private) abstract  boolean setupCalculations()
           
(package private) abstract  boolean setupElectrostatics()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RAD_TO_DEG

public static final double RAD_TO_DEG
See Also:
Constant Field Values

DEG_TO_RAD

public static final double DEG_TO_RAD
See Also:
Constant Field Values

KCAL_TO_KJ

static final double KCAL_TO_KJ
See Also:
Constant Field Values

CALC_DISTANCE

static final int CALC_DISTANCE
See Also:
Constant Field Values

CALC_ANGLE

static final int CALC_ANGLE
See Also:
Constant Field Values

CALC_TORSION

static final int CALC_TORSION
See Also:
Constant Field Values

CALC_OOP

static final int CALC_OOP
See Also:
Constant Field Values

CALC_VDW

static final int CALC_VDW
See Also:
Constant Field Values

CALC_ES

static final int CALC_ES
See Also:
Constant Field Values

CALC_MAX

static final int CALC_MAX
See Also:
Constant Field Values

ff

ForceField ff

calculations

java.util.List[] calculations

ffParams

public java.util.Hashtable ffParams

atomCount

int atomCount

bondCount

int bondCount

atoms

MinAtom[] atoms

bonds

MinBond[] bonds

angles

int[][] angles

torsions

int[][] torsions

partialCharges

double[] partialCharges

havePartialCharges

boolean havePartialCharges

constraints

java.util.List constraints

isPreliminary

boolean isPreliminary

gradients

boolean gradients

silent

boolean silent

logData

java.lang.StringBuffer logData

logging

boolean logging

loggingEnabled

boolean loggingEnabled

da

final javax.vecmath.Vector3d da

db

final javax.vecmath.Vector3d db

dc

final javax.vecmath.Vector3d dc

dd

final javax.vecmath.Vector3d dd

ia

int ia

ib

int ib

ic

int ic

id

int id

v1

final javax.vecmath.Vector3d v1

v2

final javax.vecmath.Vector3d v2

v3

final javax.vecmath.Vector3d v3

PI_OVER_2

private static final double PI_OVER_2
See Also:
Constant Field Values

TWO_PI

private static final double TWO_PI
See Also:
Constant Field Values
Constructor Detail

Calculations

Calculations(ForceField ff,
             MinAtom[] minAtoms,
             MinBond[] minBonds,
             int[][] angles,
             int[][] torsions,
             double[] partialCharges,
             java.util.List constraints)
Method Detail

setConstraints

public void setConstraints(java.util.List constraints)

haveParams

boolean haveParams()

setParams

void setParams(java.util.Hashtable temp)

getParameter

static FFParam getParameter(java.lang.String a,
                            java.util.Hashtable ffParams)

setupCalculations

abstract boolean setupCalculations()

getAtomList

abstract java.lang.String getAtomList(java.lang.String title)

setupElectrostatics

abstract boolean setupElectrostatics()

getDebugHeader

abstract java.lang.String getDebugHeader(int iType)

getDebugFooter

abstract java.lang.String getDebugFooter(int iType,
                                         double energy)

getUnit

abstract java.lang.String getUnit()

compute

abstract double compute(int iType,
                        java.lang.Object[] dataIn)

addForce

void addForce(javax.vecmath.Vector3d v,
              int i,
              double dE)

setSilent

public void setSilent(boolean TF)

getLogData

public java.lang.String getLogData()

appendLogData

void appendLogData(java.lang.String s)

setLoggingEnabled

void setLoggingEnabled(boolean TF)

setPreliminary

void setPreliminary(boolean TF)

calc

private double calc(int iType,
                    boolean gradients)

energyStrBnd

double energyStrBnd(boolean gradients)

energyBond

double energyBond(boolean gradients)

energyAngle

double energyAngle(boolean gradients)

energyTorsion

double energyTorsion(boolean gradients)

energyOOP

double energyOOP(boolean gradients)

energyVDW

double energyVDW(boolean gradients)

energyES

double energyES(boolean gradients)

constraintEnergy

private double constraintEnergy(int iType)

constrainQuadratic

private double constrainQuadratic(double value,
                                  double targetValue,
                                  double k,
                                  int iType)