Strain Filtering

From DISI
Revision as of 03:10, 15 February 2020 by Shuogu (talk | contribs)
Jump to navigation Jump to search

This is Strain Filtering version 1.1 (20200211). Please copy the code to your current directory.

$ cp -r /mnt/nfs/home/sgu/code/strainfilter .

To run the code, you need RDKit. You can follow the instruction to install RDKit: https://www.rdkit.org/docs/Install.html

On our cluster, you may source my environment.

$ source /nfs/home/sgu/anaconda3/etc/profile.d/conda.csh
$ conda activate my-rdkit-env

Currently, the code can handle db2/db2.gz and mol2 inputs. For example:

$ python Torsion_Strain.py test1.db2.gz
$ python Torsion_Strain.py test2.mol2

The output is a csv file, containing the total strain energy and detailed information of each dihedral sorted by its torsion energy.

You may be interested in Column 2 (total strain energy) and Column 6 (the maximum dihedral torsion energy), from which you can choose different thresholds to filter compounds. e.g.

$ awk -F"," '$2<6.5 && $6<1.8' test2_Torsion_Strain.csv

This example uses awk to output all the compounds with total strain energy <6.5 and every torsion energy <1.8.