NWChem

Application for high performance computational chemistry

Introduction

NWChem is a powerful high performance computational chemistry program which can handle a wide range of different types of computational chemistry problems.

Using NWChem on RCC Resources

NWChem requires the use of a parallel Intel module (intel-openmpi or intel-mvapich2, not intel) as well as the NWChem module nwchem, in that order. Shown below are some examples for running both the serial and parallel versions of NWChem on the HPC.

Serial

We use an example from the tutorial. Log in to the submit node (ssh [user]@hpc-login.rcc.fsu.edu) and make a directory nwchem in your home directory.

mkdir ~/nwchem

Now create a file named n2.nw, then open it in a text editor and add the following to it:

title "Nitrogen cc-pvdz SCF geometry optimization"
geometry  
    n 0 0 0
    n 0 0 1.08
end
basis
    n library cc-pvdz
end
task scf optimize

Note that there must be at least two spaces before each command in the .nw file. Proper formatting is available in the tutorial. Finally execute the program by using nwchem, loading the module files beforehand.

module purge
module load intel-openmpi
module load nwchem
cd ~/nwchem
nwchem n2

Parallel on the Local Node

Using Intel Open MPI, the only differences between the serial and parallel versions is the use of the mpirun command:

srun -n 2 nwchem n2

This will allow for nwchem to run on two processors on the local node.

Parallel Using SLURM

Create a SLURM submit script named nwchem_submit.sh in your nwchem directory, similar to the one described in the SLURM job submission tutorial:

#!/bin/bash

#SBATCH  -J "nwchem_test_job"
#SBATCH  -n 2
#SBATCH  -p genacc_q
#SBATCH  --mail-type=ALL
#SBATCH  -t 00:01:00

module purge
module load intel-openmpi
module load nwchem

srun -n 2 nwchem n2

Save this script, and then set the permissions using

chmod +x nwchem_submit.sh

Now submit the job using

$ sbatch nwchem_submit.sh