Mercurial > repos > agpetit > calculate_diameter
annotate cut_trajectory.py @ 5:e504457035e5 draft
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
author | agpetit |
---|---|
date | Mon, 30 May 2022 14:21:51 +0000 |
parents | |
children | f1dd5d99ea2d |
rev | line source |
---|---|
5
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
1 #!/usr/bin/env python3 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
2 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
3 # coding: utf-8 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
4 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
5 The script allows to estimate the number of sub-trajectories to obtain. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
6 It also allows to split the trajectory into a number of sub-trajectories. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
7 # USAGE to estimate number of sub-trajectories : |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
8 # USAGE : cut_trajectory.py |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
9 -s : number of desired sub-trajectories (number or file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
10 -gro : .gro file -xtc : .xtc file -log : name of log file (optional) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
11 -d : output directory (optional) -o : name of output file (optional) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
12 -g : group for output (optional) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
13 -start : start time of the trajectory (optional) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
14 -end : end time of the trajectory (optional) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
15 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
16 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
17 __all__ = [] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
18 __author__ = "Agnès-Elisabeth Petit" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
19 __date__ = "29/04/2022" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
20 __version__ = "0.8" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
21 __copyright__ = "(c) 2022 CC-BY-NC-SA" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
22 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
23 # Library import |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
24 import argparse |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
25 import logging |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
26 import os |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
27 import subprocess |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
28 import sys |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
29 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
30 from joblib import Parallel, delayed |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
31 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
32 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
33 def test_setup(): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
34 global args |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
35 args = parse_arguments() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
36 args.verbose = True |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
37 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
38 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
39 def parse_arguments(): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
40 list_choices = [] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
41 [list_choices.append(str(x)) for x in range(17)] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
42 parser = argparse.ArgumentParser( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
43 description="The script allows to estimate the number of " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
44 "sub-trajectories to obtain. It also allows to split" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
45 " the trajectory into a number of sub-trajectories.", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
46 formatter_class=argparse.ArgumentDefaultsHelpFormatter, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
47 prefix_chars="-", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
48 add_help=True, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
49 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
50 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
51 "-v", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
52 "--verbose", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
53 action="store_true", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
54 help="""Information messages to stderr""", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
55 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
56 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
57 "-c", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
58 "--input_check", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
59 type=str, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
60 help=""".txt file obtained with gmx check -f. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
61 It contains information about the trajectory""", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
62 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
63 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
64 "-s", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
65 "--nbr_sub_traj", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
66 type=str, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
67 help="""numbers of sub_trajectories""", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
68 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
69 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
70 "-gro", "--gro_file", type=str, help="""My input .gro file""" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
71 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
72 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
73 "-xtc", "--xtc_file", type=str, help="""My input .xtc file""" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
74 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
75 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
76 "-log", "--log_output", type=str, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
77 default="log/cut_trajectory.log", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
78 help="""Output for log file. Default : |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
79 log/cut_trajectory.log""" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
80 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
81 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
82 "-d", "--output_directory", type=str, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
83 default="out/", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
84 help="""It's output Directory. Default : out/""" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
85 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
86 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
87 "-g", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
88 "--group_output", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
89 type=str, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
90 default="0", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
91 choices=list_choices, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
92 help="""Select group for output. 0 : system, 1: protein, 2: protein-H, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
93 3: C-alpha, 4: Backbone, 5: MainChain, 6: MainChain+Cb, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
94 7: MainChain+H, 8: SideChain, 9: SideChain-H, 10: Prot-Masses, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
95 11: non-Protein, 12: Other, 13: POPC, 14: POT, 15: CLA, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
96 16: TIP3""", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
97 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
98 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
99 "-start", "--start_traj", type=str, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
100 help="""Start of the trajectory to be cut""" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
101 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
102 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
103 "-end", "--end_traj", type=str, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
104 help="""End of the trajectory to be cut""" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
105 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
106 parser.add_argument( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
107 "-cpus", "--number_cpus", type=int, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
108 default=1, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
109 help="""Number of cpus. Default : 1""" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
110 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
111 return parser.parse_args() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
112 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
113 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
114 def search_nbr_steps_time_step(txt_file): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
115 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
116 Description : Keeping the number of frames of the complete trajectory and |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
117 the time between each frame. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
118 param txt_file: file obtained with gmx check. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
119 return: list that contains the number of frames of the complete trajectory |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
120 and time between each frame. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
121 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
122 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
123 logging.info("\nFunction search_nbr_steps_time_step") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
124 logging.info("The input file is " + txt_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
125 with open(txt_file, "r") as f: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
126 len_traj = "" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
127 time_step = "" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
128 for li in f: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
129 li = li.rstrip() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
130 if li.startswith("Step"): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
131 li2 = li.split() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
132 len_traj = int(li2[1]) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
133 time_step = int(li2[2]) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
134 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
135 logging.info("The length of the trajectory is " + str(len_traj)) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
136 logging.info( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
137 "The elapsed time between two steps is : " + str(time_step) + " ps" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
138 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
139 logging.info("End search_nbr_steps_time_step functions") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
140 return len_traj, time_step |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
141 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
142 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
143 def search_nbr_sub_traj(tsv_nb_sub_traj_file): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
144 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
145 Description: Obtaining the number of frames of the complete trajectory, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
146 the number of sub-trajectories to create, the time between each |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
147 frame and the number of frames per sub-trajectory. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
148 param tsv_nb_sub_traj_file: tsv file obtained with the estimation of |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
149 the number of sub-trajectories |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
150 return: list that contains the number of images of the complete trajectory, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
151 the number of sub-trajectories to create, the time between each image and |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
152 the number of images per sub-trajectory. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
153 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
154 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
155 logging.info("\nFunction search_nbr_sub_traj") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
156 logging.info("The input file is " + tsv_nb_sub_traj_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
157 list_number_sub_traj = [] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
158 with open(tsv_nb_sub_traj_file, "r") as f: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
159 for li in f: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
160 li = li.rstrip() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
161 if not li.startswith("Length"): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
162 list_number_sub_traj = li.split() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
163 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
164 logging.info("The length of complete trajectory is " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
165 + list_number_sub_traj[0]) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
166 logging.info( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
167 "The number of sub-trajectories required is " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
168 + list_number_sub_traj[1] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
169 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
170 logging.info( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
171 "The elapsed time between two steps is : " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
172 + list_number_sub_traj[2] + "ps" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
173 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
174 logging.info( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
175 "The number of frames per sub-trajectory is " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
176 + list_number_sub_traj[3] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
177 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
178 logging.info("End search_nbr_sub_traj function") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
179 list_number_sub_traj = [int(v) for v in list_number_sub_traj] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
180 return list_number_sub_traj |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
181 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
182 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
183 def launch_cut_traj(list_file, gro_file, xtc_file, out_dir, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
184 logging_file, n_group, n_cpus): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
185 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
186 Description: function that allows to split the trajectory |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
187 into a number of sub-trajectories |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
188 param list_file: list that contains the number of images of the complete |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
189 trajectory, the number of sub-trajectories to create, the time between |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
190 each image and the number of images per sub-trajectory. |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
191 param gro_file: .gro file |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
192 param xtc_file: .xtc file |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
193 param out_dir: output directory |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
194 param logging_file: name of log file |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
195 return: None |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
196 output: create a number of sub-trajectories |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
197 """ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
198 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
199 logging.info("\nFunction cut_traj") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
200 logging.info("The length of the trajectory is " + str(list_file[0]) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
201 + " frames") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
202 logging.info( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
203 "The elapsed time between two steps is : " + str(list_file[2]) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
204 + " ps" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
205 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
206 logging.info("The number of sub-trajectories required is " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
207 + str(list_file[1])) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
208 logging.info(".gro file is " + gro_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
209 logging.info(".xtc file is " + xtc_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
210 logging.info("Output directory is " + str(out_dir)) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
211 logging.info("The name of .log file is " + logging_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
212 logging.info("The number of cpus used is " + str(n_cpus)) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
213 if not os.path.exists(out_dir): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
214 os.makedirs(out_dir) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
215 n_sub_traj = list_file[1] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
216 times_step = list_file[2] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
217 nb_frame_sub_traj = list_file[3] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
218 prefix_name_file = os.path.basename(gro_file).rsplit(".", 1)[0] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
219 start = list_file[4] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
220 end = list_file[4] - 1 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
221 dict_sub_traj = {} |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
222 for nb_traj in range(n_sub_traj): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
223 end += nb_frame_sub_traj |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
224 value = str(start * times_step) + "," + str(end * times_step) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
225 dict_sub_traj[nb_traj + 1] = value |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
226 start += nb_frame_sub_traj |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
227 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
228 for k, v in dict_sub_traj.items(): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
229 logging.info("Sub_trajectory " + str(k) + " starts at " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
230 + v.split(",")[0] + " ps and ends at " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
231 + v.split(",")[1] + " ps") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
232 logging.info("Launch gmx trjconv\n") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
233 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
234 list_log_files = Parallel(n_jobs=n_cpus)( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
235 delayed(cut_traj)(out_dir, prefix_name_file, k, v, n_group, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
236 xtc_file, gro_file, logging_file, args) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
237 for k, v in dict_sub_traj.items()) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
238 log_file_complete = open(logging_file, "a") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
239 for f in list_log_files: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
240 open_f = open(f, "r") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
241 [log_file_complete.write(li) for li in open_f.readlines()] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
242 open_f.close() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
243 os.remove(f) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
244 log_file_complete.close() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
245 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
246 logging_file = "" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
247 Parallel(n_jobs=n_cpus)(delayed(cut_traj)(out_dir, prefix_name_file, k, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
248 v, n_group, xtc_file, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
249 gro_file, logging_file, args) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
250 for k, v in dict_sub_traj.items()) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
251 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
252 logging.info("End cut_traj function") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
253 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
254 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
255 def cut_traj(out_dir, prefix_name_file, k, v, n_group, xtc_file, gro_file, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
256 logging_file, arguments): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
257 out_traj = (str(out_dir) + prefix_name_file + "_traj_" + str(k) + ".xtc") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
258 bash_command = ("echo " + n_group + " | gmx trjconv -f " + xtc_file |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
259 + " -s " + gro_file + " -b " + str(v.split(",")[0]) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
260 + " -e " + str(v.split(",")[1]) + " -o " + out_traj) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
261 if arguments.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
262 log_directory = "log/tmp/" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
263 logging_file = (log_directory |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
264 + logging_file.rsplit("/", 1)[1].split(".")[0] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
265 + "_" + str(k) + ".log") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
266 if not os.path.exists(log_directory): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
267 os.makedirs(log_directory) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
268 f_log = open(logging_file, "w") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
269 subprocess.run(bash_command, shell=True, stdout=f_log, stderr=f_log) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
270 f_log.close() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
271 return logging_file |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
272 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
273 subprocess.run(bash_command, shell=True) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
274 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
275 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
276 if __name__ == "__main__": |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
277 args = parse_arguments() |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
278 log_file = "" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
279 if args.output_directory.endswith("/"): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
280 out_directory = args.output_directory |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
281 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
282 out_directory = args.output_directory + "/" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
283 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
284 if "/" in args.log_output: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
285 log_dir = args.log_output.rsplit("/", 1)[0] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
286 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
287 log_dir = "log/" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
288 log_file = args.log_output |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
289 if not os.path.exists(log_dir): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
290 os.makedirs(log_dir) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
291 if os.path.isfile(log_file): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
292 os.remove(log_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
293 if args.log_output: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
294 logging.basicConfig( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
295 filename=log_file, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
296 format="%(levelname)s - %(message)s", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
297 level=logging.INFO, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
298 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
299 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
300 logging.basicConfig( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
301 filename=log_file, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
302 format="%(levelname)s - %(message)s", |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
303 level=logging.INFO, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
304 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
305 logging.info("verbose mode on") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
306 gro = "" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
307 xtc = "" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
308 list_nbr_sub_traj = [] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
309 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
310 logging.info("Start cut trajectory") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
311 if args.gro_file and ".gro" in args.gro_file: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
312 gro = os.path.basename(args.gro_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
313 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
314 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
315 logging.error("The entry is not a file or is not a .gro file") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
316 sys.exit(1) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
317 if args.xtc_file and ".xtc" in args.xtc_file: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
318 xtc = os.path.basename(args.xtc_file) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
319 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
320 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
321 logging.error("The entry is not a file or is not a .xtc file") |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
322 sys.exit(1) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
323 if ".tsv" in args.nbr_sub_traj: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
324 list_nbr_sub_traj = search_nbr_sub_traj(args.nbr_sub_traj) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
325 nb_sub_traj = list_nbr_sub_traj[1] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
326 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
327 nb_sub_traj = int(args.nbr_sub_traj) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
328 nb_steps_time_step = search_nbr_steps_time_step( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
329 args.input_check) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
330 if args.start_traj and args.start_traj != "": |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
331 start_trajectory = int(args.start_traj) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
332 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
333 start_trajectory = 0 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
334 if args.end_traj and args.end_traj != "": |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
335 end_trajectory = int(args.end_traj) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
336 else: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
337 end_trajectory = nb_steps_time_step[0] - 1 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
338 len_trajectory = end_trajectory - start_trajectory + 1 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
339 list_nbr_sub_traj = [ |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
340 len_trajectory, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
341 nb_sub_traj, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
342 nb_steps_time_step[1], |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
343 len_trajectory // nb_sub_traj, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
344 start_trajectory, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
345 end_trajectory, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
346 ] |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
347 if nb_sub_traj >= (int(list_nbr_sub_traj[0]) // 2): |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
348 if args.verbose: |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
349 logging.error( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
350 "The number of averages requested is greater than " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
351 "half the trajectory size" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
352 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
353 print( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
354 "Number of requested sub-trajectories too large compared " |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
355 "to the size of the trajectory" |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
356 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
357 sys.exit(2) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
358 nb_cpus = args.number_cpus |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
359 launch_cut_traj( |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
360 list_nbr_sub_traj, gro, xtc, out_directory, log_file, |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
361 args.group_output, nb_cpus |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
362 ) |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
363 |
e504457035e5
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff
changeset
|
364 |