CRC Wiki
CRC Wiki
Log in

GPAW

From CRC Wiki

What is GPAW?

GPAW is a Python based program-package for first-principles electronic structure calculations. It is formulated within density-functional theory (DFT) combined with the projector-augmented wave (PAW) method and the atomic simulation environment (ASE). It uses real-space uniform grids and multigrid methods, atom-centered basis-functions or plane-waves.

Some features of the software:

  • Total energy calculations
  • Geometry optimization
  • Different boundary conditions (finite, wire, slab, bulk)
  • Electron transport calculations
  • X-Ray Absorption Spectroscopy (XAS)
  • Scanning Tunneling Spectroscopy (STS)
  • Excited state properties within time-dependent DFT
  • Noncollinear spins on bulk
  • ...

To know more about it, please visit official site GPAW.

Basic Usage

GPAW environment can be set with the following module command:

module load gpaw

A small job can be run as serial by using python based interpreter gpaw-python as:

gpaw-python input.py

However, we strongly recommend to use batch script to run jobs on compute nodes. There one can submit jobs on both single and multiple nodes.

Submitting a job to SGE

A parallel job can be submitted on multiple nodes with script as:

#!/bin/csh

#$ -M netid@nd.edu       # Email address for job notification
#$ -m abe                # Send mail when job begins, ends and aborts
#$ -pe mpi-12 24         # Specify parallel environment and legal core size
#$ -q long               # Specify queue
#$ -N job_name           # Specify job name

module load gpaw

echo "Job Started at:"
date

mpiexec -n $NSLOTS gpaw-python input.py

echo "Job Ended at:"
date

A serial job can be submitted on a single node with the script as:

#!/bin/csh

#$ -M netid@nd.edu       # Email address for job notification
#$ -m abe                # Send mail when job begins, ends and aborts
#$ -pe smp 1             # Specify parallel environment and legal core size
#$ -q long               # Specify queue
#$ -N job_name           # Specify job name

module load gpaw

echo "Job Started at:"
date

gpaw-python input.py [or, mpiexec -n $NSLOTS gpaw-python input.py]

echo "Job Ended at:"
date

Test Examples

A few examples, including job-scripts and instructions of how to run them, tested on CRC resources are available at /opt/crc/gpaw/Examples. Please follow "README" file to run examples located at:

  • Calculation of Bandstructure @ /opt/crc/gpaw/Examples/BandStructure_Ni
  • Geometry optimization for bulk @ /opt/crc/gpaw/Examples/OptimizeGeometry_Benzene
  • Optimize Heterostructure Geometry @ /opt/crc/gpaw/Examples/OptimizeGeometry_Heterostrucutre

More tutorials can be found at GPAW official site GPAW-tutorial.

Further Information

GPAW User's Documentation

See the official website: GPAW