org.jmol.minimize.forcefield
abstract class Calculations extends Object
Modifier and Type | Field and Description |
---|---|
(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) List<Object[]>[] |
calculations |
(package private) List<Object[]> |
constraints |
(package private) Vector3d |
da |
(package private) Vector3d |
db |
(package private) Vector3d |
dc |
(package private) Vector3d |
dd |
static double |
DEG_TO_RAD |
(package private) ForceField |
ff |
Map<String,FFParam> |
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) 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) Vector3d |
v1 |
(package private) Vector3d |
v2 |
(package private) Vector3d |
v3 |
Constructor and Description |
---|
Calculations(ForceField ff,
MinAtom[] minAtoms,
MinBond[] minBonds,
int[][] angles,
int[][] torsions,
double[] partialCharges,
List<Object[]> constraints) |
Modifier and Type | Method and Description |
---|---|
(package private) void |
addForce(Vector3d v,
int i,
double dE) |
(package private) void |
appendLogData(String s) |
private double |
calc(int iType,
boolean gradients) |
(package private) abstract double |
compute(int iType,
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 String |
getAtomList(String title) |
(package private) void |
getConstraintList() |
(package private) abstract String |
getDebugFooter(int iType,
double energy) |
(package private) abstract String |
getDebugHeader(int iType) |
String |
getLogData() |
(package private) static FFParam |
getParameter(String a,
Map<String,FFParam> ffParams) |
(package private) abstract String |
getUnit() |
(package private) boolean |
haveParams() |
void |
setConstraints(List<Object[]> constraints) |
(package private) void |
setLoggingEnabled(boolean TF) |
(package private) void |
setParams(Map<String,FFParam> temp) |
(package private) void |
setPreliminary(boolean TF) |
void |
setSilent(boolean TF) |
(package private) abstract boolean |
setupCalculations() |
(package private) abstract boolean |
setupElectrostatics() |
public static final double RAD_TO_DEG
public static final double DEG_TO_RAD
static final double KCAL_TO_KJ
static final int CALC_DISTANCE
static final int CALC_ANGLE
static final int CALC_TORSION
static final int CALC_OOP
static final int CALC_VDW
static final int CALC_ES
static final int CALC_MAX
ForceField ff
int atomCount
int bondCount
MinAtom[] atoms
MinBond[] bonds
int[][] angles
int[][] torsions
double[] partialCharges
boolean havePartialCharges
boolean isPreliminary
boolean gradients
boolean silent
StringBuffer logData
boolean logging
boolean loggingEnabled
final Vector3d da
final Vector3d db
final Vector3d dc
final Vector3d dd
int ia
int ib
int ic
int id
final Vector3d v1
final Vector3d v2
final Vector3d v3
private static final double PI_OVER_2
private static final double TWO_PI
Calculations(ForceField ff, MinAtom[] minAtoms, MinBond[] minBonds, int[][] angles, int[][] torsions, double[] partialCharges, List<Object[]> constraints)
boolean haveParams()
abstract boolean setupCalculations()
abstract boolean setupElectrostatics()
abstract String getDebugHeader(int iType)
abstract String getDebugFooter(int iType, double energy)
abstract String getUnit()
abstract double compute(int iType, Object[] dataIn)
void addForce(Vector3d v, int i, double dE)
public void setSilent(boolean TF)
public String getLogData()
void appendLogData(String s)
void setLoggingEnabled(boolean TF)
void setPreliminary(boolean TF)
private double calc(int iType, boolean gradients)
double energyStrBnd(boolean gradients)
double energyBond(boolean gradients)
double energyAngle(boolean gradients)
double energyTorsion(boolean gradients)
double energyOOP(boolean gradients)
double energyVDW(boolean gradients)
double energyES(boolean gradients)
private double constraintEnergy(int iType)
private double constrainQuadratic(double value, double targetValue, double k, int iType)
void getConstraintList()