Mercurial > repos > bgruening > openbabel_structure_distance_finder
annotate ob_addh.py @ 5:8302ab092300 draft default tip
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
| author | bgruening | 
|---|---|
| date | Thu, 15 Aug 2024 11:01:11 +0000 | 
| parents | 49242402887b | 
| children | 
| rev | line source | 
|---|---|
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
1 #!/usr/bin/env python | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
2 """ | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
3 Input: Molecule file | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
4 Output: Molecule file with hydrogen atoms added at the target pH. | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
5 """ | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
6 import argparse | 
| 
3
 
49242402887b
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 1fe240ef0064a1a4a66d9be1ccace53824280b75"
 
bgruening 
parents: 
2 
diff
changeset
 | 
7 import sys | 
| 
2
 
4c9d6b47045c
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 944ea4bb8a9cd4244152a4a4fecd0485fabc2ad0"
 
bgruening 
parents: 
0 
diff
changeset
 | 
8 | 
| 
 
4c9d6b47045c
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 944ea4bb8a9cd4244152a4a4fecd0485fabc2ad0"
 
bgruening 
parents: 
0 
diff
changeset
 | 
9 from openbabel import openbabel, pybel | 
| 
5
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
10 | 
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
11 openbabel.obErrorLog.StopLogging() | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
12 | 
| 
3
 
49242402887b
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 1fe240ef0064a1a4a66d9be1ccace53824280b75"
 
bgruening 
parents: 
2 
diff
changeset
 | 
13 | 
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
14 def parse_command_line(argv): | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
15 parser = argparse.ArgumentParser() | 
| 
5
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
16 parser.add_argument("--iformat", type=str, default="sdf", help="input file format") | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
17 parser.add_argument( | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
18 "-i", "--input", type=str, required=True, help="input file name" | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
19 ) | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
20 parser.add_argument( | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
21 "-o", "--output", type=str, required=True, help="output file name" | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
22 ) | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
23 parser.add_argument( | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
24 "--polar", | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
25 action="store_true", | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
26 default=False, | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
27 help="Add hydrogen atoms only to polar atoms", | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
28 ) | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
29 parser.add_argument( | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
30 "--pH", type=float, default="7.4", help="Specify target pH value" | 
| 
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
31 ) | 
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
32 return parser.parse_args() | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
33 | 
| 
3
 
49242402887b
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 1fe240ef0064a1a4a66d9be1ccace53824280b75"
 
bgruening 
parents: 
2 
diff
changeset
 | 
34 | 
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
35 def addh(args): | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
36 outfile = pybel.Outputfile(args.iformat, args.output, overwrite=True) | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
37 for mol in pybel.readfile(args.iformat, args.input): | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
38 if mol.OBMol.NumHvyAtoms() > 5: | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
39 mol.removeh() | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
40 mol.OBMol.AddHydrogens(args.polar, True, args.pH) | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
41 outfile.write(mol) | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
42 outfile.close() | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
43 | 
| 
3
 
49242402887b
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 1fe240ef0064a1a4a66d9be1ccace53824280b75"
 
bgruening 
parents: 
2 
diff
changeset
 | 
44 | 
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
45 def __main__(): | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
46 """ | 
| 
5
 
8302ab092300
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit d9c51279c061a1da948a2582d5b502ca7573adbf
 
bgruening 
parents: 
3 
diff
changeset
 | 
47 Add hydrogen atoms at a certain pH value | 
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
48 """ | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
49 args = parse_command_line(sys.argv) | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
50 addh(args) | 
| 
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
51 | 
| 
3
 
49242402887b
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 1fe240ef0064a1a4a66d9be1ccace53824280b75"
 
bgruening 
parents: 
2 
diff
changeset
 | 
52 | 
| 
 
49242402887b
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 1fe240ef0064a1a4a66d9be1ccace53824280b75"
 
bgruening 
parents: 
2 
diff
changeset
 | 
53 if __name__ == "__main__": | 
| 
0
 
c066b5accacf
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/openbabel commit 6c84abdd07f292048bf2194073e2e938e94158c4"
 
bgruening 
parents:  
diff
changeset
 | 
54 __main__() | 
