You are here

ABINIT

A DFT-based package for electronic structure and other properties of molecules and periodic solids. It also includes options for molecular dynamics. 

ABINIT is a software package for electronic structure calculations, based on Density Functional Theory, for the treatment of molecules and periodic solids. It also includes options for molecular dynamics.

ABINIT is available on a variety of WestGrid systems. See the main software table for the version installed on each system. Example job scripts for running ABINIT on Bugaboo and Lattice are shown below. Running ABINIT on Grex and some other systems requires loading the corresponding module, abinit/6.12.3 instead of specyfying the PATH explicitly.

Users are expected to be generally familiar with ABINIT capabilities and input file format. Documentation is available in the Infos subdirectory and input files for a tutorial are in the Tutorial subdirectory of the installation directory referenced above. You may find it more convenient to access the user's guide and tutorial at the ABINIT web site.

Like other jobs on WestGrid systems, ABINIT jobs are run by submitting an appropriate script for batch scheduling using the qsub command. See documentation on running batch jobs for more information.

Running ABINIT on Bugaboo

The following command submits a 4-processor 72-hour job based on the script fcc_fe_bugaboo.pbs.

qsub -l procs=4,walltime=72:00:00 fcc_fe_bugaboo.pbs

where an example of fcc_fe_bugaboo.pbs is:

#!/bin/bash
#PBS -S /bin/bash
# ABINIT example - Calculation for FCC FE
# Bugaboo version
# DSP 2009-11-05

cd $PBS_O_WORKDIR

echo "Current working directory is `pwd`"

echo "Node file: $PBS_NODEFILE :"
echo "---------------------"
cat $PBS_NODEFILE
echo "---------------------"
NUM_PROCS=`/bin/awk 'END {print NR}' $PBS_NODEFILE`
echo "Running on $NUM_PROCS processors."

echo "Starting run at: `date`"
mpiexec abinit < fcc_fe.files > fcc_fe.out
echo "Job finished at: `date`"

Modify the mpiexec line in the script to specify your own input and output files. In the FCC Fe example above, the input file fcc_fe.files contains:

fcc_fe.in
fcc_fe.out
fcc_fe.i
fcc_fe.o
fcc_fe 26fe.pspnc

The bulk of the problem definition is in the input file, fcc_fe.in (not shown here).

The last line of the fcc_fe.files file references the pseudopotential file to be used, in this case 26fe.pspnc. This is one of a number of such files distributed with ABINIT for testing. Visit the ABINIT website to download other pseudopotential files.

Running ABINIT on Lattice

Several versions of the software were built on Lattice using the Intel 12 compiler, with and without the associated MKL 10.3 library for the linear algebra support. The GotoBLAS2 library was also tried. Versions using FFTW were built, but, rejected due to poor performance on examples from the ABINIT test suite. The retained builds are in subdirectories under /global/software/abinit/abinit681. The batch script example below uses the GotoBLAS2 build.

#!/bin/bash
#PBS -S /bin/bash

# ABINIT example - Calculation for FCC FE
# Lattice version
# DSP 2011-07-11

# Choose the ABINIT build directory to use: ABINIT_DIR=/global/software/abinit/abinit681_goto
ABINIT=${ABINIT_DIR}/bin/abinit

cd $PBS_O_WORKDIR

echo "Current working directory is `pwd`"

echo "Node file: $PBS_NODEFILE :"
echo "---------------------"
cat $PBS_NODEFILE
echo "---------------------"
NUM_PROCS=`/bin/awk 'END {print NR}' $PBS_NODEFILE`
echo "Running on $NUM_PROCS processors."

# Set up the Intel run-time environment.
module unload intel
module load intel/12

# Set up the NetCDF run-time environment.
export LD_LIBRARY_PATH=/global/software/lib:$LD_LIBRARY_PATH

echo "Starting run at: `date`"
mpiexec -n ${NUM_PROCS} ${ABINIT} < fcc_fe.files > fcc_fe.out echo "Job finished at: `date`"

For More Information