resultsFile 2.4
Module for reading output files of quantum chemistry codes.
Keywords: quantum chemistry,GAMESS,Gaussian

# resultsFile
Python interface to read output files of quantum chemistry programs

To add a module to read a new kind of output file, just add a file 
in the `Modules` directory.



# Using the library

Example (`resultsFile` is supposed to be in your `sys.path`):

``` Python
import resultsFile 

file = resultsFile.getFile("g09_output.log")
print('recognized as', str(file).split('.')[-1].split()[0])
print(file.mo_sets)

```

## Constraints

### Gaussian09

* `GFPRINT`  : Needed to read the AO basis set
* `pop=Full` : Needed to read all the MOs
* `#p CAS(SlaterDet)` : CAS-SCI CI coefficients

When doing a CAS with Gaussian, first do the Hartree-Fock calculation saving the checkpoint
file and then do the CAS in a second calculation.


### GAMESS-US

For MCSCF calculations, first compute the MCSCF single-point wave function with
the GUGA algorithm. Then, put the the MCSCF orbitals (of the `.dat` file) in
the GAMESS input file, and run a single-point GUGA CI calculation with the
following keywords:

* `PRTTOL=0.0001` in the `$GUGDIA` group to use a threshold of 1.E-4 on the CI coefficients
* `NPRT=2` in the `$CIDRT` group to print the CSF expansions in terms of Slater determinants
* `PRTMO=.T.` in the `$GUESS` group to print the molecular orbitals

### Molpro (deprecated)

* `print, basis;` :  Needed to read the AO basis set
* `gprint,orbital;` : Needed to read the MOs
* `gprint,civector; gthresh,printci=0.;` : Needed to read the CI coefficients
* `orbprint` : Ensures all the MOs are printed

An RHF calculation is mandatory before any MCSCF calculation, since some
information is printed only the RHF section. Be sure to print *all* molecular
orbitals using the `orbprint` keyword, and to use the same spin multiplicity
and charge between the RHF and the CAS.


# Debugging

Any module can be run as an stand-alone executable. For example:

```
$ resultsFile/Modules/gamessFile.py

    resultsFile version 1.0, Copyright (C) 2007 Anthony SCEMAMA
    resultsFile comes with ABSOLUTELY NO WARRANTY; for details see the
    gpl-license file.
    This is free software, and you are welcome to redistribute it
    under certain conditions; for details see the gpl-license file.

Usage:
------

resultsFile/Modules/gamessFile.py [options] file

Options:
--------

  --date                      :  When the calculation was performed.
  --version                   :  Version of the code generating the file.
  --machine                   :  Machine where the calculation was run.
  --memory                    :  Requested memory for the calculation.
  --disk                      :  Requested disk space for the calculation.
  --cpu_time                  :  CPU time.
  --author                    :  Who ran the calculation.
  --title                     :  Title of the run.
  --units                     :  Units for the geometry (au or angstroms).
  --methods                   :  List of calculation methods.
  --options                   :  Options given in the input file.
  --spin_restrict             :  Open-shell or closed-shell calculations.
  --conv_threshs              :  List of convergence thresholds.
  --energies                  :  List of energies.
  --one_e_energies            :  List of one electron energies.
  --two_e_energies            :  List of two electron energies.
  --ee_pot_energies           :  List of electron-electron potential energies.
  --Ne_pot_energies           :  List of nucleus-electron potential energies.
  --pot_energies              :  List of potential energies.
  --kin_energies              :  List of kinetic energies.
  --virials                   :  Virial ratios.
  --point_group               :  Symmetry used.
  --num_elec                  :  Number of electrons.
  --charge                    :  Charge of the system.
  --multiplicity              :  Spin multiplicity of the system.
  --nuclear_energy            :  Repulsion of the nuclei.
  --dipole                    :  Dipole moment
  --geometry                  :  Atom types and coordinates.
  --basis                     :  Basis set definition
  --mo_sets                   :  List of molecular orbitals
  --mo_types                  :  Types of molecular orbitals (canonical, natural,...)
  --mulliken_mo               :  Mulliken atomic population in each MO.
  --mulliken_ao               :  Mulliken atomic population in each AO.
  --mulliken_atom             :  Mulliken atomic population.
  --lowdin_ao                 :  Lowdin atomic population in each AO.
  --mulliken_atom             :  Mulliken atomic population.
  --lowdin_atom               :  Lowdin atomic population.
  --two_e_int_ao              :  Two electron integrals in AO basis
  --determinants              :  List of Determinants
  --num_alpha                 :  Number of Alpha electrons.
  --num_beta                  :  Number of Beta electrons.
  --closed_mos                :  Closed shell molecular orbitals
  --active_mos                :  Active molecular orbitals
  --virtual_mos               :  Virtual molecular orbitals
  --determinants_mo_type      :  MO type of the determinants
  --det_coefficients          :  Coefficients of the determinants
  --csf_mo_type               :  MO type of the determinants
  --csf_coefficients          :  Coefficients of the CSFs
  --symmetries                :  Irreducible representations
  --occ_num                   :  Occupation numbers
  --csf                       :  List of Configuration State Functions
  --num_states                :  Number of electronic states
  --two_e_int_ao_filename     :  
  --one_e_int_ao_filename     :  
  --atom_to_ao_range          :  
  --gradient_energy           :  Gradient of the Energy wrt nucl coord.
  --text                      :  
  --uncontracted_basis        :  
  --uncontracted_mo_sets      :  

```