org.jmol.quantum
Class MOCalculation
java.lang.Object
org.jmol.quantum.QuantumCalculation
org.jmol.quantum.MOCalculation
- All Implemented Interfaces:
- MOCalculationInterface
public class MOCalculation
- extends QuantumCalculation
- implements MOCalculationInterface
Fields inherited from class org.jmol.quantum.QuantumCalculation |
atomIndex, bohr_per_angstrom, doDebug, nX, nY, nZ, originBohr, qmAtoms, rangeBohr, stepBohr, thisAtom, voxelData, X, X2, xBohr, xMax, xMin, Y, Y2, yBohr, yMax, yMin, Z, Z2, zBohr, zMax, zMin |
Method Summary |
private void |
addData(int basisType,
int nGaussians)
|
private void |
addData10F(int nGaussians)
|
private void |
addData5D(int nGaussians)
|
private void |
addData6D(int nGaussians)
|
private void |
addData7F(int nGaussians)
|
private void |
addDataP(int nGaussians)
|
private void |
addDataS(int nGaussians)
|
private void |
addDataSP(int nGaussians)
|
private void |
calcSP(float alpha,
float as,
float ax,
float ay,
float az)
|
void |
calculate(VolumeDataInterface volumeData,
java.util.BitSet bsSelected,
java.lang.String calculationType,
javax.vecmath.Point3f[] atomCoordAngstroms,
int firstAtomOffset,
java.util.Vector shells,
float[][] gaussians,
java.util.Hashtable aoOrdersDF,
int[][] slaterInfo,
float[][] slaterData,
float[] moCoefficients,
float[] nuclearCharges,
boolean doNormalize)
|
void |
calculateElectronDensity(float[] nuclearCharges)
|
private void |
check5D()
Idea here is that we skip all the atoms, just increment moCoeff,
and compare the number of coefficients run through to the
size of the moCoefficients array. |
private boolean |
checkCalculationType()
|
private void |
createGaussianCube()
|
private void |
createSlaterCube()
|
private void |
dumpInfo(int nGaussians,
int shell)
|
private void |
dumpInfo(int nGaussians,
java.lang.String info)
|
private void |
processShell(int iShell)
|
private void |
processSlater(int slaterIndex)
|
private void |
setCE(float[] CX,
float[] EX,
float alpha,
float as,
float ax,
float ay,
float az)
|
private void |
setE(float[] EX,
float alpha)
|
private void |
setTemp()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MAX_GRID
private static int MAX_GRID
CX
final float[] CX
CY
final float[] CY
CZ
final float[] CZ
DXY
final float[] DXY
DXZ
final float[] DXZ
DYZ
final float[] DYZ
EX
final float[] EX
EY
final float[] EY
EZ
final float[] EZ
calculationType
private java.lang.String calculationType
shells
private java.util.Vector shells
gaussians
private float[][] gaussians
slaterInfo
private int[][] slaterInfo
slaterData
private float[][] slaterData
moCoefficients
private float[] moCoefficients
moCoeff
private int moCoeff
gaussianPtr
private int gaussianPtr
firstAtomOffset
private int firstAtomOffset
isElectronDensity
private boolean isElectronDensity
occupancy
private float occupancy
voxelDataTemp
protected float[][][] voxelDataTemp
doNormalize
private boolean doNormalize
as5D
boolean as5D
ROOT3
private static final float ROOT3
- See Also:
- Constant Field Values
MOCalculation
public MOCalculation()
calculate
public void calculate(VolumeDataInterface volumeData,
java.util.BitSet bsSelected,
java.lang.String calculationType,
javax.vecmath.Point3f[] atomCoordAngstroms,
int firstAtomOffset,
java.util.Vector shells,
float[][] gaussians,
java.util.Hashtable aoOrdersDF,
int[][] slaterInfo,
float[][] slaterData,
float[] moCoefficients,
float[] nuclearCharges,
boolean doNormalize)
- Specified by:
calculate
in interface MOCalculationInterface
calculateElectronDensity
public void calculateElectronDensity(float[] nuclearCharges)
- Specified by:
calculateElectronDensity
in interface MOCalculationInterface
createSlaterCube
private void createSlaterCube()
createGaussianCube
private void createGaussianCube()
check5D
private void check5D()
- Idea here is that we skip all the atoms, just increment moCoeff,
and compare the number of coefficients run through to the
size of the moCoefficients array. If there are more coefficients
than there should be, we have to assume 5D orbitals were not recognized
by the file loader
checkCalculationType
private boolean checkCalculationType()
processShell
private void processShell(int iShell)
addData
private void addData(int basisType,
int nGaussians)
setTemp
private void setTemp()
addDataS
private void addDataS(int nGaussians)
addDataP
private void addDataP(int nGaussians)
addDataSP
private void addDataSP(int nGaussians)
setCE
private void setCE(float[] CX,
float[] EX,
float alpha,
float as,
float ax,
float ay,
float az)
setE
private void setE(float[] EX,
float alpha)
calcSP
private void calcSP(float alpha,
float as,
float ax,
float ay,
float az)
addData6D
private void addData6D(int nGaussians)
addData5D
private void addData5D(int nGaussians)
addData10F
private void addData10F(int nGaussians)
addData7F
private void addData7F(int nGaussians)
processSlater
private void processSlater(int slaterIndex)
dumpInfo
private void dumpInfo(int nGaussians,
java.lang.String info)
dumpInfo
private void dumpInfo(int nGaussians,
int shell)