Skip to content

GAMESS 2023-02-01 User Guide

Overview

GAMESS (General Atomic and Molecular Electronic Structure System) is a comprehensive quantum chemistry package for ab initio molecular electronic structure calculations. GAMESS can perform a wide variety of calculations including Hartree-Fock (RHF, ROHF, UHF, GVB), DFT, MP2, CCSD(T), MCSCF, CI, and other methods.

Version: 2023-02-01 (February 1, 2023 R1) Category: Computational Chemistry Official Documentation: https://www.msg.chem.iastate.edu/gamess/

Note: This is not the latest version. GAMESS 2024 R2 (July 2024) is available. Contact your system administrator if you need the newer version.

Loading the Module

module load gamess/2023-02-01

Check loaded environment:

module list
which rungms
echo $GAMESS_HOME

Main Command

rungms

The primary command to run GAMESS calculations.

Syntax:

rungms input [version] [nprocs] [>& output]

Arguments: - input: Input file name (with or without .inp extension) - version: Version number (usually "00" for default build) - nprocs: Number of processors to use (default: 1) - output: Output file (redirect with >& output.log)

Example:

rungms water.inp 00 4 >& water.log

This runs water.inp using version 00 (default) with 4 processors, saving output to water.log.

Input File Format

GAMESS input files consist of different sections (groups) enclosed in $GROUP ... $END delimiters.

Basic Input Structure

! Water molecule single point energy calculation
 $CONTRL SCFTYP=RHF RUNTYP=ENERGY $END
 $SYSTEM TIMLIM=525600 MEMORY=1000000 $END
 $BASIS  GBASIS=N31 NGAUSS=6 NDFUNC=1 $END
 $DATA
Water molecule
C1
O     8.0   0.0   0.0   0.0
H     1.0   0.0   0.757   0.586
H     1.0   0.0  -0.757   0.586
 $END

Key Input Groups

$CONTRL - Control Parameters

$CONTRL
  SCFTYP=RHF        ! SCF type: RHF, ROHF, UHF, MCSCF, GVB
  RUNTYP=ENERGY     ! Run type: ENERGY, OPTIMIZE, SADPOINT, SURFACE, etc.
  COORD=UNIQUE      ! Coordinate type
  ICHARG=0          ! Total molecular charge
  MULT=1            ! Spin multiplicity
$END

$SYSTEM - System Resources

$SYSTEM
  TIMLIM=525600     ! Time limit in minutes (525600 = 1 year)
  MEMORY=1000000    ! Memory in words (1 word = 8 bytes)
  MEMDDI=0          ! Distributed memory in MB (0 = auto)
$END

$BASIS - Basis Set

$BASIS
  GBASIS=N31        ! Basis set: STO, N21, N31, N311, DZV, TZV, etc.
  NGAUSS=6          ! Number of Gaussians
  NDFUNC=1          ! Number of d polarization functions
  NPFUNC=0          ! Number of p polarization functions (on H)
$END

Or use predefined basis sets:

$BASIS  GBASIS=CCT $END  ! cc-pVTZ
$BASIS  GBASIS=ACCT $END ! aug-cc-pVTZ

$DATA - Geometry

$DATA
Title line
Point group (C1, Cs, Ci, C2, C2v, etc.)
Atom  Charge  X  Y  Z
...
$END

Common Calculation Types

Single Point Energy

$CONTRL SCFTYP=RHF RUNTYP=ENERGY $END

Geometry Optimization

$CONTRL SCFTYP=RHF RUNTYP=OPTIMIZE $END
$STATPT OPTTOL=0.0001 NSTEP=50 $END

Frequency Calculation

$CONTRL SCFTYP=RHF RUNTYP=HESSIAN $END
$FORCE  METHOD=ANALYTIC $END

DFT Calculation

$CONTRL SCFTYP=RHF RUNTYP=ENERGY DFTTYP=B3LYP $END

