1
# $Id: satellites.pm,v 1.6 2006/07/04 22:23:35 mauricio Exp $
2
# BioPerl module for Bio::Tools::Run::PiseApplication::satellites
4
# Cared for by Catherine Letondal <letondal@pasteur.fr>
6
# For copyright and disclaimer see below.
8
# POD documentation - main docs before the code
12
Bio::Tools::Run::PiseApplication::satellites
20
Bio::Tools::Run::PiseApplication::satellites
24
satellites identifying satellites and periodic repetitions in biological sequence s (constrained version) (MF. Sagot, G. Myers, E. Poiret)
30
http://bioweb.pasteur.fr/seqanal/interfaces/satellites.html
31
for available values):
40
Alphabets and score system (-a)
53
Minimum length of repeats (minlen)
56
Maximum length of repeats (maxlen)
59
Maximum number of errors allowed between each repeat and the model for a satellite (not more than 10% of the model length) (maxerr)
62
Insertions and deletions allowed (indel)
65
Maximum number of 'bad' repeats between 2 'good' ones (not more than 5) (maxjump)
68
Minimum number of repeats a satellite must have (quorum)
71
Use scores instead of matrix (usematrix)
74
Score attributed to a match for the final scoring of a model (scorematch)
77
Score attributed to a substitution for the final scoring of a model (scoresub)
80
Score attributed to an indel for the final scoring of a model (scoregap)
83
Filter threshold (threshold)
86
Print threshold (i.e minimum score for printing a model) (threscore)
89
Inverted occurences allowed (inverted)
102
User feedback is an integral part of the evolution of this and other
103
Bioperl modules. Send your comments and suggestions preferably to
104
the Bioperl mailing list. Your participation is much appreciated.
106
bioperl-l@bioperl.org - General discussion
107
http://bioperl.org/wiki/Mailing_lists - About the mailing lists
109
=head2 Reporting Bugs
111
Report bugs to the Bioperl bug tracking system to help us keep track
112
of the bugs and their resolution. Bug reports can be submitted via the
115
http://bugzilla.open-bio.org/
119
Catherine Letondal (letondal@pasteur.fr)
123
Copyright (C) 2003 Institut Pasteur & Catherine Letondal.
126
This module is free software; you can redistribute it and/or modify
127
it under the same terms as Perl itself.
131
This software is provided "as is" without warranty of any kind.
139
http://bioweb.pasteur.fr/seqanal/interfaces/satellites.html
143
Bio::Tools::Run::PiseApplication
147
Bio::Tools::Run::AnalysisFactory::Pise
151
Bio::Tools::Run::PiseJob
158
package Bio::Tools::Run::PiseApplication::satellites;
162
use Bio::Tools::Run::PiseApplication;
164
@ISA = qw(Bio::Tools::Run::PiseApplication);
169
Usage : my $satellites = Bio::Tools::Run::PiseApplication::satellites->new($location, $email, @params);
170
Function: Creates a Bio::Tools::Run::PiseApplication::satellites object.
171
This method should not be used directly, but rather by
172
a Bio::Tools::Run::AnalysisFactory::Pise instance.
173
my $factory = Bio::Tools::Run::AnalysisFactory::Pise->new();
174
my $satellites = $factory->program('satellites');
176
Returns : An instance of Bio::Tools::Run::PiseApplication::satellites.
181
my ($class, $location, $email, @params) = @_;
182
my $self = $class->SUPER::new($location, $email);
184
# -- begin of definitions extracted from /local/gensoft/lib/Pise/5.a/PerlDef/satellites.pm
186
$self->{COMMAND} = "satellites";
187
$self->{VERSION} = "5.a";
188
$self->{TITLE} = "satellites";
190
$self->{DESCRIPTION} = "identifying satellites and periodic repetitions in biological sequence s (constrained version)";
192
$self->{OPT_EMAIL} = 0;
194
$self->{AUTHORS} = "MF. Sagot, G. Myers, E. Poiret";
196
$self->{_INTERFACE_STANDOUT} = undef;
197
$self->{_STANDOUT_FILE} = undef;
199
$self->{TOP_PARAMETERS} = [
230
$self->{PARAMETERS_ORDER} = [
233
"seq", # Sequence File
234
"alphabet", # Alphabets and score system (-a)
241
"minlen", # Minimum length of repeats (minlen)
242
"maxlen", # Maximum length of repeats (maxlen)
243
"maxerr", # Maximum number of errors allowed between each repeat and the model for a satellite (not more than 10% of the model length) (maxerr)
244
"indel", # Insertions and deletions allowed (indel)
245
"maxjump", # Maximum number of 'bad' repeats between 2 'good' ones (not more than 5) (maxjump)
246
"quorum", # Minimum number of repeats a satellite must have (quorum)
247
"usematrix", # Use scores instead of matrix (usematrix)
248
"scorematch", # Score attributed to a match for the final scoring of a model (scorematch)
249
"scoresub", # Score attributed to a substitution for the final scoring of a model (scoresub)
250
"scoregap", # Score attributed to an indel for the final scoring of a model (scoregap)
251
"threshold", # Filter threshold (threshold)
252
"threscore", # Print threshold (i.e minimum score for printing a model) (threscore)
253
"inverted", # Inverted occurences allowed (inverted)
255
"xml", # XML output (xml)
262
"satellites" => 'String',
263
"param" => 'Results',
265
"alphabet" => 'Excl',
266
"outputbase" => 'String',
267
"scoreN" => 'String',
268
"maxsym" => 'String',
269
"resultsfiles" => 'Results',
272
"minlen" => 'Integer',
273
"maxlen" => 'Integer',
274
"maxerr" => 'Integer',
276
"maxjump" => 'Integer',
277
"quorum" => 'Integer',
278
"usematrix" => 'Switch',
279
"scorematch" => 'Integer',
280
"scoresub" => 'Integer',
281
"scoregap" => 'Integer',
282
"threshold" => 'Integer',
283
"threscore" => 'Integer',
284
"inverted" => 'Switch',
285
"ngroup" => 'String',
287
"xmldtdcopy" => 'String',
288
"dtdfile" => 'Results',
294
"perl" => ' "sat -p params" ',
299
"perl" => '" -f $value"',
302
"perl" => '" -a /local/gensoft/lib/satellites/alphabets/$value"',
305
"perl" => ' "outputbase: results\\n" ',
308
"perl" => ' "scoreN: 0\\n" ',
311
"perl" => ' "maxsym: 0\\n" ',
316
"perl" => ' "minrange: $minlen\\nmaxrange: $maxlen\\n" ',
319
"perl" => '"gap: $maxerr\\n"',
322
"perl" => '"minlen: $value\\n"',
325
"perl" => '"maxlen: $value\\n"',
328
"perl" => '"maxerr: $value\\n"',
331
"perl" => '($value)? "indel: 1\\n" : "indel: 0\\n" ',
334
"perl" => '"maxjump: $value\\n"',
337
"perl" => '"quorum: $value\\n"',
340
"perl" => '($value)? "usematrix: 0\\n" : "usematrix: 1\\n"',
343
"perl" => '"scorematch: $value\\n"',
346
"perl" => '"scoresub: $value\\n"',
349
"perl" => '"scoregap: $value\\n"',
352
"perl" => '"threshold: $value\\n"',
355
"perl" => '"threscore: $value\\n"',
358
"perl" => '($value)? "inverted: 1\\n" : "inverted: 0\\n" ',
361
"perl" => ' "ngroup: 27\\n1 A\\n2 B\\n3 C\\n4 D\\n5 E\\n6 F\\n7 G\\n8 H\\n9 I\\n10 J\\n11 K\\n12 L\\n13 M\\n14 N\\n15 O\\n16 P\\n17 Q\\n18 R\\n19 S\\n20 T\\n21 U\\n22 V\\n23 W\\n24 X\\n25 Y\\n26 Z\\n27 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z\\n" ',
364
"perl" => '($value)? "xml: 1\\n" : "" ',
367
"perl" => '"; cp /local/gensoft/lib/satellites/satellites.dtd ."',
374
$self->{FILENAMES} = {
376
"resultsfiles" => 'results*',
377
"dtdfile" => 'satellites.dtd',
396
$self->{BY_GROUP_PARAMETERS} = [
431
$self->{ISHIDDEN} = {
462
$self->{ISCOMMAND} = {
493
$self->{ISMANDATORY} = {
527
"seq" => "Sequence File",
528
"alphabet" => "Alphabets and score system (-a)",
532
"resultsfiles" => "",
535
"minlen" => "Minimum length of repeats (minlen)",
536
"maxlen" => "Maximum length of repeats (maxlen)",
537
"maxerr" => "Maximum number of errors allowed between each repeat and the model for a satellite (not more than 10% of the model length) (maxerr)",
538
"indel" => "Insertions and deletions allowed (indel)",
539
"maxjump" => "Maximum number of 'bad' repeats between 2 'good' ones (not more than 5) (maxjump)",
540
"quorum" => "Minimum number of repeats a satellite must have (quorum)",
541
"usematrix" => "Use scores instead of matrix (usematrix)",
542
"scorematch" => "Score attributed to a match for the final scoring of a model (scorematch)",
543
"scoresub" => "Score attributed to a substitution for the final scoring of a model (scoresub)",
544
"scoregap" => "Score attributed to an indel for the final scoring of a model (scoregap)",
545
"threshold" => "Filter threshold (threshold)",
546
"threscore" => "Print threshold (i.e minimum score for printing a model) (threscore)",
547
"inverted" => "Inverted occurences allowed (inverted)",
549
"xml" => "XML output (xml)",
555
$self->{ISSTANDOUT} = {
588
"alphabet" => ['dna.alphab','DNA','prot.alphab','protein identity','blosum62.alphab','blosum62','pam250.alphab','pam250',],
595
$self->{SEPARATOR} = {
600
"alphabet" => 'dna.alphab',
611
"threshold" => '800',
619
"satellites" => { "perl" => '1' },
620
"param" => { "perl" => '1' },
621
"seq" => { "perl" => '1' },
622
"alphabet" => { "perl" => '1' },
623
"outputbase" => { "perl" => '1' },
624
"scoreN" => { "perl" => '1' },
625
"maxsym" => { "perl" => '1' },
626
"resultsfiles" => { "perl" => '1' },
627
"range" => { "perl" => '1' },
628
"gap" => { "perl" => '1' },
629
"minlen" => { "perl" => '1' },
630
"maxlen" => { "perl" => '1' },
631
"maxerr" => { "perl" => '1' },
632
"indel" => { "perl" => '1' },
633
"maxjump" => { "perl" => '1' },
634
"quorum" => { "perl" => '1' },
635
"usematrix" => { "perl" => '1' },
636
"scorematch" => { "perl" => '1' },
637
"scoresub" => { "perl" => '1' },
638
"scoregap" => { "perl" => '1' },
639
"threshold" => { "perl" => '1' },
640
"threscore" => { "perl" => '1' },
641
"inverted" => { "perl" => '1' },
642
"ngroup" => { "perl" => '1' },
643
"xml" => { "perl" => '1' },
656
'$maxlen > 50' => "Maximum value : 50",
661
'($maxlen > 10 && $maxerr > (($maxlen / 100) * 10)) || ($maxlen <= 10 && $maxerr > 1)' => "The number of errors may not be more than 10% of the model length",
666
'$maxjump > 5' => "The number of 'bad' repeats may not be more than 5",
671
'$value < 0' => "please enter a non-negative integer value",
681
$self->{WITHPIPEOUT} = {
689
$self->{WITHPIPEIN} = {
724
$self->{ISSIMPLE} = {
755
$self->{PARAMFILE} = {
756
"outputbase" => "params",
757
"scoreN" => "params",
758
"maxsym" => "params",
761
"minlen" => "params",
762
"maxlen" => "params",
763
"maxerr" => "params",
765
"maxjump" => "params",
766
"quorum" => "params",
767
"usematrix" => "params",
768
"scorematch" => "params",
769
"scoresub" => "params",
770
"scoregap" => "params",
771
"threshold" => "params",
772
"threscore" => "params",
773
"inverted" => "params",
774
"ngroup" => "params",
781
"i.e having more than the maximum number of errors allowed",
784
"Corresponds to min_repeat in the paper",
787
"If unset, will use the score matrix, otherwise will use scorematch and scoresub.",
799
"Set it to 0 for guaranteed exhaustive search.",
800
"Suggestion: set it to 800 for 10%-15% error rate.",
803
"Suggestion: for a flexible search, if the scoring values are the ones suggested, set it to 50.",
804
"For a more pertinent search, set it to 100.",
809
$self->{SCALEMIN} = {
813
$self->{SCALEMAX} = {
817
$self->{SCALEINC} = {
825
# -- end of definitions extracted from /local/gensoft/lib/Pise/5.a/PerlDef/satellites.pm
829
$self->_init_params(@params);
836
1; # Needed to keep compiler happy