Dr. Jason L. Sonnenberg > Chemistry-ESPT > lib/Chemistry/ESPT/Conventions.pod


Annotate this POD

View/Report Bugs

ESPT Programming Conventions ^



All atoms are stored as atomic symbols. If the atomic number is required use the atomconvert method at that time.


In fchk files, always use Total energy as the EELEC.

File contents:

Each ESS file is assumed to contain the results from only one calculation unless the calculation was an Opt Freq run.


All ESPT objects must conform to the use strict and use warnings pragmas.

Loops & counters:

Use scalar(@array) or $#array rather than counters when at all possible. If a counter must be employed use the generic $counter rather than creating a new variable.

MO Occupations

All MO occupations are stored as 0, 1, 2, or a real number for fractional values. Conversion to more chemical values such as "Occ." or "Virt." should be done elsewhere.

Object data:

Each ESPT object is a Hash. Each Hash key should contain either a scalar value or a tensor of scalar values. Hashes of Hashes should be avoided as this requires significant modification to the get routine.


All values are stored internally in atomic units with the exception of coordinates, which are stored in angstroms. Unit conversion should be done in the program employing ESPT modules.

syntax highlighting: