Overview:
GUINEA evaluates vibrational energies and properties using explicitly summed
Rayleigh-Schroedinger type perturbation theory. Vibrational energies, transition
intensities, dipole moment corrections and harmonic derivatives may all be
calculated at the VPT2 (second-order) and VPT4 (fourth-order) levels of
perturbation theory. The numerical sums are written in such a way as to minimize
the number of unnecessary intermediate states generated. This formulation is
quite efficient, even for large numbers of modes (up to 24 modes have been
tested and such calculations may be run in real-time). GUINEA may also
explicitly form and diagonalize an effective Hamiltonian, followed by a
transformation of other quantities such as transition moments, which may
be useful for resonant systems. GUINEA uses for defining the necessary
operators the files generated by the xcubic program of CFOUR, e.g.
"quadratic", "cubic", "rota", "coriolis", etc. The files defining the
elecronic potential must be present, while the rotational files and dipole
moment files are optional, as are the main job archive files JOBARC/JAINDX.
GUINEA will optionally use the additional "didq" file for third- and
fourth-order Coriolis terms.
Input:
GUINEA accepts user input either from a file, such as with the syntax
"guinea < input_file", or interactively from the terminal. By default,
interactive sessions prefix input lines with a prompt, ">", for clarity, while
input from a file does not. Keywords are given one to a line, with any extra
input for that keyword on one or more additional lines. Blank lines are
ignored.
Keywords are grouped into two categories: "state commands" and
"action commands". State commands add to, remove from, or otherwise modify the
groups of states, called "sets", upon which the action commands act. A set may
have any number of states, although only 100 sets may exist at any one time. Each
set has its own settings for diagonalization, while the reference state and
temperature (used in the Boltzmann factor for hot bands) are shared among all
sets. Action commands then run the various calculations, or specify which
calculations to run later, on the states in the selected set.
Units:
- All energies are in wavenumber units (cm^{-1}).
- Intensities are in km/mol.
- Dipole moment corrections are in milli-Debye (mD).
- First harmonic derivatives are unitless, and second harmonic derivatives are
in reciprocal wavenumber units (cm).
Memory Management:
Unlike ACES2, GUINEA uses its own memory management in which segments are
allocated dynamically rather than from a common block. Total memory usage is
limited by a user-defined limit (default is unlimited). The current version may
have a few memory leaks and/or inconsistencies in the reported memory usage.
However, these should be slight enough as to not affect normal usage (unless
perhaps a huge number of states are shuffled in and out or the number of modes
is very very large).
Keywords:
This is a summary of all of the available keywords. If a keyword accepts
additional input, the syntax will be given. Note that when the summary for
a calculation is printed, states are listed in order of increasing energy, not
the order in which they were added to the set, and that states are sorted by
symmetry as they are added to a set. For diagonalized sets, the state printed
for each level is the dominant contribution the that level's eigenvector.
I. Global commands
print
- Sets the print verbosity level: 1 = display < 2 = interactive < 3 = full; interactive is the default for terminal input, and display is the default for input from a file.
print
[1,2,3]
OR
print
[display,interactive,full]
?print
- Lists the current print verbosity level.
relative
- Sets that printed energies should be relative to ground (i.e ZPVE is not included).
!relative
- Sets that printed energies should be absolute (i.e ZPVE is included).
?relative
- Lists whether printed energies are relative to ground.
freqformat
- Sets the format for printed frequencies.
freqformat
width.precision
intformat
- Sets the format for printed intensities.
intformat
width.precision
dipformat
- Sets the format for printed dipole moment corrections.
dipformat
width.precision
inttype
- Sets the type of transition intensities to print.
inttype
[total,cartesian,both]
diptype
- Sets the type of dipole moment corrections to print.
diptype
[total,cartesian,both]
memory
- Sets the maximum amount of memory to use, initially unlimited. The amount must be integer for byte amounts but may be floating point for larger units.
memory
n [in bytes, 0=unlimited]
OR
memory
n[KB,MB,GB]
?memory
- Lists the current memory limit and use.
polyad
- Define a polyad from a set of states given as a list of integers, one for each normal mode. Defined polyads can be included in subsequent definitions of states as if they were additional normal modes (listed in the order defined). A polyad definition may include previously defined polyads. Polyads may be used in any set.
polyad
n
p_1,1 p_1,2 ... p_1,m
p_2,1 p_2,2 ... p_2,m
...
p_n,1 p_n,2 ... p_n,m
!polyad
- Remove the specified polyad by index.
!polyad
i
?polyad
- List all currently defined polyads and their order.
reference
- Set the reference for hot bands.
reference
r_1 r_2 ... r_m
?reference
- List the reference for hot bands.
temp
- Sets the temperature for hot bands.
?temp
- Prints the temperature for hot bands.
adjfreq
- Adjusts a harmonic frequency empirically.
adjfreq
i
frequency
load
- Runs all of the commands in the given file.
load
filename
save
- Write a file containing all of the commands necessary to reproduce the current program state (excluding the output of any calculations or queries).
save
filename
done
- Bye-bye! (also "quit", "exit", "bye")
II. State commands
states
- Add all of the specified states to the current set. States are given as a list of integers, one for each normal mode (and optionally, each polyad).
states
n
s_1,1 s_1,2 ... s_1,m
s_2,1 s_2,2 ... s_2,m
...
s_n,1 s_n,2 ... s_n,m
!states
- Remove all of the specified states from the current set.
!states
n
s_1,1 s_1,2 ... s_1,m
s_2,1 s_2,2 ... s_2,m
...
s_n,1 s_n,2 ... s_n,m
?states
- List all of the states in the current set.
!indices
- Remove the states with the given indices from the current set.
!indices
n
i_1
i_2
...
i_n
combination
- Add all of the states from the given combination to the current set. This is all states with total number of quanta m in modes q_1 q_2 ... q_n. n=0 selects states with total number of quanta m in any mode
combination
m n
q_1 q_2 ... q_n
OR
combination
m 0
!combination
- Remove all of the states from the given combination from the current set. Same syntax as 'combination'.
!combination
m n
q_1 q_2 ... q_n
OR
!combination
m 0
copyset
- Add all states from the given set to the current set.
copyset
i
fermi
- Enables Fermi resonance terms in the effective Hamiltonian for the current set.
!fermi
- Disables Fermi resonance terms in the effective Hamiltonian for the current set.
?fermi
- Lists whether the current set includes Fermi resonance terms or not.
dd
- Enables Darling-Dennison resonance terms in the effective Hamiltonian for the current set.
!dd
- Disables Darling-Dennison resonance terms in the effective Hamiltonian for the current set.
?dd
- Lists whether the current set includes Darling-Dennison resonance terms or not.
diagonalize
- Enables diagonalization of the effective Hamiltonian for the current.
!diagonalize
- Disables diagonalization of the effective Hamiltonian for the current.
?diagonalize
- List whether the current set is diagonalized.
set
- Creates a new set.
setset
- Sets the current set.
setset
i
?set
- Lists basic information about all of the sets (does not list states).
!set
- Removes the given set, 0 for current set.
!set
i
copyset
- Copies all states from the specified set to the current set.
copyset
i
III. Action commands
vibration
- Set the calculation level for vibrational energies (default vpt2).
vibration
[harmonic,vpt2,vpt4]
?vibration
- List the current calculation level for vibrational energies.
intensity
- Set the calculation level for intensities (default off).
intensity
[off,harmonic,vpt2]
?intensity
- List the current calculation level for intensities.
dipole
- Set the calculation level for dipole moment corrections (default off).
dipole
[off,harmonic,vpt2]
?dipole
- List the current calculation level for dipole moment corrections.
harmderiv
- Runs a harmonic derivative calculation.
calc
- Runs the specified calculations on the current set.
?calc
- Lists which calculations are turned on.
Examples
Example 1 Input
Example 1 Output
(this example uses a quartic force field of water)
See Also
Calculation Of Anharmonic Force Fields