next up previous contents
Next: Specifying the Type of Up: PSI3 Input Files Previous: PSI3 Input Files   Contents


Syntax

PSI3 input files are case-insensitive and free-format, with a grammar designed for maximum flexibility and relative simplicity. Input values are assigned using the structure:
keyword = value
where keyword is the parameter chosen (e.g., convergence) and value has one of the following data types: Note that the input parsing system is general enough to allow multidimensional arrays, with elements of more than one data type. A good example is the z-matrix keyword:
zmat = (
  (O)
  (H 1 r)
  (H 1 r 2 a)
)
For z-matrices, z-matrix variables, and Cartesian coordinates, it is also possible to discard the inner parentheses. The following is equivalent in this case:
zmat = (
  O
  H 1 r
  H 1 r 2 a
)

Keywords must grouped together in blocks, based on the module or modules that require them. The default block is labelled psi:, and most users will require only a psi: block when using PSI3. For example, the following is a simple input file for a single-point CCSD energy calculation on H$_2$O:

psi: (
  label = "6-31G**/CCSD H2O"
  wfn = ccsd
  reference = rhf
  jobtype = sp
  basis = "6-31G**"
  zmat = (
     O
     H 1 r 
     H 1 r 2 a 
  )
  zvars = (
     r 1.0 
     a 104.5 
  )
)
In this example, the psi: identifier collects all the keywords (of varying types) together. Every PSI3 module will have access to every keyword in the psi: block by default. One may use other identifiers (e.g., ccenergy:) to separate certain keywords to be used only by selected modules. For example, consider the keyword convergence, which is used by several PSI3 modules to determine the convergence criteria for constructing various types of wave functions. If one wanted to use a high convergence cutoff for the PSI3 SCF module but a lower cutoff for the coupled cluster module, one could modify the above input:
psi: (
  ...
  convergence = 7
)
scf:convergence = 12
Note that, since we have only one keyword associated with the scf: block, we do not need to enclose it parentheses.

Some additional aspects of the PSI3 grammar to keep in mind:


next up previous contents
Next: Specifying the Type of Up: PSI3 Input Files Previous: PSI3 Input Files   Contents
T. Daniel Crawford 2009-02-16