Gaussian is a software application used for electronic structure modeling. In order to run Gaussian03 on HPC, you must be a part of the ‘g03’ UNIX group. Request to be added to this group by sending an email to firstname.lastname@example.org.
Setting Up Gaussian03
Before running Gaussian03, you should set up your environment with the following command.
If you are using the bash shell, enter:
If you are using the (t)csh shell, enter:
To run the scalar version of Gaussian03, use the command g03. To run the parallel, also known as Linda, version of Gaussian03, use the g03l command. Please note that the last character in the g031 command is a lowercase ‘L.’
While using the parallel version of Gaussian03, you will need to specify the number of processors to be used in the ‘%nproc’ as a link 0 command in your Gaussian program. The following should be the first few lines of your Gaussian input file:
%chk=/scratch/test.chk %mem=80MW %NProcShared=2 %NProcLinda=4
Note: The %NProc options listed above makes Linda utilize four nodes and two processes in each node.
Users are not required to manually source the Portland Group (PGI) compiler’s setup file. If you need a particular version of a PGI compiler, then you will need to source that PGI compiler’s setup file before sourcing Gaussian03’s setup file. You should not override the following variables’ default values: PGI, PGIDIR, GAUSS_SCRDIR, and GUASS_LFLAGS.
The following is a sample Slurm script file for running Gaussian03 programs.
#!/bin/bash #** The "#SBATCH" lines must come before any ##** non-blank non-comment lines *** #SBATCH --time=1:00:00 #SBATCH --ntasks=4 #The following should contain your program and any arguments inputfile="./test.com" # G03 Input file outputfile="test.out" # G03 Output file echo "Starting" $SLURM_JOB_ID `date` echo "Initiated on `hostname`" echo "" cd $SLURM_SUBMIT_DIR cp -v $inputfile /scratch # Copy input file to /scratch cd /scratch NP=$SLURM_NTASKS echo "Running on $NP processors: " echo "$SLURM_NODELIST" echo "Inputfile: $inputfile" echo "Outfile: $outputfile" source /usr/usc/gaussian/g03-E01/setup.sh # run the program on the linux cluster using Linda g03l < `basename $inputfile` > `basename $outputfile` ret=$? ## g03 < $inputfile >& $outputfile cp -v cp -v /scratch/* $SLURM_SUBMIT_DIR # Copy all the output and temp files ## from /scratch to home directory echo "Done " `date` exit $ret /* $SLURM_SUBMIT_DIR # Copy all the output and temp files ## from /scratch to home directory echo "Done " `date` exit $ret