annotate estimate_nb_sub_trajectories.py @ 14:1f08a90393be draft default tip

"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit 83670d9ceed855c9f58e0fa63a682edcaace5354-dirty"
author agpetit
date Mon, 11 Jul 2022 13:13:06 +0000
parents bff6c4ff9a68
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
1 #!/usr/bin/env python3
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
2
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
3 # coding: utf-8
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
4 """
7f1b1530d0fb "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.
7f1b1530d0fb "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.
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
7 # USAGE : estimate_nb_sub_trajectories.py -c : file obtaining with gmx check
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
8 -log : name of log file (optional) -d : output directory (optional)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
9 -o : name of output file (optional)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
10 -f : desired number of frames per sub-trajectory (optional)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
11 -start : start time of the trajectory (optional)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
12 -end : end time of the trajectory (optional)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
13 """
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
14
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
15 __all__ = []
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
16 __author__ = "Agnès-Elisabeth Petit"
14
1f08a90393be "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit 83670d9ceed855c9f58e0fa63a682edcaace5354-dirty"
agpetit
parents: 10
diff changeset
17 __date__ = "01/06/2022"
1f08a90393be "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit 83670d9ceed855c9f58e0fa63a682edcaace5354-dirty"
agpetit
parents: 10
diff changeset
18 __version__ = "1.0"
6
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
19 __copyright__ = "(c) 2022 CC-BY-NC-SA"
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
20
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
21 # Library import
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
22 import argparse
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
23 import logging
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
24 import os
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
25 import sys
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
26
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
27 import numpy as np
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
28
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
29
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
30 def test_setup():
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
31 global args
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
32 args = parse_arguments()
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
33 args.verbose = True
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
34
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
35
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
36 def parse_arguments():
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
37 parser = argparse.ArgumentParser(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
38 description="The script allows to estimate the number of "
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
39 "sub-trajectories to obtain. It also allows to split"
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
40 " the trajectory into a number of sub-trajectories.",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
41 formatter_class=argparse.ArgumentDefaultsHelpFormatter,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
42 prefix_chars="-",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
43 add_help=True,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
44 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
45 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
46 "-v",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
47 "--verbose",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
48 action="store_true",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
49 help="""Information messages to stderr""",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
50 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
51 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
52 "-c",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
53 "--input_check",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
54 type=str,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
55 nargs=1,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
56 help=""".txt file obtained with gmx check -f.
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
57 It contains information about the trajectory""",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
58 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
59 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
60 "-log", "--log_output", type=str,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
61 default="log/estimate_nb_sub_trajectories.log",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
62 help="""Output for log file. Default :
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
63 log/estimate_nb_sub_trajectories.log"""
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
64 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
65 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
66 "-d", "--output_directory", type=str, nargs=1,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
67 default="./",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
68 help="""It's output Directory. Default : ./"""
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
69 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
70 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
71 "-o",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
72 "--output_file",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
73 type=str,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
74 default="estimated_number_of_sub_trajectories.tsv",
10
bff6c4ff9a68 "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit 434f3e872798e786f0c6a88939455692f711496c"
agpetit
parents: 6
diff changeset
75 help="""Output file. Default :
bff6c4ff9a68 "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit 434f3e872798e786f0c6a88939455692f711496c"
agpetit
parents: 6
diff changeset
76 estimated_number_of_sub_trajectories.tsv""",
6
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
77 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
78 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
79 "-f",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
80 "--nb_frames",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
81 type=int,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
82 default=30,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
83 help="""Number of frames per sub-trajectory. Default : 30""",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
84 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
85 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
86 "-start", "--start_traj", type=str,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
87 help="""Start of the trajectory to be cut"""
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
88 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
89 parser.add_argument(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
90 "-end", "--end_traj", type=str,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
91 help="""End of the trajectory to be cut"""
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
92 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
93 return parser.parse_args()
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
94
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
95
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
96 def search_nbr_steps_time_step(txt_file):
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
97 """
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
98 Description : Keeping the number of frames of the complete trajectory and
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
99 the time between each frame.
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
100 param txt_file: file obtained with gmx check.
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
101 return: list that contains the number of frames of the complete trajectory
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
102 and time between each frame.
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
103 """
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
104 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
105 logging.info("\nFunction search_nbr_steps_time_step")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
106 logging.info("The input file is " + txt_file)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
107 with open(txt_file, "r") as f:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
108 len_traj = ""
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
109 time_step = ""
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
110 for li in f:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
111 li = li.rstrip()
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
112 if li.startswith("Step"):
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
113 li2 = li.split()
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
114 len_traj = int(li2[1])
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
115 time_step = int(li2[2])
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
116 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
117 logging.info("The length of the trajectory is " + str(len_traj))
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
118 logging.info(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
119 "The elapsed time between two steps is : " + str(time_step) + " ps"
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
120 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
121 logging.info("End search_nbr_steps_time_step functions")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
122 return len_traj, time_step
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
123
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
124
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
125 def estimate_nbr_sub_trajectories(nbr_step_time_step, nbr_frames_traj,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
126 out_file):
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
127 """
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
128 Description: Creation of a tsv file that contains the number of frames
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
129 of the complete trajectory, the number of sub-trajectories to create,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
130 the duration between each frame and the number of frames
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
131 per sub-trajectory.
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
132 param nbr_step_time_step: list which contains the number of frames of
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
133 the complete trajectory and the time between each frame
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
134 param nbr_frames_traj: number of frames per sub-trajectory
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
135 param out_file: output file name
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
136 return: list that contains the number of frames of the complete trajectory,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
137 the number of sub-trajectories to create, the duration between
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
138 each frame and the number of frames per sub-trajectory.
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
139 output: tsv file
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
140 """
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
141 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
142 logging.info("\nFunction estimate_nbr_means")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
143 logging.info("The length of the trajectory is " +
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
144 str(nbr_step_time_step[0]))
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
145 logging.info(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
146 "The elapsed time between two steps is : "
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
147 + str(nbr_step_time_step[1])
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
148 + " ps"
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
149 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
150 logging.info("The output file is " + str(out_file))
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
151 name_columns = [
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
152 "Length_trajectory (frames)",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
153 "Number_sub_trajectories",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
154 "Time_steps (ps)",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
155 "Number_frames_per_sub_trajectory",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
156 "Start_trajectory (frames)",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
157 "End_trajectory (frames)",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
158 ]
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
159 time_step = nbr_step_time_step[1]
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
160 if nbr_step_time_step[2] is not None:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
161 start_traj = nbr_step_time_step[2]
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
162 else:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
163 start_traj = 0
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
164 if nbr_step_time_step[3] is not None:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
165 end_traj = nbr_step_time_step[3]
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
166 else:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
167 end_traj = nbr_step_time_step[0] - 1
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
168 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
169 logging.info(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
170 "The first frame of the trajectory is the number "
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
171 + str(start_traj)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
172 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
173 logging.info("The first frame of the trajectory is the number "
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
174 + str(end_traj))
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
175 len_traj = end_traj - start_traj + 1
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
176 n_sub_traj = len_traj // nbr_frames_traj
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
177 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
178 logging.info("The estimated number of sub-trajectories is : "
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
179 + str(n_sub_traj))
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
180 list_values = [
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
181 str(len_traj),
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
182 str(n_sub_traj),
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
183 str(time_step),
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
184 str(nbr_frames_traj),
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
185 str(start_traj),
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
186 str(end_traj),
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
187 ]
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
188 tab_values = np.asarray([name_columns, list_values])
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
189 np.savetxt(out_file, tab_values, delimiter="\t", fmt="%s")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
190 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
191 logging.info("Save table in the file : " + str(out_file))
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
192 logging.info("End estimate_nbr_sub_trajectories function")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
193
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
194
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
195 if __name__ == "__main__":
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
196 args = parse_arguments()
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
197 if args.output_directory[0].endswith("/"):
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
198 out_directory = args.output_directory[0]
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
199 else:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
200 out_directory = args.output_directory[0] + "/"
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
201 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
202 if "/" in args.log_output:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
203 log_dir = args.log_output.rsplit("/", 1)[0]
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
204 else:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
205 log_dir = "log/"
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
206 log_file = args.log_output
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
207 if not os.path.exists(log_dir):
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
208 os.makedirs(log_dir)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
209 if os.path.isfile(log_file):
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
210 os.remove(log_file)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
211 if args.log_output:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
212 logging.basicConfig(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
213 filename=log_file,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
214 format="%(levelname)s - %(message)s",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
215 level=logging.INFO,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
216 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
217 else:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
218 logging.basicConfig(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
219 filename=log_file,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
220 format="%(levelname)s - %(message)s",
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
221 level=logging.INFO,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
222 )
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
223 logging.info("verbose mode on")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
224 nb_frames_traj = args.nb_frames
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
225 if args.start_traj and args.start_traj != "":
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
226 start_trajectory = int(args.start_traj)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
227 else:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
228 start_trajectory = None
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
229 if args.end_traj and args.end_traj != "":
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
230 end_trajectory = int(args.end_traj)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
231 else:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
232 end_trajectory = None
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
233 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
234 logging.info("Start estimate number sub-trajectories")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
235 output_file = args.output_file
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
236 if not args.input_check:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
237 print("Please enter the file created with 'gmx_check -f'")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
238 if args.verbose:
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
239 logging.error("Please enter the file created with 'gmx_check -f'")
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
240 sys.exit(1)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
241 nb_steps_time_step = list(search_nbr_steps_time_step(
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
242 args.input_check[0]))
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
243 nb_steps_time_step.append(start_trajectory)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
244 nb_steps_time_step.append(end_trajectory)
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
245 output_file = out_directory + output_file
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
246 estimate_nbr_sub_trajectories(nb_steps_time_step, nb_frames_traj,
7f1b1530d0fb "planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
agpetit
parents:
diff changeset
247 output_file)