Révision 088cfdb3
b/dockOnSurf.sh | ||
---|---|---|
7 | 7 |
only_ref=false |
8 | 8 |
coads_box=false |
9 | 9 |
removeHs=false |
10 |
rmsd_threshold=0.01 |
|
10 | 11 |
|
11 | 12 |
for i in $@; do |
12 | 13 |
case $i in |
... | ... | |
24 | 25 |
coads_box=true;; |
25 | 26 |
-H|--remove-Hs) |
26 | 27 |
removeHs=true;; |
28 |
-t=*|--rmsd-threshold=*) |
|
29 |
rmsd_threshold="${i#*=}";; |
|
27 | 30 |
esac |
28 | 31 |
done |
29 | 32 |
|
... | ... | |
37 | 40 |
-b, --coadsorption-box \t When the surface file already contains an |
38 | 41 |
\t \t \t \t adsorbed molecule, it creates a box around it to |
39 | 42 |
\t \t \t \t prevent the second adsorbate to overlap the first. |
40 |
-H --remove-Hs \t \t Remove hydrogens for the RMSD comparison." |
|
43 |
-H, --remove-Hs \t \t Remove hydrogens for the RMSD comparison. |
|
44 |
-t=NUM, --rmsd-threshold=NUM \t Sets the threshold for the RMSD check of |
|
45 |
\t \t \t \t different structures." |
|
41 | 46 |
exit |
42 | 47 |
fi |
43 | 48 |
|
... | ... | |
84 | 89 |
if [ "$only_ads" = false ] && [ "$only_ref" = false ] ; then |
85 | 90 |
### Generation des conformeres |
86 | 91 |
|
87 |
${DockOnSurf_path}/modules/generation_conformeres.py $molecule 5000 $removeHs |
|
92 |
${DockOnSurf_path}/modules/generation_conformeres.py $molecule 5000 $removeHs $rmsd_threshold
|
|
88 | 93 |
echo ' -- CONFORMERS HAVE BEEN GENERATED --' |
89 |
|
|
94 |
|
|
90 | 95 |
### Conversion des fichiers .mol en .xyz |
91 | 96 |
|
92 | 97 |
${DockOnSurf_path}/modules/mol_to_xyz.sh $molecule |
b/modules/generation_conformeres.py | ||
---|---|---|
33 | 33 |
mol_input = sys.argv[1] #nom du fichier d'entree |
34 | 34 |
n = int(sys.argv[2]) #nombre de conformeres |
35 | 35 |
remove_hydrogens = sys.argv[3].lower() in ("yes", "true", "t", "1") # converts the input argument to a boolean |
36 |
rmsd_threshold = float(sys.argv[4]) |
|
36 | 37 |
|
37 | 38 |
m = Chem.MolFromMolFile('%s/%s.mol' % (Molecule_path, mol_input)) #lecture du fichier d'entree |
38 | 39 |
|
... | ... | |
67 | 68 |
else : |
68 | 69 |
if a != b : |
69 | 70 |
valeur = AllChem.GetBestRMS(m, m, prbId=b, refId=a) |
70 |
if valeur < 0.01: #valeur de RMSD limite en dessous de laquelle les conformeres sont consideres comme identiques
|
|
71 |
if valeur < rmsd_threshold: #valeur de RMSD limite en dessous de laquelle les conformeres sont consideres comme identiques
|
|
71 | 72 |
liste_suppr.append(a) |
72 | 73 |
|
73 | 74 |
|
Formats disponibles : Unified diff