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
Field Summary |
(package private) boolean |
as5D
|
(package private) java.lang.String |
calculationType
|
(package private) float[] |
CX
|
(package private) float[] |
CY
|
(package private) float[] |
CZ
|
(package private) float[] |
DXY
|
(package private) float[] |
DXZ
|
(package private) float[] |
DYZ
|
(package private) float[] |
EX
|
(package private) float[] |
EY
|
(package private) float[] |
EZ
|
(package private) int |
firstAtomOffset
|
(package private) int |
gaussianPtr
|
(package private) float[][] |
gaussians
|
private static int |
MAX_GRID
|
(package private) int |
moCoeff
|
(package private) float[] |
moCoefficients
|
private static float |
ROOT3
|
(package private) java.util.Vector |
shells
|
(package private) float[][] |
slaterData
|
(package private) int[][] |
slaterInfo
|
Fields inherited from class org.jmol.quantum.QuantumCalculation |
atomCoordAngstroms, atomCoordBohr, atomIndex, atomSet, bohr_per_angstrom, countsXYZ, doDebug, originBohr, stepBohr, voxelData, X, X2, xMax, xMin, xyzBohr, Y, Y2, yMax, yMin, Z, Z2, 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)
|
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 alpha,
float as,
float ax,
float ay,
float az)
|
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
float[] CX
CY
float[] CY
CZ
float[] CZ
DXY
float[] DXY
DXZ
float[] DXZ
DYZ
float[] DYZ
EX
float[] EX
EY
float[] EY
EZ
float[] EZ
calculationType
java.lang.String calculationType
shells
java.util.Vector shells
gaussians
float[][] gaussians
slaterInfo
int[][] slaterInfo
slaterData
float[][] slaterData
moCoefficients
float[] moCoefficients
moCoeff
int moCoeff
gaussianPtr
int gaussianPtr
firstAtomOffset
int firstAtomOffset
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)
- Specified by:
calculate
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)
addDataS
private void addDataS(int nGaussians)
addDataP
private void addDataP(int nGaussians)
addDataSP
private void addDataSP(int nGaussians)
setCE
private void setCE(float alpha,
float as,
float ax,
float ay,
float az)
calcSP
private void calcSP(float alpha,
float as,
float ax,
float ay,
float az)
addData6D
private void addData6D(int nGaussians)
addData10F
private void addData10F(int nGaussians)
addData5D
private void addData5D(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)