MP2 Energy

$CONTRL SCFTYP=RHF RUNTYP=ENERGY MPLEVL=2 $END

CCSD(T)

$CONTRL SCFTYP=RHF RUNTYP=ENERGY CCTYP=CCSD(T) $END

TDDFT (Excited States)

$CONTRL SCFTYP=RHF RUNTYP=ENERGY TDDFT=EXCITE DFTTYP=B3LYP $END
$TDDFT  NSTATE=10 $END

Running on the Cluster

Interactive Job (Testing)

srun --nodes=1 --cpus-per-task=4 --mem=8G --time=1:00:00 --pty bash

module load gamess/2023-02-01

# Set scratch directory
export SCR=$TMPDIR
export USERSCR=$TMPDIR

rungms water.inp 00 4 >& water.log

Serial Job (1 core)

Create gamess_serial.sh:

#!/bin/bash
#SBATCH --job-name=gamess
#SBATCH --output=gamess_%j.out
#SBATCH --error=gamess_%j.err
#SBATCH --nodes=1
#SBATCH --cpus-per-task=1
#SBATCH --mem=4G
#SBATCH --time=4:00:00

module purge
module load gamess/2023-02-01

# Use Slurm temporary directory
export SCR=$TMPDIR
export USERSCR=$TMPDIR

INPUT="water"

rungms ${INPUT}.inp 00 1 >& ${INPUT}.log

echo "GAMESS calculation completed"

Parallel SMP Job (Shared Memory)

Create gamess_smp.sh:

#!/bin/bash
#SBATCH --job-name=gamess_smp
#SBATCH --output=gamess_%j.out
#SBATCH --error=gamess_%j.err
#SBATCH --nodes=1
#SBATCH --cpus-per-task=16
#SBATCH --mem=32G
#SBATCH --time=24:00:00

module purge
module load gamess/2023-02-01

# Use Slurm temporary directory
export SCR=$TMPDIR
export USERSCR=$TMPDIR

INPUT="molecule"
NCPUS=${SLURM_CPUS_PER_TASK}

echo "Running GAMESS with ${NCPUS} cores"

rungms ${INPUT}.inp 00 ${NCPUS} >& ${INPUT}.log

echo "GAMESS calculation completed"

Submit:

sbatch gamess_smp.sh

DDI Parallel Job (Distributed Memory)

For multi-node calculations, GAMESS uses DDI (Distributed Data Interface):

#!/bin/bash
#SBATCH --job-name=gamess_ddi
#SBATCH --output=gamess_%j.out
#SBATCH --error=gamess_%j.err
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=16
#SBATCH --mem-per-cpu=2G
#SBATCH --time=24:00:00

module purge
module load gamess/2023-02-01

export SCR=$TMPDIR
export USERSCR=$TMPDIR

INPUT="large_molecule"

# Calculate total number of processors
NPROCS=$((SLURM_NNODES * SLURM_NTASKS_PER_NODE))

echo "Running GAMESS with ${NPROCS} cores across ${SLURM_NNODES} nodes"

rungms ${INPUT}.inp 00 ${NPROCS} >& ${INPUT}.log

echo "GAMESS calculation completed"

Note: DDI job requires proper rungms configuration. Check with your system administrator.

Scratch Space and Memory

Scratch Directories

GAMESS generates temporary files during calculation. Set these environment variables:

export SCR=$TMPDIR        # Main scratch directory
export USERSCR=$TMPDIR    # User scratch directory

In Slurm jobs, $TMPDIR is automatically set to node-local fast storage.

Memory Requirements

Set memory in input file ($SYSTEM group):

$SYSTEM
  MEMORY=1000000    ! 1,000,000 words = 8 GB
$END

Memory allocation: - 1 word = 8 bytes - 1 GB = 125,000,000 words / 8 = 125000 words (in thousands) - 8 GB = 1,000,000 words (typical setting)

