[[Category:Software]][[Category:ComputationalChemistry]] ==Introduction== '''Important:''' ADF has been renamed to AMS since the 2020 version. Significant changes such as the input and output formats have been made in the new AMS. Please refer to [[AMS]] for more information. The [https://www.scm.com/ SCM (Software for Chemistry and Materials) Amsterdam Modeling Suite] originally the ADF (Amsterdam Density Functional) Modeling Suite, offers powerful computational chemistry tools for many research areas such as homogeneous and heterogeneous catalysis, inorganic chemistry, heavy element chemistry, various types of spectroscopy, and biochemistry. Compute Canada users have access to the following products: *ADF *ADF-GUI *BAND *BAND-GUI *DFTB *ReaxFF *COSMO-RS *QE-GUI *NBO6 ==Running SCM on Graham== The adf module is installed only on [[Graham]] due to license restrictions. To check what versions are available use the module spider command as follows: [name@server $] module spider adf For module commands, please see [[Utiliser des modules/en|Using modules]]. ===Job submission=== Graham uses the Slurm scheduler; for details about submitting jobs, see [[Running jobs]]. ====Single ADF or BAND run==== This mysub.sh script is for a whole-node job. The last two lines load version 2019.305 and call ADF directly. {{File |name=mysub.sh |lang="bash" |contents= #!/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) #SBATCH --output=adf_test-%j.log # output file module unload openmpi module load adf/2019.305 ADF adf_test.inp }} This is the input file used in the script: {{File |name=adf_test.inp |lang="text" |contents= 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==== Multiple calculations can be combined into a single job by creating a input file such as this: {{File |name=GO_H2O.run |lang="bash" |contents= #!/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 following slurm script is identical to the one used for a single run (mysub.sh), except the last line calls the GO_H2O.run script, instead of ADF. {{File |name=GO_H2O.sh |lang="bash" |contents= #!/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) #SBATCH --output=GO_H2O_%j.log # output file module unload openmpi module load adf/2019.305 bash GO_H2O.run # run the shell script }} ===Examples=== Example input/output for ADF can be found on Graham under /home/jemmyhu/tests/test_ADF/2019.305/test_adf/ The same procedure applies to BAND jobs, see band_test.inp and band_test.sh examples under /home/jemmyhu/tests/test_ADF/2019.305/test_band/ ==Running SCM-GUI== Rendering over an SSH connection with X11 forwarding is very slow for GUI applications such as ADF-GUI. We recommend you use [[VNC]] to connect if you will be running ADF-GUI. ===Graham=== ADF can be run interactively in graphical mode on a Graham compute node (3hr time limit) over TigerVNC with these steps: # [[VNC#Setup|Install a TigerVNC]] client on your desktop # [[VNC#Compute_Nodes|Connect]] to a compute node with vncviewer # module load adf # adfinput ===Gra-vdi=== Adf can be run interactively in graphical mode on gra-vdi (no connection time limit) over TigerVNC with these steps: # [[VNC#Setup|Install a TigerVNC]] client on your desktop # [[VNC#VDI_Nodes|Connect]] to gra-vdi.computecanada.ca with vncviewer # module load clumod # module load adf # adfinput A tutorial pdf showing how to install, connect and run ADF-GUI using TigerVNC on gra-vdi can be found [https://www.sharcnet.ca/~jemmyhu/TigerVNC-for-ADF-GUI.pdf here]. ===Locally=== SCM has a separate license to run ADF-GUI on a local desktop machine. If you are interested contact [mailto:license@scm.com license@scm.com] to purchase your own license.