CREST command line arguments

CREST is usually invoked via commandline, and requires only a coordinate input file. The program supports the TURBOMOLE coordinates (coord, Bohr), Xmol (*.xyz, Angstroem) or 3d SDF (V2000,V3000) formats and can be called via

> crest [INPUT] [OPTIONS]

If no file is given as [INPUT], then CREST automatically searches for a file called coord in the TURBOMOLE format. Either must be present. The different [OPTIONS] are listed below and refer to Version 2.11 of the CREST code. [DEFAULT] options do not need to be specified explicitly.

General and techincal options




Print an overview of most available options (i.e., this site)


Print only the program header and disclaimer.


Print the most relevant citations.

--xnam BIN

Specify the name (and path) of the xtb binary that should be used as BIN. The [DEFAULT] is xtb.


In-line progress bar printout for optimizations.

--scratch <DIR>

Performs the entire calculation in the specified <DIR>. If <DIR> is not existing it will be created.

--T <INT>

Specify the number of CPU threads <INT> that shall be used. CREST automatically adjusts the number of processes according to this variable in each step, in order to achieve optimal parallelization of the calculations.


Perfrom a “dry” run, i.e., nothing is actually done but instead an overview of the settings that would be applied in the calculation is given.


Several different applications are availabile within the CREST program. The most important usage are the two different conformational search algorithms MF-MD-GC and iMTD-GC, but there are also some smaller utility tools that can be used, such as an CRE sorting function (CREGEN), or a standalone z-martix sorting function (ZSORT). The different runtypes are:




MF-MD-GC algorithm (outdated)


First generation of the GFNn-xTB driven conformational search algorithm, consisting out of mode following, molecular dynamics sampling and genetic structure crossing.

MTD-GC algorithm (outdated)


Second generation of the GFNn-xTB driven conformational search algorithm, consisting out of a meta-dynamics approach and genetic structure crossing.

iMTD-GC algorithm [DEFAULT]

--v2i, --v3

Iterative version of the MTD-GC workflow, which is the default runtype of CREST.

iMTD-sMTD algorithm


Iterative workflow, making use of static metadynmics simulations.

Conformational entropy algorithm


Specialized version of the iMTD-sMTD workflow, specialized in the calculation of conformational entropy.

Ensemble sorting

CREGEN ensemble sorting tool for standalone use



--cregen <FILE>

Tool to sort a given ensemble <FILE> according to energy, atomic RMSD and rotational constant. A reference structure (e.g. coord) has to be provided.

--ewin <REAL>

Set the energy threshold to REAL kcal/mol. This affects several runtypes and the [DEFAULT] is depending on the application (6 kcal/mol conformational searches, 30 kcal/mol screening tools).


Create a scoord.`*` file for each conformer in the TURBOMOLE format.

--rthr <REAL>

Set RMSD threshold in Ångström. The [DEFAULT] is 0.125 Å.

--ethr <REAL>

Set energy threshold between conformer pairs in kcal/mol. The [DEFAULT] is 0.05 kcal/mol.

--bthr <REAL>

Set lower bound for the rotational constant threshold to REAL. The [DEFAULT] is 0.01 (= 1%). The thresold is dynamically adjusted between this value and 2.5%, based on the anisotropy of the rotational constants.

--nmr, --eqv, --entropy

Activate determination and printout of NMR-equivalencies. Writes the files anmr_rotamer and anmr_nucinfo, which are required by the ENSO python script.

--athr <REAL>

Similarity threshold to determine internal rotation of equal atoms for NMR. The [DEFAULT] is 0.04.

-temp <REAL>

Set temperature for the calculation of Boltzmann weights. The [DEFAULT] is 298.15 K.


Sort only based on energy (i.e., no RMSD and rotational constant comparison)


