NWChem

Version
6.8.1

NWChem

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 gnu module (gnu-openmpi or gnu-mvapich2, not gnu) 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 gnu-mvapich2
module load nwchem
cd ~/nwchem
nwchem_mpich2 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_mpich2 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 gnu-mvapich2
module load nwchem

srun nwchem_mpich2 n2

Now submit the job using

$ sbatch nwchem_submit.sh