Gaussian
General Information
Versions and Platforms
Gaussian 16 | |
Operating Environments: | Linux |
Hardware | Linux Cluster, SuperMUC |
Producer | Gaussian Inc. Pittsburgh, USA& |
Overview of Functionality
Please see the following links for more information:
- Gaussian 16 Online Manual
- Gaussian 03 Users Reference Archive (outdated, since unsupported on LRZ's HPC systems)
- New Methods and Features in G09
Usage conditions and Licensing
- Gaussian may only be used for academic and teaching purposes; the license condition preclude using the software if you are directly or indirectly engaging in competition with GAUSSIAN.
- All scientific articles based on the usage of Gaussian must contain suitable citations.
- Gaussian software installed on LRZ HPC systems may only be used on these systems, and only after a user has obtained a group entry for the UNIX group "gaussian". Please contact LRZ HPC support to obtain such an entry, providing the account name.
How to operate the LRZ installations of Gaussian
Quite generally a number of releases of Gaussian may be available on any computing platform at any time. The modules package should be used to provide you with suitable environment settings for Gaussian.
module load gaussian
will provide you with the default version of Gaussian presently available. You can also load a specific version; a list of available versions is provided by the command
module apropos gaussian
(the module is in the applications class).
Loading the module will initialize environment variables needed for the operation of Gaussian as well as make suitable changes to your PATH
variable so as to find the Gaussian commands.
Available Gaussian Commands
The following table gives an overview of all commands available in the Gaussian package.
Note: If any of the utilities gives you a segmentation fault at execution, please
- check whether the input files were generated with the same version of Gaussian as the utility you are presently using,
- issue the command
ulimit -s unlimited (for sh, bash, ksh login shell) or limit stacksize unlimited
(for csh, tcsh login shell) before running the utility.
Command name | Function | Remarks |
---|---|---|
g16 <input_file> | Starts Gaussian 16 with | A Gaussian 16 module must be loaded |
gau-machine | outputs architecture | |
gau-fsplit | splits *.f Fortran source code into component modules | Usually only needed for build of Gaussian |
gau-cpp | preprocesses *.F Fortran source code | Usually only needed for build of Gaussian |
c8609 | Converts Gaussian 86,88,90,92,94,98,03 checkpoint file into a Gaussian 16 checkpoint file. | |
chkchk | Displays the route and title sections from a checkpoint file. Useful for determining the contents of random checkpoint files whose purpose has been forgotten and whose names are non-descriptive. It takes the name of the checkpoint file as its argument. | |
chkmove | Convert a checkpoint file to or from formatted form. Arguments: | |
cubegen | Gaussian offers a standalone utility for generating cubes from the data in a formatted checkpoint file. | |
cubman | This program manipulates density cubes as produced by Gaussian | |
formchk | Converts the data in a Gaussian 98 checkpoint file into a formatted form which is suitable for input into a variety of visualization software. | |
freqchk | This utility has two distinct modes of operations:
| |
freqmem | Give the user an estimate of the minimum amount of memory (in mega-words) for full efficiency (i.e., one pass) or frequency calculations. Usage: freqmem number-atoms numr-basis-func r/u c/d sp/d | |
gauopt | performs an optimization by repeatedly executing Gaussian. In this way, any parameter in the input stream may be optimized. Input for gauopt consists of a template file, in which certain fields are replaced with variables whose values are to be optimized. | |
ham506 | This program generates averaged Hamiltonians in the format expected for link 506. | |
mm | Standalone Molecular Mechanics Program | Gaussian 03 only. |
newzmat | This program converts molecular geometry specifications between different formats, as specified on the command line. | |
testrt | This program takes a standard Gaussian 98 route as input and produces the equivalent nonstandard route. | |
unfchk | This utility is the opposite number to formchk. It converts a formatted checkpoint file to a binary checkpoint file, in a format appropriate to the local computer system. |
Platform-specific Notes
Linux Cluster
Gaussian can use all processors of a SMP or NUMA shared memory node, or can run sequentially using 1 CPU of a serial processing node. If a SMP Job is submitted, it is necessary to specify the number of processors to be used in the Link 0 section of the input file, for example:
%NProcshared=8
Please check out the job scripts (SGE / SLURM) below and select a suitable one depending on the system you intend to run on.
SuperMUC
On the fat nodes, up to 40 cores can be used; depending on the scalability of your particular problem you may need to specify a number smaller than 40 for %NProcshared in your input.
- It is recommended to explicitly specify a
%Mem
entry in the Link 0 section of your input file since the default setting are so low that the program will often reduce the number of processors for parallel processing. You will need to experiment a bit to find the right setting for your problem, but 300-500 MByte (or 40-60 MWords) per core should be a good start.
On SuperMUC, you need to use a LoadLeveler job script; see below for an example script
Location of scratch directories
On the Linux systems, the scratch directory referenced in the variable $GAUSS_SCRDIR
is generated dynamically below the $OPT_TMP
directory via a mktemp
issued with the load of the environment module.
Submission of Gaussian batch jobs
This section provides some example batch job scripts for use on the various HPC platforms at LRZ.
Linux Cluster
Serial processing using SLURM (only | |
Serial shared memory job on the Cluster | |
---|---|
#!/bin/bash #SBATCH -o ./%x.%j.%N.out #SBATCH -D ./ #SBATCH -J <job_name> #SBATCH --get-user-env #SBATCH --clusters=cm2_tiny | |
Parallel processing ( | |
CooLMUC2 | MPP3 Cluster |
|
module load gaussian # configure up to 16 threads in input file g16 my_inputfile.com |
Parallel processing on SuperMUC-NG using SLURM | |
#!/bin/bash |
Documentation
Gaussian Documentation on the World Wide Web
- Gaussian Inc, Homepage. From here the online manual linked above can also be reached.
- The Absolute Beginners Guide to Gaussian
- Dr. Carlos Sosa's (IBM) page on Gaussian
Support
The Leibniz Computing Center has the possibility of accessing Gaussian Inc. for support if there is any technical difficulty with the software. Please contact the LRZ HPC support group if you experience any problems with Gaussian or have any questions on the usage of this application.