Skip to content

Virtual Chemical Reactor and scripts for automated quantum chemistry calculations

License

Notifications You must be signed in to change notification settings

Daniele-Dondi/AutoChem

Repository files navigation

AutoChem

                         ___         __        ________                 
                        /   | __  __/ /_____  / ____/ /_  ___  ____ ___ 
                       / /| |/ / / / __/ __ \/ /   / __ \/ _ \/ __ `__ \
                      / ___ / /_/ / /_/ /_/ / /___/ / / /  __/ / / / / /
                     /_/  |_\__,_/\__/\____/\____/_/ /_/\___/_/ /_/ /_/ 
                                        



                          Chemical Reaction Network Calculator

This program generates all the products coming from the combination of a starting pool of compounds and a set of reactions.
The program can also download modules and pathways from KEGG database.
Moreover, input files for ORCA, Gaussian, CREST and xTB can be produced for further calculations of free energies. For this aim, bash scripts present in the scripts directory help the automation process for the submission of jobs, their checking and automatic restarting in order to have optimized structures with no imaginary frequencies.
Scripts permit to calculate the reactions deltaG and to prepare a chemical network for subsequent analysis.
In addition, calculations can be saved and iterated, giving the possibility to mix calculations on KEGG downloaded reactions and generated reactions or to make subsequent calculations with different reactions and/or reactants.
AutoChem was published on the SoftwareX Journal https://doi.org/10.1016/j.softx.2024.101851

IMPORTANT: The starting conditions (reactants and reactions) are defined in the plain text files starting_reactants.txt and starting_reactions.txt.
Anyway, a basic editor is present in the program for inserting, enabling and disabling both reagents and reactions.

The program creates some supplementary files:
COMPOUNDS.csv: A list of the compound number, its molecular formula and MW. Energy at the RDKit level is also added if the optimization flag is enabled
FREQUENCY.csv: A frequency distribution of molecular weights (aka: number of compounds having the same
molecular weight)
REACTIONS.txt: A list of all reactions calculated or downloaded from KEGG (useful for the determination of reactions free energies)
SUMMARY.txt: A file containing summary informations for the calculations made. This is an important log file.
reactions.html: A html file containing the visual representation of reactions considered and calculated.
smarts_reactions.txt: A text file containing all the reactions inserted by user in SMARTS format together with auxiliary reagents and products

Note

AutoChem is divided in two programs:
AutoChem, written in Python, is managing the reaction generation
check, written in BASH, is managing the job submission with the automatic calculation of free energies

Installation


AutoChem: Download and install RdKit library in the proper Conda environment (follow instructions on RdKit website/anaconda installation)
Copy the whole directory of AutoChem in your PC.
Launch Autochem.py from your favourite IDE (we suggest Spyder)


check: You should have awk, bc available on your Linux environment together with a task spooler like tsp or slurm
If you use Windows for Autochem you should also install dos2unix
To activate check for the first time you should:
1) Copy the whole content of the folder scripts in your Linux working environment for calculations.
2) Render the scripts runnable:
chmod +x chmodme
and then launch chmodme
./chmodme

After doing this, you can put in the same folder the inputs to be calculated.
Then launch check:
./check
and follow instructions.
After some time launch check again and again up to the calculations of all inputs.
Check will take care the resubmission of jobs in the case of negative frequencies.
(if you are expert, you can add launch to chron or to some automatic running of check)

QUICKSTART


Watch the video: (AutoChem program with SMARTS reactions)
https://raw.githubusercontent.com/Daniele-Dondi/AutoChem/main/videos/AutoChem_example.mp4

AutoChem_example.mp4


Watch the video: (check program with crest)
https://raw.githubusercontent.com/Daniele-Dondi/AutoChem/main/videos/check.mp4
check.mp4


Watch the video: (check program with xtb and deltaG calculations)
https://raw.githubusercontent.com/Daniele-Dondi/AutoChem/main/videos/xtb_+_deltaG.mp4
xtb_+_deltaG.mp4



Releases

No releases published

Packages

No packages published