Collection of atom-atom-mapping utility functions.
Project description
Atom-atom-mapping Utils
A collection of atom-atom-mapping utility functions.
Installation
The easiest way to use AAMUtils is by installing the PyPI package aamutils.
pip install aamutils
Usage
The input is a list of partial atom-atom-maps (AAMs). Data is read line-by-line from a text file. Each line should contain one reaction SMILES.
Here is a simple example extending the partial AAM to a complete AAM. First generate the input data:
echo "CCC[Cl:1].[N:2]>>CCC[N:2].[Cl:1]" > testinput.txt
Next, run AAMUtils to expand the partial AAM.
python3 -m aamutils expand testinput.txt
The output is written to 'testinput_extended.json'.
cat testinput_extended.json
[
{
"input": "CCC[Cl:1].[N:2]>>CCC[N:2].[Cl:1]",
"expanded_aam": "[Cl:1][CH2:5][CH2:4][CH3:3].[NH3:2]>>[ClH:1].[NH2:2][CH2:3][CH2:4][CH3:5]",
"ilp_status": "Optimal",
"optimization_result": 4.0,
"invalid_reaction_center": false,
"reaction_edges": 4
}
]
Benchmark
To rerun the benchmarks from the paper use the benchmark.py
script. The
reported results can be reproduced by running the following commands:
(1) Extend partial reaction center (50%, 75% and 100% missing atoms)
python3 benchmark.py --remove-mode rc --remove-ratio 0.5 --seed 42
python3 benchmark.py --remove-mode rc --remove-ratio 0.75 --seed 42
python3 benchmark.py --remove-mode rc --remove-ratio 1 --seed 42
(2) Extend partial AAM with fully mapped RC
python3 benchmark.py --remove-mode keep_rc --remove-ratio 1 --seed 42
Functionality
Here is an overview of implemented functionality:
- SMILES to graph and graph to SMILES parsing
- Reaction center validity checks
- ITS graph generation
- Expand partial AAM to complete AAM on balanced reactions
- AAMing based on minimal chemical distance (MCD) for balanced reactions
License
This project is licensed under MIT License - see the License file for details.
Acknowledgments
This project has received funding from the European Unions Horizon Europe Doctoral Network programme under the Marie-Skłodowska-Curie grant agreement No 101072930 (TACsy -- Training Alliance for Computational)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file aamutils-0.0.7.tar.gz
.
File metadata
- Download URL: aamutils-0.0.7.tar.gz
- Upload date:
- Size: 1.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 86d195ed88cfa10bb8efb7b7bae57f0f1950e3312bb5a3f2af04f3c4a21fb7fb |
|
MD5 | e7d76a9d1ac6a772953590044b83ae07 |
|
BLAKE2b-256 | 7a54f4bcdd25ce23b6fbdbb7e79fec375deb2578621c31a83f0da8da563b5da8 |
File details
Details for the file aamutils-0.0.7-py3-none-any.whl
.
File metadata
- Download URL: aamutils-0.0.7-py3-none-any.whl
- Upload date:
- Size: 11.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4380d14370f194b26a44345fa6ad7d91d789a74752a27c16a6b31173e566fea |
|
MD5 | 34d45dc34a8082affab0ab17919d11e2 |
|
BLAKE2b-256 | a210b89fe8724d3a5d3039c6f8c3502a134e64a71ad66faa7e12e502e961803f |