Gaussian

From ScientificComputing
Jump to: navigation, search

Please note that this application page is referring to the old CentOS software stack which is obsolete and does not work any more with the new Ubuntu setup. You can find an overview on the Ubuntu software stack on this wiki page.

Category

Chemistry, Quantum chemistry, DFT

Description

Gaussian computational chemistry software initially released in 1970 by John Pople and his research group at Carnegie-Mellon University. It is used for electronic structure optimization and for the calculation of atomic and molecular properties.

Available versions (Euler, old software stack)

Legacy versions Supported versions New versions
09d1, 09d1_nbo31

Please note that this page refers to installations from the old software stack. There are two software stacks on Euler. Newer versions of software are found in the new software stack.

Environment modules (Euler, old software stack)

Version Module load command Additional modules loaded automatically
09d1 module load gaussian/09d1
09d1_nbo31 module load gaussian/09d1_nbo31


This module works only if you are authorized to use Gaussian on Euler. If not, you will get an error:

ERROR: You are not authorized to use Gaussian on Euler.
       Please contact 'cluster-support@id.ethz.ch' for assistance.

Only after you have agreed to the license agreement, we can add you to the Gaussian user group on Euler.

Please note that this page refers to installations from the old software stack. There are two software stacks on Euler. Newer versions of software are found in the new software stack.

How to submit a job

You can submit a Gaussian computation for the input file test000.com in batch mode with the following command.
sbatch [Slurm options] --tmp=500 --wrap="g09 test000"

The results of the simulation will be stored in a file called test000.log. Here you need to replace [Slurm options] with Slurm parameters for the resource requirements of the job. Please find a documentation about the parameters of sbatch on the wiki page about the batch system. Please note that you need to request scratch space in any case. The batch system automatically sets

GAUSS_SCRDIR=$TMPDIR
which forces Gaussian to write temporary file during the calculation into the local scratch of the compute node. Using a local scratch directory offers some significant advantages, as for instance there is no risk to fill up your home directory and you get a very high I/O performance.

Parallel jobs

You can run Gaussian jobs in parallel using the shared-memory model only. Distributed memory is not supported because Linda, the tool used by Gaussian to distribute a computation over multiple nodes, is not available. In order to run a Gaussian computation in parallel on N CPUs, you need to specify the number of cores in the Gaussian input file. Please note that the memory size indicated in Gaussian's input file is for the whole computation, whereas the size indicated in the bsub command is per CPU. This difference does not matter if you are using only one CPU. However, if you are doing a parallel computation, you must adjust the size accordingly. Let's assume that your computation needs 4 CPUs and 8 GB (8192 MB) of memory:
%NProcShared=4
%Mem=8192MB

You should therefore request 8192 MB / 4 CPUs + 25% safety margin = 2560 MB / CPU, hence:

bsub -n 4 -R "rusage[mem=2560]" ...

Example

As a test case, we run a single point calculation for a water molecule using the Hartree-Fock method.
[leonhard@euler04 gaussian]$ cat test000.com 
# SP, RHF/STO-3G punch=archive trakio scf=conventional

Gaussian Test Job 00
Water with archiving

0 1
O
H 1 0.96
H 1 0.96 2 109.471221

[leonhard@euler04 gaussian]$ module load gaussian/09d1
[leonhard@euler04 gaussian]$ bsub -n 1 -W 1:00 -R "rusage[mem=512,scratch=2048]" g09 test000
Gaussian job.
Job <25727915> is submitted to queue <normal.4h>.
[leonhard@euler04 gaussian]$ bjobs
JOBID      USER     STAT  QUEUE      FROM_HOST   EXEC_HOST   JOB_NAME   SUBMIT_TIME
25727915   leonhard PEND  normal.4h  euler04                 *9 test000 Aug 25 10:45
[leonhard@euler04 gaussian]$ bjobs
JOBID      USER     STAT  QUEUE      FROM_HOST   EXEC_HOST   JOB_NAME   SUBMIT_TIME
25727915   leonhard RUN   normal.4h  euler04     e1256       *9 test000 Aug 25 10:45
[leonhard@euler04 gaussian]$ bjobs
No unfinished job found
[leonhard@euler04 gaussian]$ grep "E(RHF)" test000.log 
 SCF Done:  E(RHF) =  -74.9607232756     A.U. after    7 cycles

The energy is specified in atomic units (1 Hartree = 2625.49962 kJ/mol).

-74.9607232756 A.U. = 196809.35 kJ/mol
More information about atomic units can be found in the IUPAC gold book.

License information

Commercial (centrally provided by IT shop).

The use of Gaussian is subject to the following conditions (this is just a summary; the license agreement is several pages long):

Warning -- This program may not be used in any manner that
competes with the business of Gaussian, Inc. or will provide
assistance to any competitor of Gaussian, Inc.  The licensee
of this program is prohibited from giving any competitor of
Gaussian, Inc. access to this program.  By using this program,
the user acknowledges that Gaussian, Inc. is engaged in the
business of creating and licensing software in the field of
computational chemistry and represents and warrants to the
licensee that it is not a competitor of Gaussian, Inc. and that
it will not use this program in any manner prohibited above.

If you want to use Gaussian, you can use on the cluster:

get-access gaussian

Notes

The license conditions of Gaussian have caused some controversy, not least because the company Gaussian, Inc. has taken the unusual step of banning individuals (including the noble price winner and original author of the first version of the software, John Pople) and organizations that did not respect them. You will find the arguments of banned users here and the response of Gaussian, Inc. here. Since we have no intention to get drawn into a legal dispute, access to Gaussian is restricted to people who have explicitly accepted the conditions above. If you want to use Gaussian, simply send a note to cluster support stating that you accept these conditions.

Links

Using Gaussian on Euler

http://www.gaussian.com
https://en.wikipedia.org/wiki/Gaussian_(software)
http://www.bannedbygaussian.org/