Gaussian
Triton
Gaussian 16 is an electronic structure modeling/calculation software. It can be loaded into a user’s computing environment by the following command
module load gaussian
In order to run calculations with this software, a user needs to create a scratch directory in their user space, and set the value of the variable GAUSS_SCRDIR to the path of their scratch space. This is demonstrated in the job submission script below:
#!/bin/bash
#BSUB -J h2o # name of your job
#BSUB -e %J.err # file name of output written to std. error
#BSUB -o %J.out # file name of output written to std. out
#BSUB -q normal # request run on 'normal' queue
#BSUB -n 4 # request 4 cores
#BSUB -W 2 # request 2 minutes of runtime
#BSUB -P XYZ # your projectID
module load gaussian
export GAUSS_SCRDIR=/scratch/projects/XYZ/my_username/my_gaussian_scratch
g16 h2o.inp
In this job submission script, the user loads gaussian and then sets the value of
the Gaussian environment variable GAUSS_SCRDIR to the full path of their scratch space
for Gaussian calculations. This calculation will run on 4 cores, and the input file h2o.inp
is modified to reflect the compute resources to be used. See below
%chk=water.chk
%NProcShared=4
# HF/6-31G(d)
water energy Title section
0 1
O -0.464 0.177 0.0
H -0.464 1.137 0.0
H 0.441 -0.143 0.0
Pegasus
Pegasus provides Gaussian 09 through the gaussian module.
Check the available versions and load the verified module:
module avail gaussian
module load gaussian/09.e.01
Confirm the executable:
which g09
The installed module provides g09. It does not provide g16.
Complete LSF example
Create a working directory. Replace dssas with a project that you can use:
PROJECT=dssas
WORKDIR=/scratch/$PROJECT/$USER/software-tests/gaussian
mkdir -p "$WORKDIR"
cd "$WORKDIR"
Create water.com:
cat > water.com <<'EOF'
%mem=1GB
%nprocshared=1
#p hf/sto-3g sp
Gaussian smoke test
0 1
O 0.000000 0.000000 0.000000
H 0.000000 0.000000 0.960000
H 0.000000 0.750000 -0.240000
EOF
Create gaussian_test.job:
cat > gaussian_test.job <<'EOF'
#!/bin/bash
#BSUB -P hpc
#BSUB -J gaussian_test
#BSUB -q general
#BSUB -n 1
#BSUB -R "rusage[mem=2000]"
#BSUB -W 00:10
#BSUB -o gaussian.%J.out
#BSUB -e gaussian.%J.err
set -euo pipefail
module purge
module load gaussian/09.e.01
PROJECT=dssas
WORKDIR=/scratch/$PROJECT/$USER/software-tests/gaussian
export GAUSS_SCRDIR="$WORKDIR/scratch/$LSB_JOBID"
mkdir -p "$GAUSS_SCRDIR"
g09 < water.com > water.log
grep -q "Normal termination of Gaussian 09" water.log
rm -rf "$GAUSS_SCRDIR"
echo "Gaussian LSF verification successful"
EOF
Submit the job:
bsub < gaussian_test.job
After the job finishes, verify the calculation:
grep "Normal termination" water.log
cat gaussian.*.err
A successful calculation reports:
Normal termination of Gaussian 09
Note
g09 -v is not a supported version command and should not be used.