Best practice: Request 10-20% more memory in Slurm than specified in input file.

Output Files

GAMESS produces several files:

  • input.log: Main output file with all calculation results
  • input.dat: Punch file with final geometry, orbitals, etc.
  • input.trj: Trajectory file (for optimization/IRC)
  • input.rst: Restart file
  • input.efp: Effective fragment potential file
  • input.F##: Temporary scratch files (usually deleted)

Important Output Sections

Energy:

          FINAL RHF ENERGY IS     -76.0098830284 AFTER   9 ITERATIONS

Optimized Geometry:

ATOM      ATOMIC                      COORDINATES (BOHR)
          CHARGE         X                   Y                   Z

Frequencies:

FREQUENCY:        1652.03      3810.23      3941.06 CM-1

Example Calculations

Example 1: Water Optimization with Frequencies

! Water optimization + frequencies
 $CONTRL SCFTYP=RHF RUNTYP=OPTIMIZE $END
 $SYSTEM TIMLIM=525600 MEMORY=1000000 $END
 $BASIS  GBASIS=N31 NGAUSS=6 NDFUNC=1 $END
 $STATPT OPTTOL=0.0001 NSTEP=50 $END
 $DATA
Water molecule optimization
C2v
O     8.0   0.0        0.0        0.0
H     1.0   0.757      0.0        0.586
 $END

After optimization completes, run frequencies:

! Use optimized geometry from .dat file
 $CONTRL SCFTYP=RHF RUNTYP=HESSIAN $END
 $SYSTEM TIMLIM=525600 MEMORY=1000000 $END
 $BASIS  GBASIS=N31 NGAUSS=6 NDFUNC=1 $END
 $DATA
Water frequencies
C2v
! Copy optimized geometry here
O     8.0   0.0        0.0        0.0
H     1.0   0.757      0.0        0.586
 $END

Example 2: DFT Optimization (B3LYP)

! Ethanol optimization with B3LYP/6-31G(d)
 $CONTRL SCFTYP=RHF RUNTYP=OPTIMIZE DFTTYP=B3LYP $END
 $SYSTEM TIMLIM=525600 MEMORY=2000000 $END
 $BASIS  GBASIS=N31 NGAUSS=6 NDFUNC=1 $END
 $STATPT OPTTOL=0.0001 NSTEP=100 $END
 $DATA
Ethanol
C1
C     6.0   0.0        0.0        0.0
C     6.0   1.522      0.0        0.0
O     8.0   2.098      1.297      0.0
H     1.0  -0.365      0.516      0.889
H     1.0  -0.365     -1.026      0.0
H     1.0  -0.365      0.516     -0.889
H     1.0   1.888     -0.516      0.889
H     1.0   1.888     -0.516     -0.889
H     1.0   2.841      1.297      0.0
 $END

Example 3: TDDFT Excited States

! Formaldehyde excited states with TDDFT
 $CONTRL SCFTYP=RHF RUNTYP=ENERGY TDDFT=EXCITE DFTTYP=B3LYP $END
 $SYSTEM TIMLIM=525600 MEMORY=2000000 $END
 $BASIS  GBASIS=CCT $END
 $TDDFT  NSTATE=10 MULT=1 $END
 $DATA
Formaldehyde excited states
C2v
C     6.0   0.0        0.0        0.0
O     8.0   0.0        0.0        1.220
H     1.0   0.930      0.0       -0.596
H     1.0  -0.930      0.0       -0.596
 $END

Troubleshooting

"EXECUTION OF GAMESS TERMINATED ABNORMALLY"

  • Check input file syntax
  • Check memory allocation
  • Review error messages in .log file
  • Look for "FATAL ERROR" or "ERROR TERMINATION"

Insufficient Memory

Error: "MEMORY REQUEST EXCEEDS AVAILABLE MEMORY" - Increase MEMORY in $SYSTEM group - Request more memory in Slurm script - Use distributed memory (MEMDDI)

