Mercurial > repos > bgruening > rxdock_sort_filter
annotate rbdock.py @ 1:7be0793dd448 draft
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit e9c627440028cfd2c743462927672e0c5e3576aa"
author | bgruening |
---|---|
date | Sat, 25 Apr 2020 08:59:22 -0400 |
parents | 475cde209992 |
children |
rev | line source |
---|---|
0
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
1 import subprocess |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
2 import argparse |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
3 |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
4 def main(): |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
5 parser = argparse.ArgumentParser(description='Simple wrapper for rbdock') |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
6 parser.add_argument('-n', '--num', type=int, help='Number of docking poses to generate') |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
7 parser.add_argument('-s', '--seed', type=int, help='Random seed') |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
8 args = parser.parse_args() |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
9 |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
10 cmd = ['rbdock', '-i', 'ligands.sdf', '-r', 'receptor.prm', '-p', 'dock.prm', '-n', str(args.num), '-o', 'rdock_output'] |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
11 if args.seed != None: |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
12 cmd += ['-s', str(args.seed)] |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
13 |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
14 ps = subprocess.Popen(cmd, stdout=subprocess.PIPE) |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
15 |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
16 error_counter = 0 |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
17 for stdout_line in iter(ps.stdout.readline, ''): |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
18 if 'RBT_DOCKING_ERROR' in str(stdout_line): |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
19 error_counter += 1 |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
20 if error_counter == 10: |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
21 print(ps.stdout) |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
22 exit(23) |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
23 if ps.poll() != None: |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
24 print(ps.stdout) |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
25 exit(int(ps.poll())) |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
26 |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
27 if __name__ == "__main__": |
475cde209992
"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/chemicaltoolbox/rxdock commit bb19570293b920983b6856b30b42203a09543bc5"
bgruening
parents:
diff
changeset
|
28 main() |