annotate hr2_manager.pl @ 3:78afd7f439f3 draft default tip

master branch Updating with tag :CI_COMMIT_TAG - - Fxx
author fgiacomoni
date Wed, 15 Feb 2023 15:57:49 +0000
parents 23970530a518
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
1 #!perl
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
2
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
3 ## script : hr2_manager.pl
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
4 ## VERSIONS :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
5 # - 01/03/2019 : Fix P issue, permit more flexible atom settings and add requirements for conda auto managing.
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
6 # - 09/12/2022 : Fix "Additional atomes not taken into account" - Ticket issue #7
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
7 # - 15/02/2023 : New feature - optionnal managing max atom value
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
8
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
9 #=============================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
10 # Included modules and versions
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
11 #=============================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
12 ## Perl modules
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
13 use strict ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
14 use warnings ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
15 use Carp qw (cluck croak carp) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
16
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
17 use Data::Dumper ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
18 use Getopt::Long ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
19 use POSIX ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
20 use FindBin ; ## Allows you to locate the directory of original perl script
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
21
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
22 ## Dedicate Perl Modules (Home made...)
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
23 use lib $FindBin::Bin ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
24 my $binPath = $FindBin::Bin ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
25 use lib::hr qw( :ALL ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
26 ## PFEM Perl Modules
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
27 use lib::conf qw( :ALL ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
28 use lib::csv qw( :ALL ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
29
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
30 ## Initialized values
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
31 use vars qw(%parametre);
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
32 my $help = undef ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
33 my ( $input_file, $line_header, $col_id, $col_mass ) = ( undef, undef, undef, undef ) ; # manage input option file of masses
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
34 my ( $mass ) = ( undef ) ; # manage input option masses list
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
35 my ( $tolerance, $mode, $charge, $has_golden_rules, $atomes, $atomes_basic ) = ( undef, undef, undef, undef, undef, undef ) ; # manage params
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
36 my ( $C13_max_value, $C12_max_value, $H_max_value, $N_max_value, $O_max_value, $P_max_value, $S_max_value, $F_max_value, $Cl_max_value, $K_max_value, $Br_max_value, $Na_max_value) = (undef, undef,undef,undef,undef,undef,undef,undef,undef,undef,undef,undef) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
37 my ($customAtomValues) = (undef) ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
38 my ( $output_csv, $output_html ) = ( undef, undef) ; # manage ouputs
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
39 my $verbose = 2 ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
40
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
41 #=============================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
42 # Manage EXCEPTIONS
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
43 #=============================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
44 &GetOptions ( "h" => \$help, # HELP
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
45 "input:s" => \$input_file,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
46 "colId:i" => \$col_id,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
47 "nbHeader:i" => \$line_header,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
48 "colmass:i" => \$col_mass,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
49 "masse:s" => \$mass,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
50 "tolerance:f" => \$tolerance,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
51 "mode:s" => \$mode,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
52 "charge:i" => \$charge,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
53 "regleOr:s" => \$has_golden_rules,
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
54 "atomes_basic:s"=> \$atomes_basic, # [basic atoms like CNOHP]
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
55 "atomes_sup:s" => \$atomes,
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
56 #"customAtomValues:s"=> \$customAtomValues,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
57
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
58 "C12_max_value:i" => \$C12_max_value, # OPTIONNAL
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
59 "C13_max_value:i" => \$C13_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
60 "H_max_value:i" => \$H_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
61 "N_max_value:i" => \$N_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
62 "O_max_value:i" => \$O_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
63 "P_max_value:i" => \$P_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
64 "S_max_value:i" => \$S_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
65 "F_max_value:i" => \$F_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
66 "Cl_max_value:i" => \$Cl_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
67 "K_max_value:i" => \$K_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
68 "Br_max_value:i" => \$Br_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
69 "Na_max_value:i" => \$Na_max_value,
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
70
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
71 "output1:s" => \$output_csv,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
72 "outputView:s" => \$output_html,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
73 "verbose:i" => \$verbose,
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
74 ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
75
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
76 #=============================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
77 # EXCEPTIONS
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
78 #=============================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
79 $help and &help ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
80
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
81 #=============================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
82 # MAIN SCRIPT
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
83 #=============================================================================
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
84
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
85 #print "CUSTOM C12: $C12_max_value\n" if (defined $C12_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
86 #print "CUSTOM H: $H_max_value if (defined $H_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
87 #print "CUSTOM N: $N_max_value if (defined $N_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
88 #print "CUSTOM O: $O_max_value if (defined $O_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
89 #print "CUSTOM P: $P_max_value if (defined $P_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
90 #print "CUSTOM S: $S_max_value if (defined $S_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
91 #print "CUSTOM F: $F_max_value if (defined $F_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
92 #print "CUSTOM Cl: $Cl_max_value if (defined $Cl_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
93 #print "CUSTOM K: $K_max_value if (defined $K_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
94 #print "CUSTOM Br: $Br_max_value if (defined $Br_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
95 #print "CUSTOM Na: $Na_max_value if (defined $Na_max_value) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
96 #print "CUSTOM C13: $C13_max_value if (defined $C13_max_value) ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
97
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
98 ## -------------- Conf file and verbose ------------------------ :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
99 my ( $CONF ) = ( undef ) ; ## verbose level is 3 for debugg
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
100 my $time_start = time ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
101
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
102 foreach my $conf ( <$binPath/*.cfg> ) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
103 my $oConf = lib::conf::new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
104 $CONF = $oConf->as_conf($conf) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
105 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
106 ## --------------- Global parameters ---------------- :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
107 my ( $ids, $masses, $hr_cmds, $results, $parsed_results ) = ( undef, undef, undef, undef, undef ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
108 my $complete_rows = undef ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
109 my ($hr_atoms_list, $hr_atoms_and_ranges, $set_tol, ) = (undef, undef, undef, ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
110
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
111 ## Check and manage params
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
112 my $ohr = lib::hr->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
113
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
114 ## set tolerance
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
115 $set_tol = $ohr->manage_tolerance( \$tolerance, \$CONF->{'tolerance'} ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
116
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
117 ## check HR exe envt :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
118 my $hr_check = $ohr->check_hr_exe(\$CONF->{'HR2_EXE'}, \$CONF->{'HR2_VERSION'}) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
119 if (!defined $hr_check ) { croak "No hr exe available (wrong path) or wrong version will be used -- end of script\n" ; }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
120
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
121 ## manage atoms and their ranges
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
122 #$hr_atoms_list = $ohr->manage_atoms(\$atomes, \$CONF->{'DEFAULT_ATOMS'}) ; ## DEPRECATED
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
123
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
124 # manage atoms and their ranges with a hash structure
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
125
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
126 my $AtomsFullConf = $ohr->manageAtomsConf($CONF, $C12_max_value, $C13_max_value, $H_max_value, $N_max_value, $O_max_value, $P_max_value, $S_max_value, $F_max_value, $Cl_max_value, $K_max_value, $Br_max_value, $Na_max_value ) ;
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
127
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
128 my $atomsCurrentConf = $ohr->manage_atoms_and_ranges($AtomsFullConf, $atomes_basic, $atomes) ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
129
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
130 ## Parsing input file with masses/ids or unik mass :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
131 ## manage only one mass
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
132 if ( ( defined $mass ) and ( $mass ne "" ) and ( $mass > 0 ) ) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
133 $ids = ['mass_01'] ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
134 $masses = [$mass] ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
135
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
136 } ## END IF
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
137 ## manage csv file containing list of masses
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
138 elsif ( ( defined $input_file ) and ( $input_file ne "" ) and ( -e $input_file ) ) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
139
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
140 ## parse all csv for later : output csv build
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
141 my $ocsv_input = lib::csv->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
142 my $complete_csv = $ocsv_input->get_csv_object( "\t" ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
143 $complete_rows = $ocsv_input->parse_csv_object($complete_csv, \$input_file) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
144
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
145 ## parse csv ids and masses
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
146 my $is_header = undef ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
147 my $ocsv = lib::csv->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
148 my $csv = $ocsv->get_csv_object( "\t" ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
149 if ( ( defined $line_header ) and ( $line_header > 0 ) ) { $is_header = 'yes' ; } else{ $is_header = 'no' ; }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
150 $masses = $ocsv->get_value_from_csv_multi_header( $csv, $input_file, $col_mass, $is_header, $line_header ) ; ## retrieve mz values on csv
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
151 $ids = $ocsv->get_value_from_csv_multi_header( $csv, $input_file, $col_id, $is_header, $line_header ) ; ## retrieve ids values on csv
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
152
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
153 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
154 else {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
155 croak "Can't work with HR2 : missing input file or mass (list of masses, ids)\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
156 } ## end ELSE
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
157
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
158 ## check using golden rules
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
159 if ( $has_golden_rules eq 'NO') { $has_golden_rules = undef ; }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
160
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
161 ## ---------------- launch queries -------------------- :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
162
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
163 ## prepare cmd
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
164 foreach my $mz (@{ $masses }) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
165 ## computes mass
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
166 my $ohr_mode = lib::hr->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
167 my ( $exact_mass ) = $ohr_mode->manage_mode( \$mode, \$charge, \$CONF->{'electron'}, \$CONF->{'proton'}, \$mz ) ;
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
168 print "Current MZ $$exact_mass send to HR\n" if $verbose == 3 ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
169 ## build exe line
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
170 my $ohr_exe = lib::hr->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
171 my $hr_cmd = $ohr_exe->config_hr_exe( \$CONF->{'HR2_EXE'}, \$tolerance, $exact_mass, \$has_golden_rules, \$atomsCurrentConf ) ;
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
172 print "\t$$hr_cmd\n" if $verbose == 3 ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
173 push(@{$hr_cmds}, $$hr_cmd) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
174 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
175
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
176 ## MultiThreading execution of Hr :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
177 my $threads = lib::hr->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
178 my $hr_object = lib::hr->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
179 if ( $hr_object->can('hr_exe') ) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
180 my $method = $hr_object->can('hr_exe') ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
181 $results = $threads->threading_hr_exe( $method, $hr_cmds) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
182
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
183 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
184
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
185 ## MultiThreading parsing of Hr outputs :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
186 my $hrres_object = lib::hr->new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
187 if ( $hrres_object->can('hr_out_parser') ) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
188 my $method = $hr_object->can('hr_out_parser') ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
189 if ( defined $results ) { $parsed_results = $threads->threading_hr_exe( $method, $results ) ; }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
190 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
191
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
192 ## -------------- Produce HTML/CSV output ------------------ :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
193 my $search_condition = 'Mode used: '.$mode.' / Charge: +'.$charge.' / Mass tolerance: '.$$set_tol.' / Composition: '.$atomsCurrentConf ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
194 ## Uses N mz and theirs entries per page (see config file).
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
195 # how many pages you need with your input mz list?
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
196 my $nb_pages_for_html_out = ceil( scalar(@{$masses} ) / $CONF->{HTML_ENTRIES_PER_PAGE} ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
197
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
198 if ( ( defined $output_html ) and ( defined $parsed_results ) ) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
199 my $oHtml = lib::hr::new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
200 my ($tbody_object) = $oHtml->set_html_tbody_object( $nb_pages_for_html_out, $CONF->{HTML_ENTRIES_PER_PAGE} ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
201 ($tbody_object) = $oHtml->add_mz_to_tbody_object($tbody_object, $CONF->{HTML_ENTRIES_PER_PAGE}, $masses, $ids, $parsed_results ) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
202 ($tbody_object) = $oHtml->add_entries_to_tbody_object($tbody_object, $parsed_results) ;
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
203
2
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
204 #print Dumper $tbody_object ;
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
205
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
206 my $html_file = $binPath.'/'.$CONF->{'HTML_TEMPLATE'} ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
207 my $output = $oHtml->write_html_skel(\$output_html, $tbody_object, $nb_pages_for_html_out, $search_condition, $html_file, $CONF->{'JS_GALAXY_PATH'}, $CONF->{'CSS_GALAXY_PATH'}) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
208
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
209 } ## END IF
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
210 else {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
211 croak "Can't create a HTML output for HMDB : no result found or your output file is not defined\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
212 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
213
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
214 if ( ( defined $output_csv ) and ( defined $parsed_results ) ) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
215 # produce a csv based on METLIN format
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
216 my $ocsv = lib::hr::new() ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
217 if (defined $input_file) {
2
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
218 my $hr_matrix = undef ;
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
219 if ( ( defined $line_header ) and ( $line_header == 1 ) ) { $hr_matrix = $ocsv->set_hr_matrix_object('hr2', $masses, $parsed_results ) ; }
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
220 elsif ( ( defined $line_header ) and ( $line_header == 0 ) ) { $hr_matrix = $ocsv->set_hr_matrix_object(undef, $masses, $parsed_results ) ; }
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
221
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
222 $hr_matrix = $ocsv->add_hr_matrix_to_input_matrix($complete_rows, $hr_matrix) ;
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
223 $ocsv->write_csv_skel(\$output_csv, $hr_matrix) ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
224 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
225 elsif (defined $mass) {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
226 $ocsv->write_csv_one_mass($masses, $ids, $parsed_results, $output_csv) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
227 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
228 } ## END IF
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
229 else {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
230 # croak "Can't create a tabular output for HR2 : no result found or your output file is not defined\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
231 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
232
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
233
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
234
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
235 ### VERBOSE OUTPUTs
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
236 if ( $verbose == 3 ) {
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
237 print "\n\n-- Conf file contains :\n" ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
238 print Dumper $CONF ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
239 print "-- Atoms input list :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
240 print Dumper $atomes_basic ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
241 print "-- Suppl. atoms input list :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
242 print Dumper $atomes ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
243 print "-- HR envt ready :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
244 print Dumper $hr_check ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
245 print "-- Atoms and ranges :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
246 print Dumper $atomsCurrentConf ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
247 print "-- Tolerance :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
248 print Dumper $set_tol ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
249 print "-- Complete input file :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
250 print Dumper $complete_rows ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
251 print "-- Inputs initiales masses :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
252 print Dumper $masses ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
253 print "-- Inputs initiales ids :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
254 print Dumper $ids ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
255 print "-- Hr_Cmds :\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
256 print Dumper $hr_cmds ;
2
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
257 # print "-- Hr_Results :\n" ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
258 # print Dumper $results ;
2
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
259 # print "-- Hr_parsed Results :\n" ;
23970530a518 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 1
diff changeset
260 # print Dumper $parsed_results ;
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
261
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
262 my $nb_results = scalar (@{$results}) ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
263 print "-- Hr_Results return : $nb_results\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
264 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
265
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
266 my $time_end = time ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
267 my $seconds = $time_end-$time_start ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
268 print "\n------ Time used in threaded mode by 6 : $seconds seconds --------\n\n" ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
269
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
270
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
271
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
272
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
273
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
274
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
275 #====================================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
276 # Help subroutine called with -h option
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
277 # number of arguments : 0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
278 # Argument(s) :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
279 # Return : 1
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
280 #====================================================================================
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
281 sub help {
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
282 print STDERR "
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
283 hr2_manager.pl
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
284
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
285 # hr2_manager is a script to elucide chemical formula by their accurate masses. The HiRes program is integrate in this package
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
286 # Input : a accurate mass or a file of masses
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
287 # Authors : Lain Pavot, Marion Landi and Franck Giacomoni
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
288 # Email : franck.giacomoni\@inrae.fr
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
289 # Version : 1.1.2
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
290 # Created : 01/12/2011
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
291 # Last Update : 06/12/2022
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
292 USAGE :
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
293 hr2_manager.pl -h or
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
294 hr2_manager.pl -input [cvs file of masses] -colId [int] -colmass [int] -nbHeader [int] -tolerance [float] -mode [positive, neutral or negative] -charge [int] -regleOr [yes or no] -atome [P, S, F, Cl, K, B, A, 1 ] -output1 [csv file] -outputView [html file]
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
295 hr2_manager.pl -masse [double] -tolerance [float] -mode [positive, neutral or negative] -charge [int] -regleOr [yes or no] -atomes_basic [C, N, O, P, H ] -atomes_sup [S, F, Cl, K, B, A, 1 ] -output1 [csv file] -outputView [html file]
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
296 " ;
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
297 exit(1);
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
298 }
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
299
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
300 ## END of script - F Giacomoni
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
301
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
302 __END__
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
303
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
304 =head1 NAME
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
305
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
306 hr2_manager.pl -- script for launch / manage hr2 binary
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
307
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
308 =head1 USAGE
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
309
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
310 hr2_manager.pl -h or
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
311 hr2_manager.pl -input [cvs file of masses] -colId [int] -colmass [int] -nbHeader [int] -tolerance [float] -mode [positive, neutral or negative] -charge [int] -regleOr [yes or no] -atomes_basic [C, N, O, P, H ] -atomes_sup [S, F, Cl, K, B, A, 1 ] -output1 [csv file] -outputView [html file]
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
312 hr2_manager.pl -masse [double] -tolerance [float] -mode [positive, neutral or negative] -charge [int] -regleOr [yes or no] -atomes_basic [C, N, O, P, H ] -atomes_sup [S, F, Cl, K, B, A, 1 ] -output1 [csv file] -outputView [html file]
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
313
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
314 =head1 SYNOPSIS
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
315
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
316 This script manages hr2 binary which elucids raw formula with exact masses.
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
317
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
318 =head1 DESCRIPTION
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
319
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
320 This main program is a module to elucidate chemical formula with HiRes program. Source is available on Fiehn lab web.
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
321
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
322 =over 4
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
323
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
324 =item B<function01>
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
325
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
326 =item B<function02>
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
327
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
328 =back
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
329
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
330 =head1 AUTHOR
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
331
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
332 Franck Giacomoni E<lt>franck.giacomoni@inrae.frE<gt>
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
333 Marion Landi E<lt>marion.landi@inrae.frE<gt>
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
334 Lain Pavot E<lt>lain.pavot@inrae.frE<gt>
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
335
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
336 =head1 LICENSE
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
337
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
338 This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
339
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
340 =head1 VERSION
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
341
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
342 version 1 : 18/07/2012
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
343
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
344 version 2 : 02/10/2013
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
345
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
346 version 3 : 20/02/2014
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
347
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
348 version 4 : 01/03/2019
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
349
1
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
350 version 5 : 09/12/2022
e2cbcf6fa22e master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 0
diff changeset
351
3
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
352 version 6 : 15/02/2023
78afd7f439f3 master branch Updating with tag :CI_COMMIT_TAG - - Fxx
fgiacomoni
parents: 2
diff changeset
353
0
86296c048e46 Init repository for [hr2]
fgiacomoni
parents:
diff changeset
354 =cut