FIRECODE is a computational chemistry workflow driver and hub for the generation, optimization and refinement of conformational ensembles, including transition state and thermochemical utilities.
- CREST (conformational search)
- GOAT (conformational search)
- racerts (conformational search)
- ETKDG (via rdkit, conformational search)
- TSCoDe (conformational embedding)
- prism_pruner (conformational pruning)
- ML-FSM (two-ended TS search)
- Sella (saddle point optimization)
...plus frequency calculation, NEB optimization, and more are all implemented in the code in a calculator-agnostic way.
The package is distributed via pip, and the use of uv is highly recommended. The default installation is minimalistic, and torch/GPU support requires dedicated installs:
uv pip install firecode # XTB, TBLITE, ORCA
uv pip install firecode[aimnet2] # + AIMNET2
uv pip install firecode[uma] # + UMA/OMOL
uv pip install firecode[full] # + AIMNET2, UMA/OMOLMore installation details in the documentation.
Installation exposes the main program working on a plain text file as well as a standalone optimizer.
🔥 firecode [-h] [-s] [-t] input.txt [-n NAME] [-p]
positional arguments:
inpufile.txt Input filename, can be any text file.
optional arguments:
-h, --help Show this help message and exit.
-s, --setup Guided setup of the calculation settings.
-n, --name NAME Specify a custom name for the run.
-cl,--command_line Read instructions from the command line instead of from an input file.
-p, --profile Profile the run through cProfiler.
🔥 firecode_opt [-h] [-i] [-t TEMPERATURE] [-c CALCULATOR] [-m METHOD] [-s SOLVENT] [-o] [-f] [--ts]
[--irc] [--cfile CFILE] [-n] [--debug] filenames [filenames ...]
positional arguments:
filenames Input filename(s), in .xyz format
options:
-h, --help show this help message and exit
-i, --interactive Set options interactively.
-t TEMPERATURE, --temperature TEMPERATURE
Temperature, in degrees Celsius.
-c CALCULATOR, --calculator CALCULATOR
Calculator (default UMA).
-m METHOD, --method METHOD
Method (default OMOL for UMA).
-s SOLVENT, --solvent SOLVENT
Solvent (default ch2cl2).
-o, --opt Optimize the geometry.
-f, --freq Perform vibrational analysis.
--ts, --saddle Optimize to a TS.
--irc Run an IRC calculation.
--cfile CFILE Uses a constraint file.
-n, --newfile Write optimized structure to a new file (*_opt.xyz).
--debug Does not delete optimization data.
Documentation on how to install and use the program can be found on readthedocs.