Don’t write new ensemble files (crest_rotamers_`*`.xyz,


Compare only those parts of the structure that were also included in the metadynamics bias potential. Can be important for constrained conformational searches.


Turn off the initial topology check of the structures in the ensemble.

An extension to the CREGEN sorting is an automatic principle component analysis (PCA) and k-Means sorting clustering algorithm. It can be invoked with the --cluster command.



--cluster <INT>

Perform a clustering on the final CREGEN ensemble to identify INT most representative structures, based on dihedral angles. Note that this algorithm currently does not work well for non-covalent complexes or molecular clusters and should only be applied to singular molecules.


Calculation settings passed to xtb

Method selection



--gfn2, --gfn1, --gfn0, --gfnff

Use any of the respective GFNn methods. The default is GFN2-xTB but GFN-FF is strongly recommended for faster sampling.

Charge and multiplicity



--chrg <INT>

Specify molecular charge as INT, overrides .CHRG file.

--uhf <INT>

Specify \(N_{\alpha}-N_{\beta}\) as INT, overrides .UHF file

Implicit solvation



--g, --gbsa <SOLVENT>

Generalized born (GB) model with solvent accessable surface (SASA) model, for available SOLVENT options see Implicit Solvation. The solvent input is not case-sensitive.

--alpb <SOLVENT>

New ALPB implicit solvation model, for available SOLVENT options see Implicit Solvation. The solvent input is not case-sensitive.

Geometry optimization thresholds



--opt <LEVEL>

Set the optimization accuracy for final GFNn–xTB optimizations. See Geometry Optimization for valid LEVEL arguments. The [DEFAULT] is vtight.

Options for conformational search algorithms

Z-matrix sorting (see also --zsort above)




Perform z-matrix sorting (i.e. ZSORT) for the input coordinate file.


[DEFAULT] Do not perform z-matrix sorting of the input file.

Genetic Z-matrix crossing




[DEFAULT] Perform Z-matrix strucutre crossing (GC) in the algorithm.


Skip Z-matrix strucutre crossing.

Additional MD sampling after MTD




Turn off the additional MDs on the lowest conformers after the MTD step.

--tnmd <REAL>

Set temperature for the additional normal MDs on the lowest conformers after the MTD step. The [DEFAULT] is 400 K.

Adjusting iterative behavior of iMTD-GC



--mrest <INT>

Maximum number of MTD restarts in iMTD-GC algorithm. The [DEFAULT] is 5 cycles.

Special settings for the iMTD-GC workflow




Perform a search with reduced settings for a crude conformer ensemble.

--squick, --superquick

Perform an even more crude conformational search than with -quick.


Perform an even more crude conformational search than with -quick or -squick.


Specialized NCI mode that can be used to find aggregates of NCI complexes. The option generates an ellipsoide potential around the input structure and adds it to the MTD simulation. Also, settings for \(k\) and \(\alpha\) are adjusted and some settings are reduced, in order to achieve lower computation times.

---wscal <REAL>

Scale the ellipsoide potential axes in the --nci mode by factor REAL.

Technical iMTD-GC settings




Keep sub-directories of the conformer production run.

Property mode appendix



--prop <STR>

This initializes the usage of the “property” mode as an appendix to the regular conformational search. STR defines what shall be done with the ensemble.

--for,--forall <FILE>

Instead of starting the property calculation on the final conformer ensemble file after iMTD-GC the property mode can directly be started for a given input ensemble <FILE> in the Xmol (*.xyz) format.

Valid options for STR are currently (case sensitive!):




performs a hessian calculation for all conformers and re-weights the ensemble on free energies


reoptimization of the ensemble with vtight thresholds (usefull for “quick” runs)


calculate vib. modes for all conformers and average them (weighted by Boltzmann populations) in a single “crest.vibspectum” file.


The different quick, NCI and property settings are incompatible with --entropy!

Entropy mode settings



--scthr,--entropy_cthr <REAL>

Specifiy the ensemble growth threshold (% new conformers) for --entropy and --v4 convergence. The default is 0.02 (=2%) for the entropy mode and 0.05 (=5%) for --v4.

--ssthr,--entropy_sthr <REAL>

Specifiy the entropy growth threshold (% growth entropy) for --entropy and --v4 convergence. The default is 0.005 (=0.5%) for the entropy mode and 0.01 (=1%) for --v4.

--trange <from> <to> <step>

Entropies from the --entropy mode are always printed for a range of temperatures. The respective temperatures can be specified with this option.

--ptot <REAL>

For the rovibrational average \(\overline{S}_{msRRHO}\) requires frequency calculations at GFN level. To reduce computational cost, only the specified REAL fraction of structures are calculated, and the rest is averaged. The default is 0.9 (=90%).

--fscal <REAL>

Scale frequencies read for \(\overline{S}_{msRRHO}\) by a given factor. Also works together with the --thermo option (see below, section Other Tools)


Specify the rotor cutoff for the ro/vib entropy interpolation (\(\tau\)). Also works together with the --thermo option (see below, section Other Tools)

Other tools

ZSORT z-matrix sorting tool




The atom order of the given input file is sorted in order to yield a more consistent z-matrix, i.e., atoms are grouped together according to the molecular structure (e.g. methyl groups).

MDOPT parallel ensemble optimization



--mdopt <FILE>

Optimize each point on a given trajectory or ensemble file <FILE> with GFNn–xTB.

SCREEN ensemble screening tool



--screen <FILE>

Optimize each point on a given trajectory or ensemble file <FILE> with GFNn–xTB in a multilevel approach and sort the resulting ensemble (CREGEN).

Automated protonation site screening




A tool that can be used to find protonation sites, i.e., the protomers of the input structure. In the approach first localized molecular orbitals (LMOs) are calculated and LP- and π-centers are identified. Then, a proton is added to each of these centers and the resulting structures are optimized and sorted.



--swel <STR>

Change H\(^+\) in the protonation tool to some other ion specified by STR. STR has to contain the element symbol AND charge, e.g. Na+ or Ca2+

Automated deprotonation site screening




A tool to find deprotomers of the input structure. Each H atom is removed and the resulting structures are optimized and sorted.

Automated tautomerization screening




A tool that combines the -protonate and -deprotonate options to find (prototropic) tautomers of the input structure.




Reverse order of operation for tautomerization mode, i.e., first deprotonate and then protonate.

--iter <INT>

Number of Protonation/Deprotonation Iterations for -tautomerize mode. The [DEFAULT] is 2 iterations.

Ensemble comparison



--compare <FILE1> <FILE2>

Compare two ensembles <FILE1> and <FILE2>. Both ensembles must have the same order of atoms of the molecule and should contain rotamers (e.g. Furthermore the structures should have energies in the same magnitude, or relative energies as the comment in the ensemble file.



--maxcomp <INT>

Selcect the lowest INT conformers out of each ensemble to be compared with -compare. The [DEFAULT] is the 10 lowest conformers.

Rovibrational entropy average



--rrhoav <FILE>

Calculate the \(\overline{S}_{msRRHO}\) term for a specified ensemble. The --rrhoav option can be modified with the same settings as the entropy mode (e.g. --trange).




Write files with free energy Boltzmann populations for each --trange temperature into a separate directory called populations.

RMSD comparison



--rmsd,--rmsdheavy <FILE1> <FILE2>

Calculate the RMSD or heavy atom RMSD between two given structures. Input format of the two structures can be any of the formats that can be read by CREST, output will always be the RMSD in Angstroem.

Topology check



--testtopo <FILE>

Calculate the topology (neighbour lists) for a given input structure and print to info to screen.

Thermostatistical calculations from frequencies



--thermo <FILE>

Calculate thermo data for given structure. Also requires vibrational frequencies in the Turbomole format, saved as file called vibspectrum.



--fscal, --rotorcut,--sthr

(see above)

Splitting an Ensemble into seperate files



--splitfile <FILE> [from] [to]

Split an ensemble from <FILE> into seperate directories for each structure. [from] and [to] can be used to select specific structures from the file or a range of structures. The new directories are collected in the SPLIT directory.