ADF
Introduction
ADF (The Amsterdam Density Functional package) is a program for first-principles electronic structure calculations. It is particularly popular in the research areas of homogeneous and heterogeneous catalysis, inorganic chemistry, heavy element chemistry, various types of spectroscopy, and biochemistry.
BAND, also called ADF-BAND, is a related program used to study periodic systems (solids, surfaces, slabs, and polymers) and reactions on surfaces.
Running ADF on Graham
ADF is installed only on Graham due to license restrictions. Versions 2016.106 and 2017.207 are currently available through the modules system. You can load them with one of:
[name@server $] module load adf/2016.106 [name@server $] module load adf/2017.207
Job Submission
Graham uses the Slurm scheduler; for details about submitting jobs, see Running jobs.
Single ADF or BAND run
The following example is a job script for a whole-node ADF job:
#!/bin/bash
#SBATCH --nodes=1 --ntasks-per-node=32 # 1 node with 32 cpus, you can modify it
#SBATCH --mem=0 # request all memory on node
#SBATCH --time=00-03:00 # time (DD-HH:MM)
module load adf/2017.207
ADF adf_test.inp
The following is an example for the input file, adf_test.inp:
Title WATER Geometry Optimization with Delocalized Coordinates
Atoms
O 0.000000 0.000000 0.000000
H 0.000000 -0.689440 -0.578509
H 0.000000 0.689440 -0.578509
End
Basis
Type TZP
Core Small
End
Geometry
Optim Deloc
Converge 0.0000001
End
End Input
Multiple ADF or BAND runs within one input file
Multiple calculations can be combined into a single job by creating a shell script, as in this example:
#!/bin/bash
if test -z "$SCM_TESTOUTPUT" ; then SCM_TESTOUTPUT=GO_H2O.out; fi
$ADFBIN/adf << eor > $SCM_TESTOUTPUT
Title WATER Geometry Optimization with Delocalized Coordinates
Atoms
O 0.000000 0.000000 0.000000
H 0.000000 -0.689440 -0.578509
H 0.000000 0.689440 -0.578509
End
Basis
Type TZP
Core Small
End
Geometry
Optim Deloc
Converge 0.0000001
End
End Input
eor
rm TAPE21 logfile
$ADFBIN/adf << eor >> $SCM_TESTOUTPUT
Title WATER Geometry Optimization in Cartesians with new optimizer
Atoms
O 0.000000 0.000000 0.000000
H 0.000000 -0.689440 -0.578509
H 0.000000 0.689440 -0.578509
End
Basis
Type TZP
Core Small
End
Geometry
Optim Cartesian
Branch New
Converge 0.0000001
End
End Input
eor
rm TAPE21 logfile
$ADFBIN/adf << eor >> $SCM_TESTOUTPUT
Title WATER Geometry Optimization with Internal Coordinates
Atoms Z-Matrix
1. O 0 0 0
2. H 1 0 0 rOH
3. H 1 2 0 rOH theta
End
Basis
Type TZP
Core Small
End
GeoVar
rOH=0.9
theta=100
End
Geometry
Converge 0.0000001
End
End Input
eor
rm TAPE21 logfile
$ADFBIN/adf << eor >> $SCM_TESTOUTPUT
Title WATER optimization with (partial) specification of Hessian
Atoms Z-Matrix
1. O 0 0 0
2. H 1 0 0 rOH
3. H 1 2 0 rOH theta
End
GeoVar
rOH=0.9
theta=100
End
HessDiag rad=1.0 ang=0.1
Fragments
H t21.H
O t21.O
End
Geometry
Converge 0.0000001
End
End Input
eor
rm TAPE21 logfile
$ADFBIN/adf << eor >> $SCM_TESTOUTPUT
Title WATER Geometry Optimization in Cartesians
Geometry
Optim Cartesian
Converge 0.0000001
End
Define
rOH=0.9
theta=100
End
Atoms Z-Matrix
1. O 0 0 0
2. H 1 0 0 rOH
3. H 1 2 0 rOH theta
End
Fragments
H t21.H
O t21.O
End
End Input
eor
mv TAPE21 H2O.t21
The job script is identical to the one above, except that it calls the shell script just shown instead of ADF
:
#!/bin/bash
#SBATCH --nodes=1 --ntasks-per-node=32 # 1 node with 32 cpus, you can modify it
#SBATCH --mem=0 # request all memory on node
#SBATCH --time=00-03:00 # time (DD-HH:MM)
module load adf/2017.207
./GO_H2O.run # run the shell script
Examples
Example input/output for ADF can be found on Graham under
/home/jemmyhu/tests/test_ADF/2017.207/test_adf/
The same procedure applies to BAND job, see band_test.inp and band_test.sh examples under
/home/jemmyhu/tests/test_ADF/2017.207/test_band