SCF Convergence Failure

Error: "SCF HAS NOT CONVERGED" - Try different initial guess: $GUESS GUESS=HUCKEL $END - Adjust convergence criteria: $SCF CONV=1.0E-05 $END - Use DIIS: $SCF DIIS=.TRUE. $END - Try damping: $SCF DAMP=.TRUE. DAMPCUT=0.5 $END

Geometry Optimization Not Converging

  • Increase NSTEP in $STATPT
  • Relax convergence: OPTTOL=0.001
  • Check for problematic coordinates
  • Try different optimization method

DDI Communication Errors

  • Check network connectivity
  • Verify rungms script configuration
  • Ensure firewall allows DDI communication
  • Contact system administrator

Scratch Space Issues

Error: "INSUFFICIENT DISK SPACE" - Check disk space: df -h $TMPDIR - Clean up old scratch files - Request more scratch space - Use EXETYP=CHECK for disk estimate

Best Practices

  1. Always test with small basis sets first (STO-3G, 3-21G) before using large bases
  2. Use appropriate point group symmetry to reduce computational cost
  3. Set realistic TIMLIM in $SYSTEM (consider Slurm time limit)
  4. Monitor disk space - GAMESS can generate large scratch files
  5. Save .dat files - they contain restart information and optimized geometries
  6. Check convergence in output: energy, gradient, geometry changes
  7. Use $TMPDIR for scratch space in Slurm jobs
  8. For large calculations, estimate resources with small test jobs
  9. Document your calculations - save input, output, and key parameters
  10. Keep input files simple - complexity makes debugging harder

Memory and Disk Estimation

Memory Formula

Rough estimate for RHF/DFT: - Memory (GB) ≈ (Number of basis functions)² × 8 bytes / 10⁹

For 200 basis functions: ~200² × 8 / 10⁹ = 0.32 GB

Post-HF methods (MP2, CCSD) require significantly more memory.

Disk Space Formula

Rough estimate: - Disk (GB) ≈ Memory (GB) × 10 to 50

Large MCSCF/CI calculations can require 100+ GB of scratch space.

Useful Resources

Documentation Files

ls $GAMESS_HOME/docs-*.txt
  • docs-intro.txt: Introduction and overview
  • docs-input.txt: Complete input documentation
  • docs-prog.txt: Programmer's guide
  • docs-refs.txt: Literature references

Online Resources

  • Official Website: https://www.msg.chem.iastate.edu/gamess/
  • Documentation: https://www.msg.chem.iastate.edu/gamess/documentation.html
  • Mailing List: gamess-list@lists.simulations.iastate.edu
  • Input Examples: $GAMESS_HOME/tests/

Citing GAMESS

If you publish results obtained with GAMESS, please cite:

"General Atomic and Molecular Electronic Structure System" M.W.Schmidt, K.K.Baldridge, J.A.Boatz, S.T.Elbert, M.S.Gordon, J.H.Jensen, S.Koseki, N.Matsunaga, K.A.Nguyen, S.J.Su, T.L.Windus, M.Dupuis, J.A.Montgomery J. Comput. Chem. 14, 1347-1363 (1993)

Additional citations may be required for specific methods used.

Support

  • Local Support: Contact your cluster system administrators
  • GAMESS Forum: https://groups.google.com/g/gamess
  • Documentation: Check $GAMESS_HOME/docs-*.txt files
  • Test Cases: Run test cases in $GAMESS_HOME/tests/ directory

Version History

  • 2023-02-01 (Current on this cluster): February 1, 2023 R1 release
  • 2024 R2 (Latest available): July 15, 2024 release - contact admins for installation

See official website for complete release history and changes.


Installation Location: /sw/gamess/2023-02-01 Module File: /opt/modulefiles/gamess/2023-02-01.lua Executables: gamess.00.x (version 00) Run Script: rungms Last Updated: 2025-10-12