DL-FIND is an open-source geometry optimisation library for atomistic simulation codes. It provides methods for local minimisation, transition state search, reaction path optimisation, conical intersection optimisation and population-based (global) optimisation.
A well-defined interface is provided to make it straightforward to integrate the DL-FIND library into computational chemistry software packages. DL-FIND is an integral part of STFC’s ChemShell QM/MM code and GAMESS-UK quantum chemistry code, and has been interfaced to several other programs.
The DL-FIND project was started by Johannes Kästner in 2006. The code developers are Jo Carr, Johannes Kästner, Tom Keal and Judith Rommel. DL-FIND is currently maintained for STFC by Tom Keal.
Features
Coordinate systems
- Optimisations may be carried out in:
- Cartesian coordinates (including frozen atoms and components)
- Delocalised internal coordinates (DLCs)
- Hybrid delocalised coordinates (HDLCs)
- Total connection (DLC-TC/HDLC-TC)
- Input/output is in Cartesian coordinates (transformed internally as required)
Local minimisation algorithms
- Steepest descent
- Conjugate gradient
- Newton-Raphson/quasi-Newton (BFGS)
- L-BFGS (low memory quasi-Newton) for large systems
- Damped dynamics
Transition state search
- Partitioned rational function optimisation (P-RFO) with Powell or Bofill updates
- Dimer method
Reaction path optimisation
- Nudged elastic band (NEB) method
Conical intersection optimisation
- Penalty function
- Gradient projection
- Lagrange-Newton
Population-based optimisation
- Genetic algorithm
- Stochastic search
Parallel methods
- The following methods can be run in parallel using DL-FIND’s task-farming interface:
- NEB
- Genetic algorithm
- Stochastic search
- Finite-difference Hessian evaluation
Restart mechanism
- DL-FIND is fully restartable.
Acknowledgements
- The HDLC coordinate transformation routines in DL-FIND are derived from the HDLCopt code written by Salomon Billeter and Alexander Turner. This code is included by permission of the Max-Planck-Institute für Kohlenforschung.
- The L-BFGS code by Jorge Nocedal was used.
GPR optimisation
If you wish to use the recently developed Gaussian Process Regression optimisation features in DL-FIND, you can download a development version of DL-FIND with GPR.
Citing DL-FIND
Publications making use of the DL-FIND geometry optimiser either through ChemShell or as a standalone library should cite:
- DL-FIND: an Open-Source Geometry Optimizer for Atomistic Simulations, J. Kästner, J. M. Carr, T. W. Keal, W. Thiel, A. Wander, P. Sherwood, J. Phys. Chem. A, 2009, 113, 11856.
DL-FIND development
The DL-FIND repository is hosted on STFC Gitlab. If you are interested in contributing to the development of DL-FIND, please contact Tom Keal.
Obtaining DL-FIND
DL-FIND is usually distributed to users as part of software packages such as ChemShell or GAMESS-UK and does not need to be downloaded separately.
DL-FIND is released under the open source GNU LGPL licence.
Download DL-FIND
If you would like to interface DL-FIND to another software package, you can download the standalone DL-FIND library.
Please note it is not necessary to download DL-FIND here if you intend to use it within ChemShell, as the ChemShell distribution includes a copy of DL-FIND.
Download DL-FIND with GPR optimisation
You can download a development version of the DL-FIND library including GPR optimisation functionality below.
This is a snapshot of development code from 5 July 2021. It is not a stable release of DL-FIND and no support is provided for use of this code. Users should take extra care that the results of their calculations are valid.
GPR optimisation references:
- 10.1063/1.5017103
- 10.1021/acs.jctc.8b00708
- 10.1021/acs.jpca.9b08239
- 10.1021/acs.jctc.0c00348
- 10.1021/acs.jctc.1c00517
GPR optimisation in internal coordinates has been submitted for publication.