org.jmol.minimize
Class Minimizer

java.lang.Object
  extended by org.jmol.minimize.Minimizer
All Implemented Interfaces:
MinimizerInterface

public class Minimizer
extends Object
implements MinimizerInterface


Nested Class Summary
(package private)  class Minimizer.MinimizationThread
           
 
Field Summary
 int[][] angles
           
private  int atomCount
           
private  int[] atomMap
           
 Atom[] atoms
           
private static List atomTypes
           
private  int bondCount
           
private  BitSet bsAromatic
           
private  BitSet bsAtoms
           
private  BitSet bsFixed
           
private  BitSet bsFixedDefault
           
 BitSet bsMinFixed
           
private  BitSet bsSelected
           
private  BitSet bsTaint
           
private  Hashtable constraintMap
           
 List constraints
           
(package private)  double[][] coordSaved
           
private  double crit
           
private  String ff
           
private  boolean isSilent
           
 MinAtom[] minAtoms
           
 MinBond[] minBonds
           
(package private)  boolean minimizationOn
           
private  Minimizer.MinimizationThread minimizationThread
           
 double[] partialCharges
           
private  ForceField pFF
           
private static int PT_CHARGE
           
private static int PT_CONNECT
           
private static int PT_ELEMENT
           
private  int steps
           
private static int TOKEN_AROMATIC
           
private static int TOKEN_ELEMENT_ALLYLIC
           
private static int TOKEN_ELEMENT_CHARGED
           
private static int TOKEN_ELEMENT_CONNECTED
           
private static int TOKEN_ELEMENT_ONLY
           
private static int TOKEN_ELEMENT_SP
           
private static Token[][] tokenTypes
           
 int[][] torsions
           
 Viewer viewer
           
 
Constructor Summary
Minimizer()
           
 
Method Summary
private  void addConstraint(Object[] c)
           
private  void clear()
           
(package private)  void endMinimization()
           
 void getAngles()
           
 List getAtomTypes()
           
private  void getEnergyOnly()
           
 ForceField getForceField()
           
 Object getProperty(String propertyName, int param)
           
private  BitSet getSearch(String smarts, int elemnoMax, BitSet bsElements)
           
 void getTorsions()
           
 boolean minimize(int steps, double crit, BitSet bsSelected, BitSet bsFixed, boolean haveFixed, boolean forceSilent)
           
private  void minimizeWithoutThread()
           
 void report(String msg, boolean isEcho)
           
private  void restoreCoordinates()
           
private  void saveCoordinates()
           
private  void setAtomPositions()
           
private  void setMinimizationOn(boolean minimizationOn)
           
 void setProperty(String propertyName, Object value)
           
private  boolean setupMinimization()
           
 boolean startMinimization()
           
(package private)  boolean stepMinimization()
           
private  void stopMinimization(boolean coordAreOK)
           
(package private)  void updateAtomXYZ()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

viewer

public Viewer viewer

atoms

public Atom[] atoms

minAtoms

public MinAtom[] minAtoms

minBonds

public MinBond[] minBonds

bsMinFixed

public BitSet bsMinFixed

atomCount

private int atomCount

bondCount

private int bondCount

atomMap

private int[] atomMap

angles

public int[][] angles

torsions

public int[][] torsions

partialCharges

public double[] partialCharges

steps

private int steps

crit

private double crit

atomTypes

private static List atomTypes

pFF

private ForceField pFF

ff

private String ff

bsTaint

private BitSet bsTaint

bsSelected

private BitSet bsSelected

bsAtoms

private BitSet bsAtoms

bsFixedDefault

private BitSet bsFixedDefault

bsFixed

private BitSet bsFixed

bsAromatic

private BitSet bsAromatic

constraints

public List constraints

isSilent

private boolean isSilent

constraintMap

private Hashtable constraintMap

TOKEN_ELEMENT_ONLY

private static final int TOKEN_ELEMENT_ONLY
See Also:
Constant Field Values

TOKEN_ELEMENT_CHARGED

private static final int TOKEN_ELEMENT_CHARGED
See Also:
Constant Field Values

TOKEN_ELEMENT_CONNECTED

private static final int TOKEN_ELEMENT_CONNECTED
See Also:
Constant Field Values

TOKEN_AROMATIC

private static final int TOKEN_AROMATIC
See Also:
Constant Field Values

TOKEN_ELEMENT_SP

private static final int TOKEN_ELEMENT_SP
See Also:
Constant Field Values

TOKEN_ELEMENT_ALLYLIC

private static final int TOKEN_ELEMENT_ALLYLIC
See Also:
Constant Field Values

PT_ELEMENT

private static final int PT_ELEMENT
See Also:
Constant Field Values

PT_CHARGE

private static final int PT_CHARGE
See Also:
Constant Field Values

PT_CONNECT

private static final int PT_CONNECT
See Also:
Constant Field Values

tokenTypes

private static final Token[][] tokenTypes

minimizationOn

boolean minimizationOn

minimizationThread

private Minimizer.MinimizationThread minimizationThread

coordSaved

double[][] coordSaved
Constructor Detail

Minimizer

public Minimizer()
Method Detail

setProperty

public void setProperty(String propertyName,
                        Object value)
Specified by:
setProperty in interface MinimizerInterface

getProperty

public Object getProperty(String propertyName,
                          int param)
Specified by:
getProperty in interface MinimizerInterface

addConstraint

private void addConstraint(Object[] c)

clear

private void clear()

minimize

public boolean minimize(int steps,
                        double crit,
                        BitSet bsSelected,
                        BitSet bsFixed,
                        boolean haveFixed,
                        boolean forceSilent)
Specified by:
minimize in interface MinimizerInterface

setupMinimization

private boolean setupMinimization()

setAtomPositions

private void setAtomPositions()

getSearch

private BitSet getSearch(String smarts,
                         int elemnoMax,
                         BitSet bsElements)

getAngles

public void getAngles()

getTorsions

public void getTorsions()

getForceField

public ForceField getForceField()

getAtomTypes

public List getAtomTypes()

setMinimizationOn

private void setMinimizationOn(boolean minimizationOn)

getEnergyOnly

private void getEnergyOnly()

startMinimization

public boolean startMinimization()

stepMinimization

boolean stepMinimization()

endMinimization

void endMinimization()

saveCoordinates

private void saveCoordinates()

restoreCoordinates

private void restoreCoordinates()

stopMinimization

private void stopMinimization(boolean coordAreOK)

updateAtomXYZ

void updateAtomXYZ()

minimizeWithoutThread

private void minimizeWithoutThread()

report

public void report(String msg,
                   boolean isEcho)