Class AdfReader

  • All Implemented Interfaces:
    javajs.api.GenericLineReader

    public class AdfReader
    extends SlaterReader
    TODO: adf-2007.out causes failure reading basis functions A reader for ADF output. Amsterdam Density Functional (ADF) is a quantum chemistry program by Scientific Computing & Modelling NV (SCM) (http://www.scm.com/).

    Molecular coordinates, energies, and normal coordinates of vibrations are read. Each set of coordinates is added to the ChemFile in the order they are found. Energies and vibrations are associated with the previously read set of coordinates.

    This reader was developed from a small set of example output files, and therefore, is not guaranteed to properly read all ADF output. If you have problems, please contact the author of this code, not the developers of ADF.

    Added note (Bob Hanson) -- 1/1/2010 -- Trying to implement reading of orbitals; ran into the problem that the atomic Slater description uses Cartesian orbitals, but the MO refers to spherical orbitals.

    Version:
    1.0
    Author:
    Bradley A. Smith (yeldar@home.com)
    • Field Detail

      • energy

        private java.lang.String energy
      • nXX

        private int nXX
      • symLine

        private java.lang.String symLine
    • Constructor Detail

      • AdfReader

        public AdfReader()
    • Method Detail

      • checkLine

        protected boolean checkLine()
                             throws java.lang.Exception
        Overrides:
        checkLine in class AtomSetCollectionReader
        Returns:
        true if need to read new line
        Throws:
        java.lang.Exception
      • readCoordinates

        private void readCoordinates()
                              throws java.lang.Exception
        Reads a set of coordinates
        Throws:
        java.lang.Exception - if an I/O error occurs
      • readFrequencies

        private void readFrequencies()
                              throws java.lang.Exception
        Reads a set of vibrations.
        Throws:
        java.lang.Exception - if an I/O error occurs
      • readSymmetries

        private void readSymmetries()
                             throws java.lang.Exception
        Throws:
        java.lang.Exception
      • readSlaterBasis

        private void readSlaterBasis()
                              throws java.lang.Exception
        Throws:
        java.lang.Exception
      • readMolecularOrbitals

        private void readMolecularOrbitals​(java.lang.String sym)
                                    throws java.lang.Exception
        Throws:
        java.lang.Exception
      • addMo

        private void addMo​(java.lang.String sym,
                           int moPt,
                           float occ,
                           float energy)