Using QUILD with the 2020/2021 versions of ADF/AMS


The QUILD program (QUantum-regions Interconnected by Local Descriptions, JComputChem2008) functions as a wrapper around ADF, DFTB, NEWMM, etc. and manages the geometry optimizations, transition-state searches, etc. using strong-weak delocalized coordinates. For a long time, QUILD has been shown to outperform ADF regarding convergence of geometry, because of the use of Geometry DIIS (GDIIS), special model Hessians that take into account the weight of the strong/weak coordinates, and other improvements.


A few years ago, SCM started to rearrange the whole setup, mimicking QUILD, but in a technically much nicer way. I.e. there is one driver, AMS (for Amsterdam Modeling Suite), that handles (like QUILD) all the different things to do (geometry optimization, TS search, PES scan, Molecular Dynamics simulations, etc.) with one input format. The different programs (ADF, BAND, DFTB, NewMM, ReaxFF, etc.) are now just subroutines to AMS, with all advantages this brings.

The problem

In the past couple of years, I haven't had the time to update QUILD for use with AMS, although SCM did make sure that DFTB through AMS would be possible, so I thought that QUILD could not be used with the 2020/2021 versions in all aspects.

The solution

I was wrong. QUILD and AMS2020/2021 are already fully compatible. This is the advantage of the QUILD setup, which has been made as flexible as possible from the start. So, the only thing that needs to be done, is to prepare the input properly, and then everything works normally.

The example

#! /bin/bash

cat << eor > AMSinput.txt

Task SinglePoint


    -> ATOMS

  Charge 0



  Gradients Yes


Engine ADF

  Title MSXC Version 2021-04-08_18:32

  Unrestricted Yes

  SpinPolarization 0

`cat $MSXC/basis/tz2p`

`cat $MSXC/xc/s12g`

`cat $MSXC/cosmo/Acetonitrile`

`cat $MSXC/2020/scf_normal`

`cat $MSXC/2020/zora_scalar`



$AMSBIN/quild << eor

Title This is a test




`cat $QSOLD/$QSNAME.angs`



  Description 1 AMS

INLINE AMSinput.txt




The lines in orange is the part that is specific for the type of subroutine you want to use (ADF, DFTB, etc.), while the lines in green are the QUILD specific ones.


This example is based on my automated MSXC input-handling system but can be used without it without any problem. Just put at the lines which contain $MSXC the normal input for e.g. using the S12g functional (`cat $MSXC/xc/s12g`).


Popular Posts