You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
Version 1
Next »
Purpose: electronic structure calculations
Latest version: Gaussian 09 E.01
Availability: all machines
Licence: closed-source
Documentation: User's Reference
Description
Gaussian is a program implementing a variety of computational chemistry methods.
The range of computational methods includes molecular mechanics, semi-empirical methods, Hartree-Fock SCF, Møller-Plesset perturbation theory, DFT methods, QM/MM calculations, CI methods and CC calculations. Calculations employing these methods can be carried out in order to optimise molecular geometry, electronic structure and derived chemical properties.
A more detailed description can be found here.
Gaussian operates under a closed-source licence. Please visit this page for information about Gaussian licences.
Available Versions
The currently available versions of Gaussian in our facilities are:
Version | Wrapper |
---|
Gaussian 03 rev. D.02 | g03d2 |
Gaussian 03 rev. E.01 | g03e1 |
Gaussian 09 rev. A.02 | g09a2 |
Gaussian 09 rev. B.01 | g09b1 |
Gaussian 09 rev. C.01 | g09c1 |
Gaussian 09 rev. D.01 | g09d1 |
Gaussian 09 rev. E.01 | g09e1 |
More detailed information on versions can be found here.
Invoke the wrapper using the following syntax in the body of your script:
g09e1 input.com output.out
Benchmark
Gaussian 09 rev. D.01 benchmark at Pirineus: actual speed-up (green) and ideal speed-up (blue) vs. number of cores for an averaged set of calculations (Pople basis functions, HF and DFT, single-point and optimisation).
LSF example script: g09e1
#!/bin/bash
# IMPORTANT NOTICE: replace email address, job name
# and working directories with your own info
##
# BSUB -J jobname # as appears in the LSF queuing system
# BSUB -o jobname.log # send standard output here
# BSUB -e jobname.err # send error output here
#
# Pick a queue
# BSUB -q short
#
# Send an email notice once the job is finished
# BSUB -N -u youremail@wherever
#
# Indicate the number of cores
# BSUB -n 4
# Note that this option *overrides* the %NProcShared directive
# in the Gaussian input file
#
# Pick the machine
# span[hosts=1] ensures that Gaussian is run in shared-memory fashion
# BSUB -R "collserola span[hosts=1]"
date
cp input.com $TMPDIR
cd $TMPDIR
# Syntax of the Gaussian command is
# g09e1 [path/]inputfile [path/]outputfile
g09e1 input.com output.out
cp output.out $HOME
date
Place the appropriate LSF script in a file (for instance gaussian.lsf) and submit the job with the command
Older versions:
g09d1
#!/bin/bash
# IMPORTANT NOTICE: replace email address, job name
# and working directories with your own info
##
# BSUB -J jobname # as appears in the LSF queuing system
# BSUB -o jobname.log # send standard output here
# BSUB -e jobname.err # send error output here
#
# Pick a queue
# BSUB -q test
#
# Send an email notice once the job is finished
# BSUB -N -u youremail@wherever
#
# Indicate the number of cores
# BSUB -n 4
# Note that this option *overrides* the %NProcShared directive
# in the Gaussian input file
#
# Pick the machine
# span[hosts=1] ensures that Gaussian is run in shared-memory fashion
# BSUB -R "collserola select[g09d1] span[hosts=1]"
date
cp input.com $TMPDIR
cd $TMPDIR
# Syntax of the Gaussian command is
# g09d1 [path/]inputfile [path/]outputfile
g09d1 input.com output.out
cp output.out $HOME
date
g09c1
#!/bin/bash
# IMPORTANT NOTICE: replace email address, job name
# and working directories with your own info
##
# BSUB -J jobname # as appears in the LSF queuing system
# BSUB -o jobname.log # send standard output here
# BSUB -e jobname.err # send error output here
#
# Pick a queue
# BSUB -q test
#
# Send an email notice once the job is finished
# BSUB -N -u youremail@wherever
#
# Indicate the number of cores
# BSUB -n 4
# Note that this option *overrides* the %NProcShared directive
# in the Gaussian input file
#
# Pick the machine
# span[hosts=1] ensures that Gaussian is run in shared-memory fashion
# BSUB -R "collserola select[g09c1] span[hosts=1]"
date
cp input.com $TMPDIR
cd $TMPDIR
# Syntax of the Gaussian command is
# g09c1 [path/]inputfile [path/]outputfile
g09c1 input.com output.out
cp output.out $HOME
date
g09b1
#!/bin/bash
# IMPORTANT NOTICE: replace email address, job name
# and working directories with your own info
##
# BSUB -J jobname # as appears in the LSF queuing system
# BSUB -o jobname.log # send standard output here
# BSUB -e jobname.err # send error output here
#
# Pick a queue
# BSUB -q test
#
# Send an email notice once the job is finished
# BSUB -N -u youremail@wherever
#
# Indicate the number of cores
# BSUB -n 4
# Note that this option *overrides* the %NProcShared directive
# in the Gaussian input file
#
# Pick the machine
# span[hosts=1] ensures that Gaussian is run in shared-memory fashion
# BSUB -R "collserola select[g09b1] span[hosts=1]"
date
cp input.com $TMPDIR
cd $TMPDIR
# Syntax of the Gaussian command is
# g09b1 [path/]inputfile [path/]outputfile
g09b1 input.com output.out
cp output.out $HOME
date
g09a2
#!/bin/bash
# IMPORTANT NOTICE: replace email address, job name
# and working directories with your own info
##
# BSUB -J jobname # as appears in the LSF queuing system
# BSUB -o jobname.log # send standard output here
# BSUB -e jobname.err # send error output here
#
# Pick a queue
# BSUB -q test
#
# Send an email notice once the job is finished
# BSUB -N -u youremail@wherever
#
# Indicate the number of cores
# BSUB -n 4
# Note that this option *overrides* the %NProcShared directive
# in the Gaussian input file
#
# Pick the machine
# span[hosts=1] ensures that Gaussian is run in shared-memory fashion
# BSUB -R "collserola select[g09a2] span[hosts=1]"
date
cp input.com $TMPDIR
cd $TMPDIR
# Syntax of the Gaussian command is
# g09a2 [path/]inputfile [path/]outputfile
g09a2 input.com output.out
cp output.out $HOME
date
g03e1
#!/bin/bash
# IMPORTANT NOTICE: replace email address, job name
# and working directories with your own info
##
# BSUB -J jobname # as appears in the LSF queuing system
# BSUB -o jobname.log # send standard output here
# BSUB -e jobname.err # send error output here
#
# Pick a queue
# BSUB -q test
#
# Send an email notice once the job is finished
# BSUB -N -u youremail@wherever
#
# Indicate the number of cores
# BSUB -n 4
# Note that this option *overrides* the %NProcShared directive
# in the Gaussian input file
#
# Pick the machine
# span[hosts=1] ensures that Gaussian is run in shared-memory fashion
# BSUB -R "collserola select[g03e1] span[hosts=1]"
date
cp input.com $TMPDIR
cd $TMPDIR
# Syntax of the Gaussian command is
# g03e1 [path/]inputfile [path/]outputfile
g03e1 input.com output.out
cp output.out $HOME
date
g03d2
#!/bin/bash
# IMPORTANT NOTICE: replace email address, job name
# and working directories with your own info
##
# BSUB -J jobname # as appears in the LSF queuing system
# BSUB -o jobname.log # send standard output here
# BSUB -e jobname.err # send error output here
#
# Pick a queue
# BSUB -q test
#
# Send an email notice once the job is finished
# BSUB -N -u youremail@wherever
#
# Indicate the number of cores
# BSUB -n 4
# Note that this option *overrides* the %NProcShared directive
# in the Gaussian input file
#
# Pick the machine
# span[hosts=1] ensures that Gaussian is run in shared-memory fashion
# BSUB -R "collserola select[g03d2] span[hosts=1]"
date
cp input.com $TMPDIR
cd $TMPDIR
# Syntax of the Gaussian command is
# g03d2 [path/]inputfile [path/]outputfile
g03d2 input.com output.out
cp output.out $HOME
date
Notes on using Gaussian
- Please note that Linda is not supported on our system (i.e. only shared-memory paralellisation is supported). All Gaussian jobs must be run on a single node. Invoking the resource -R "span[hosts=1]" ensures this.
- Gaussian code performs notoriously bad in highly parallel calculations. There is essentially no speed-up beyond ca. 16 cores.
- Wrappers take care of setting the Gaussian environment. No "module load" action is required on behalf of the user.
- Since it is a common mistake to set different number of cores in the Gaussian input file (via the Link0 instruction %NProcShared) and in the LSF batch script (via -n), the wrapper ensures both values match. The LSF option overrides the input file value.
- A very common file format issue is that Gaussian requires an empty line at the end of the input file.