ADF: Difference between revisions
No edit summary |
(Marked this version for translation) |
||
Line 3: | Line 3: | ||
<translate> | <translate> | ||
[[Category:Software]] | [[Category:Software]] | ||
==Introduction== | ==Introduction== <!--T:1--> | ||
[https://www.scm.com/ 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. | [https://www.scm.com/ 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. | ||
<!--T:2--> | |||
BAND, also called ADF-BAND, is a related program used to study periodic systems (solids, surfaces, slabs, and polymers) and reactions on surfaces. BAND is a part of ADF package here. | BAND, also called ADF-BAND, is a related program used to study periodic systems (solids, surfaces, slabs, and polymers) and reactions on surfaces. BAND is a part of ADF package here. | ||
==Running ADF on Graham== | ==Running ADF on Graham== <!--T:3--> | ||
ADF and BAND are installed only on [[Graham]] due to license restrictions. Versions 2016.106 and 2017.207 are currently available through the [[Utiliser des modules/en|modules]] system. You can load them with one of: | ADF and BAND are installed only on [[Graham]] due to license restrictions. Versions 2016.106 and 2017.207 are currently available through the [[Utiliser des modules/en|modules]] system. You can load them with one of: | ||
[name@server $] module load adf/2016.106 | <!--T:4--> | ||
[name@server $] module load adf/2016.106 | |||
[name@server $] module load adf/2017.207 | [name@server $] module load adf/2017.207 | ||
===Job Submission=== | ===Job Submission=== <!--T:5--> | ||
<!--T:6--> | |||
Graham uses the Slurm scheduler; for details about submitting jobs, see [[Running jobs]]. | Graham uses the Slurm scheduler; for details about submitting jobs, see [[Running jobs]]. | ||
====Single ADF or BAND run==== | ====Single ADF or BAND run==== <!--T:7--> | ||
The following example is a job script for a whole-node ADF job: | The following example is a job script for a whole-node ADF job: | ||
</translate> | </translate> | ||
Line 35: | Line 38: | ||
<translate> | <translate> | ||
<!--T:8--> | |||
The following is an example for the input file, adf_test.inp: | The following is an example for the input file, adf_test.inp: | ||
</translate> | </translate> | ||
Line 63: | Line 67: | ||
<translate> | <translate> | ||
====Multiple ADF or BAND runs within one input file==== | ====Multiple ADF or BAND runs within one input file==== <!--T:9--> | ||
<!--T:10--> | |||
Multiple calculations can be combined into a single job by creating a shell script, as in this example: | Multiple calculations can be combined into a single job by creating a shell script, as in this example: | ||
</translate> | </translate> | ||
Line 206: | Line 211: | ||
<translate> | <translate> | ||
<!--T:11--> | |||
The job script is identical to the one above, except that it calls the shell script just shown instead of <code>ADF</code>: | The job script is identical to the one above, except that it calls the shell script just shown instead of <code>ADF</code>: | ||
</translate> | </translate> | ||
Line 222: | Line 228: | ||
<translate> | <translate> | ||
===Examples=== | ===Examples=== <!--T:12--> | ||
Example input/output for ADF can be found on Graham under | Example input/output for ADF can be found on Graham under | ||
/home/jemmyhu/tests/test_ADF/2017.207/test_adf/ | /home/jemmyhu/tests/test_ADF/2017.207/test_adf/ | ||
<!--T:13--> | |||
The same procedure applies to BAND job, see band_test.inp and band_test.sh examples under | 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 | /home/jemmyhu/tests/test_ADF/2017.207/test_band | ||
</translate> | </translate> |
Revision as of 19:57, 5 December 2017
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. BAND is a part of ADF package here.
Running ADF on Graham
ADF and BAND are 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