Package org.jmol.adapter.readers.simple
Class MopacReader
- java.lang.Object
-
- org.jmol.adapter.smarter.AtomSetCollectionReader
-
- org.jmol.adapter.readers.simple.MopacReader
-
- All Implemented Interfaces:
javajs.api.GenericLineReader
public class MopacReader extends AtomSetCollectionReader
Reads Mopac 93, 6, 7, 2002, or 2009 output files- Author:
- Egon Willighagen
-
-
Field Summary
Fields Modifier and Type Field Description private booleanchargesFoundprivate booleanhaveHeaderprivate intmopacVersion-
Fields inherited from class org.jmol.adapter.smarter.AtomSetCollectionReader
addedData, addedDataKey, addVibrations, allowPDBFilter, ANGSTROMS_PER_BOHR, applySymmetryToBonds, asc, baseAtomIndex, binaryDoc, bsFilter, bsModels, calculationType, continuing, debugging, desiredModelNumber, desiredSpaceGroupIndex, desiredVibrationNumber, doApplySymmetry, doCentralize, doCheckUnitCell, doConvertToFractional, doPackUnitCell, doProcessLines, doReadMolecularOrbitals, dssr, fileName, fileOffset, filePath, fileScaling, fillRange, filter, filterHetero, fixJavaFloat, forcePacked, getHeader, haveAtomFilter, haveModel, havePartialChargeFilter, htParams, ignoreFileSpaceGroupName, ignoreFileSymmetryOperators, ignoreFileUnitCell, ignoreStructure, iHaveFractionalCoordinates, iHaveSymmetryOperators, iHaveUnitCell, isBinary, isConcatenated, isDSSP1, isFinalized, isMolecular, isSequential, isTrajectory, latticeCells, latticeScaling, line, lstNCS, matUnitCellOrientation, modelNumber, ms, mustFinalizeModelSet, next, out, packingError, prevline, ptLine, ptSupercell, reader, readerName, reverseModels, sgName, stateScriptVersionInt, strSupercell, symmetry, templateAtomCount, thisBiomolecule, trajectorySteps, unitCellOffset, unitCellParams, useAltNames, useFileModelNumbers, validation, vibrationNumber, vibsFractional, vwr
-
-
Constructor Summary
Constructors Constructor Description MopacReader()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancheckLine()protected voidinitializeReader()(package private) voidprocessAtomicCharges()Reads the section in MOPAC files with atomic charges.(package private) voidprocessCoordinates()Reads the section in MOPAC files with cartesian coordinates.(package private) voidprocessTotalEnergy()private voidreadFrequencies()Interprets the Harmonic frequencies section.-
Methods inherited from class org.jmol.adapter.smarter.AtomSetCollectionReader
addAtomXYZSymName, addJmolScript, addPrimitiveLatticeVector, addSites, addSiteScript, appendLoadNote, appendUunitCellInfo, applySymmetryAndSetTrajectory, applySymTrajASCR, checkCurrentLineForScript, checkFilterKey, checkLastModel, checkLineForScript, clearUnitCell, cloneLastAtomSet, discardLinesUntilBlank, discardLinesUntilContains, discardLinesUntilContains2, discardLinesUntilNonBlank, discardLinesUntilStartsWith, discardPreviousAtoms, doGetModel, doGetVibration, doPreSymmetry, fillDataBlock, fillDataBlockFixed, fillFloatArray, fillFrequencyData, filterAtom, filterReject, finalizeMOData, finalizeModelSet, finalizeReaderASCR, finalizeSubclassReader, finalizeSubclassSymmetry, forceSymmetry, fractionalizeCoordinates, getElementSymbol, getFilter, getFortranFormatLengths, getInterface, getNewSymmetry, getStrings, getSymmetry, getTokens, getTokensFloat, initializeSymmetry, initializeSymmetryOptions, initializeTrajectoryFile, isLastModel, newAtomSet, parseFloat, parseFloatRange, parseFloatStr, parseInt, parseIntAt, parseIntRange, parseIntStr, parseToken, parseTokenNext, parseTokenRange, parseTokenStr, processBinaryDocument, processDOM, rd, read3Vectors, readDataObject, readLines, readNextLine, rejectAtomName, RL, set2D, setAtomCoord, setAtomCoordScaled, setAtomCoordTokens, setAtomCoordXYZ, setChainID, setElementAndIsotope, setFilter, setFilterAtomTypeStr, setFractionalCoordinates, setIsPDB, setLoadNote, setModelPDB, setSpaceGroupName, setSymmetryOperator, setTransform, setUnitCell, setUnitCellItem, setup, setupASCR
-
-
-
-
Method Detail
-
initializeReader
protected void initializeReader() throws java.lang.Exception- Overrides:
initializeReaderin classAtomSetCollectionReader- Throws:
java.lang.Exception
-
checkLine
protected boolean checkLine() throws java.lang.Exception- Overrides:
checkLinein classAtomSetCollectionReader- Returns:
- true if need to read new line
- Throws:
java.lang.Exception
-
processTotalEnergy
void processTotalEnergy()
-
processAtomicCharges
void processAtomicCharges() throws java.lang.ExceptionReads the section in MOPAC files with atomic charges. These sections look like:NET ATOMIC CHARGES AND DIPOLE CONTRIBUTIONS ATOM NO. TYPE CHARGE ATOM ELECTRON DENSITY 1 C -0.077432 4.0774 2 C -0.111917 4.1119 3 C 0.092081 3.9079They are expected to be found in the file before the cartesian coordinate section.- Throws:
java.lang.Exception
-
processCoordinates
void processCoordinates() throws java.lang.ExceptionReads the section in MOPAC files with cartesian coordinates. These sections look like:CARTESIAN COORDINATES NO. ATOM X Y Z 1 C 0.0000 0.0000 0.0000 2 C 1.3952 0.0000 0.0000 3 C 2.0927 1.2078 0.0000In a MOPAC2002 file the columns are different:CARTESIAN COORDINATES NO. ATOM X Y Z 1 H 0.00000000 0.00000000 0.00000000 2 O 0.95094500 0.00000000 0.00000000 3 H 1.23995160 0.90598439 0.00000000- Throws:
java.lang.Exception
-
readFrequencies
private void readFrequencies() throws java.lang.ExceptionInterprets the Harmonic frequencies section.THE LAST 6 VIBRATIONS ARE THE TRANSLATION AND ROTATION MODES THE FIRST THREE OF THESE BEING TRANSLATIONS IN X, Y, AND Z, RESPECTIVELY NORMAL COORDINATE ANALYSIS ROOT NO. 1 2 3 4 5 6 370.51248 370.82204 618.03031 647.68700 647.74806 744.32662 1 0.00002 0.00001 -0.00002 -0.05890 0.07204 -0.00002 2 0.00001 -0.00006 -0.00001 0.01860 0.13517 0.00000 3 0.00421 -0.11112 0.06838 -0.00002 -0.00003 -0.02449 4 0.00002 0.00001 -0.00002 -0.04779 0.07977 -0.00001 5 -0.00002 0.00002 0.00001 0.13405 -0.02908 0.00004 6 -0.10448 0.05212 -0.06842 -0.00005 -0.00002 -0.02447The vectors are added to a clone of the last read AtomSet. Only the Frequencies are set as properties for each of the frequency type AtomSet generated.
- Throws:
java.lang.Exception- If an I/O error occurs
-
-