NWChem

NWChem 7.2.2

NWChem (Northwest Chemistry) is a high-performance ab initio computational chemistry package developed at Pacific Northwest National Laboratory. It is free and open-source, making it an excellent alternative to Gaussian for DFT, correlated methods, and large parallel calculations. On duhpc, NWChem 7.2.2 was compiled from source with OpenMPI 3.1.4 and OpenBLAS, and runs on the compute/mpi partitions.

NWChem 7.2.2 is installed on duhpc and supports:

  • Hartree-Fock (HF) and post-HF methods: MP2, CCSD, CCSD(T)
  • Density Functional Theory (DFT) with a large library of exchange-correlation functionals
  • Time-Dependent DFT (TDDFT) for electronic excitations and UV-Vis spectra
  • Geometry optimisation and vibrational analysis
  • Plane-wave DFT via the NWPW module (pseudopotentials)
  • Relativistic methods: ZORA, Douglas-Kroll-Hess
  • NMR shielding tensors and response properties

NWChem Input File Format (molecule.nw):

title "Job description"
start <jobname>
echo
 
memory 14000 mb
 
geometry units angstroms noautoz noautosym
  <atom>  <x>  <y>  <z>
  ...
end
 
charge 0
 
basis
  * library <basis-set-name>
end
 
dft
  xc <functional>
  mult 1
  maxiter 100
end
 
task <theory> <operation>

Template for NWChem Job Script (nwchem_job.sh):

#!/bin/bash
#SBATCH --partition=compute
#SBATCH --job-name=nwchem
#SBATCH --nodes=1 --ntasks=8
#SBATCH --mem=32G --time=03:00:00
#SBATCH --output=%x_%j.out --error=%x_%j.err
#SBATCH --mail-type=BEGIN,END,FAIL
#SBATCH --mail-user=your@chemistry.du.ac.in

# ── USER SETTINGS ──────────────────────────────────────────────────
INPUT=molecule.nw          # your NWChem input file
# ───────────────────────────────────────────────────────────────────

export NWCHEM_TOP=/scratch/apps/nwchem/nwchem-7.2.2-release
export PATH=/scratch/apps/nwchem/nwchem-7.2.2-release/bin/LINUX64:/opt/ohpc/pub/mpi/openmpi3-gnu8/3.1.4/bin:$PATH
export LD_LIBRARY_PATH=/opt/ohpc/pub/mpi/openmpi3-gnu8/3.1.4/lib:$LD_LIBRARY_PATH
export NWCHEM_BASIS_LIBRARY=/scratch/apps/nwchem/nwchem-7.2.2-release/src/basis/libraries/

echo "============================================="
echo "NWChem Job - duhpc Cluster"
echo "Job ID  : $SLURM_JOBID"
echo "Node    : $SLURMD_NODENAME"
echo "MPI tasks: $SLURM_NTASKS"
echo "Start   : $(date)"
echo "============================================="

mpirun -np $SLURM_NTASKS nwchem $INPUT > ${INPUT%.nw}.out 2>&1

if grep -q "Total times" ${INPUT%.nw}.out; then
    echo "SUCCESS"
    grep "Total DFT energy\|Total SCF energy\|Total times" ${INPUT%.nw}.out | tail -5
else
    echo "FAILED — check ${INPUT%.nw}.out"
fi
echo "End: $(date)"

⚠ NOTE: NWChem is NOT available on gpu1. Always submit to the compute partition (cn01–cn03).

Useful SLURM Commands for NWChem 7.2.2 Jobs

TaskCommand
Submit jobsbatch nwchem_job.sh
Check job statussqueue -u $USER
Cancel jobscancel JOBID
Follow NWChem output livetail -f <jobname>.out
Resource usage after completionsacct -j <jobid> –format=JobID,State,Elapsed,MaxRSS

Getting Support

  • Email to Mr. Imran Ghani on ighani[at]ducc[dot]du[dot]ac[dot]in for any duhpc related information.
  • NWChem documentation: https://nwchemgit.github.io
  • NWChem GitHub discussions: https://github.com/nwchemgit/nwchem/discussions
back to chemistry.du.ac.in/hpcc