Hide Show 123 lines of Pod
@ISA
=
qw(Bio::Tools::Run::PiseApplication)
;
Hide Show 14 lines of Pod
sub
new {
my
(
$class
,
$location
,
$email
,
@params
) =
@_
;
my
$self
=
$class
->SUPER::new(
$location
,
$email
);
$self
->{COMMAND} =
"combat"
;
$self
->{VERSION} =
"5.a"
;
$self
->{TITLE} =
"COMBAT"
;
$self
->{DESCRIPTION} =
"Comparison of coding DNA"
;
$self
->{OPT_EMAIL} = 0;
$self
->{AUTHORS} =
"Pedersen, Lyngso,Hein"
;
$self
->{REFERENCE} = [
"Christian N. S. Pedersen, Rune B. Lyngso and Jotun Hein. Comparison of coding DNA in Proceedings of the 9th Annual Symposium of Combinatorial Pattern Matching (CPM), 1998."
,
];
$self
->{_INTERFACE_STANDOUT} =
undef
;
$self
->{_STANDOUT_FILE} =
undef
;
$self
->{TOP_PARAMETERS} = [
"combat"
,
"sequence1"
,
"sequence2"
,
"output_aln"
,
"alignment_file"
,
"protein_distance_matrix"
,
"nucleotide_distance_matrix"
,
"protein_gap_open"
,
"protein_gap_ext"
,
"dna_gap_open"
,
"dna_gap_ext"
,
"results_files"
,
"gnuplot_call"
,
"gnuplot_commands"
,
];
$self
->{PARAMETERS_ORDER} = [
"combat"
,
"sequence1"
,
"sequence2"
,
"output_aln"
,
"alignment_file"
,
"protein_distance_matrix"
,
"nucleotide_distance_matrix"
,
"protein_gap_open"
,
"protein_gap_ext"
,
"dna_gap_open"
,
"dna_gap_ext"
,
"results_files"
,
"gnuplot_call"
,
"gnuplot_commands"
,
];
$self
->{TYPE} = {
"combat"
=>
'String'
,
"sequence1"
=>
'Sequence'
,
"sequence2"
=>
'Sequence'
,
"output_aln"
=>
'OutFile'
,
"alignment_file"
=>
'OutFile'
,
"protein_distance_matrix"
=>
'Excl'
,
"nucleotide_distance_matrix"
=>
'Excl'
,
"protein_gap_open"
=>
'Integer'
,
"protein_gap_ext"
=>
'Integer'
,
"dna_gap_open"
=>
'Integer'
,
"dna_gap_ext"
=>
'Integer'
,
"results_files"
=>
'Results'
,
"gnuplot_call"
=>
'String'
,
"gnuplot_commands"
=>
'String'
,
};
$self
->{FORMAT} = {
"combat"
=> {
"perl"
=>
'"cat $sequence2 >> $sequence1; combat control_file > distance.out ; combat_combine $sequence1 combat.aln"'
,
},
"sequence1"
=> {
"perl"
=>
'">inputfile\n\"$value\"\n"'
,
},
"sequence2"
=> {
"perl"
=>
'""'
,
},
"output_aln"
=> {
"perl"
=>
'">outputfile\n\"combat.aln\"\n"'
,
},
"alignment_file"
=> {
"perl"
=>
'""'
,
},
"protein_distance_matrix"
=> {
"perl"
=>
'">distance matrix\n\"/local/gensoft/lib/combat/$value" . "_distance.m\"\n"'
,
},
"nucleotide_distance_matrix"
=> {
"perl"
=>
'">nucleotide matrix\n\"/local/gensoft/lib/combat/nucleotide_distance$value.m\"\n"'
,
},
"protein_gap_open"
=> {
"perl"
=>
'">gap functions\\nprotein: $value"'
,
},
"protein_gap_ext"
=> {
"perl"
=>
'" + $value*k\\n"'
,
},
"dna_gap_open"
=> {
"perl"
=>
'"dna: $value"'
,
},
"dna_gap_ext"
=> {
"perl"
=>
'" + $value*k"'
,
},
"results_files"
=> {
},
"gnuplot_call"
=> {
"perl"
=>
'"; gnuplot < gnuplot_file"'
,
},
"gnuplot_commands"
=> {
"perl"
=>
'"set xtics 12,5.,1000\nset ytics 12,5.,1000\nset grid\nset terminal postscript\nset output \"combat.ps\"\nplot \"combat.aln\" with lines\n"'
,
},
};
$self
->{FILENAMES} = {
"results_files"
=>
'control_file gnuplot_file combat.ps distance.out'
,
};
$self
->{SEQFMT} = {
"sequence1"
=> [8],
"sequence2"
=> [8],
};
$self
->{GROUP} = {
"combat"
=> 0,
"sequence1"
=> 1,
"sequence2"
=> 0,
"output_aln"
=> 2,
"alignment_file"
=> 0,
"protein_distance_matrix"
=> 3,
"nucleotide_distance_matrix"
=> 4,
"protein_gap_open"
=> 5,
"protein_gap_ext"
=> 6,
"dna_gap_open"
=> 7,
"dna_gap_ext"
=> 8,
"gnuplot_call"
=> 100,
"gnuplot_commands"
=> 1,
};
$self
->{BY_GROUP_PARAMETERS} = [
"combat"
,
"sequence2"
,
"alignment_file"
,
"results_files"
,
"sequence1"
,
"gnuplot_commands"
,
"output_aln"
,
"protein_distance_matrix"
,
"nucleotide_distance_matrix"
,
"protein_gap_open"
,
"protein_gap_ext"
,
"dna_gap_open"
,
"dna_gap_ext"
,
"gnuplot_call"
,
];
$self
->{SIZE} = {
};
$self
->{ISHIDDEN} = {
"combat"
=> 1,
"sequence1"
=> 0,
"sequence2"
=> 0,
"output_aln"
=> 1,
"alignment_file"
=> 1,
"protein_distance_matrix"
=> 0,
"nucleotide_distance_matrix"
=> 0,
"protein_gap_open"
=> 0,
"protein_gap_ext"
=> 0,
"dna_gap_open"
=> 0,
"dna_gap_ext"
=> 0,
"results_files"
=> 0,
"gnuplot_call"
=> 1,
"gnuplot_commands"
=> 1,
};
$self
->{ISCOMMAND} = {
"combat"
=> 1,
"sequence1"
=> 0,
"sequence2"
=> 0,
"output_aln"
=> 0,
"alignment_file"
=> 0,
"protein_distance_matrix"
=> 0,
"nucleotide_distance_matrix"
=> 0,
"protein_gap_open"
=> 0,
"protein_gap_ext"
=> 0,
"dna_gap_open"
=> 0,
"dna_gap_ext"
=> 0,
"results_files"
=> 0,
"gnuplot_call"
=> 0,
"gnuplot_commands"
=> 0,
};
$self
->{ISMANDATORY} = {
"combat"
=> 0,
"sequence1"
=> 1,
"sequence2"
=> 1,
"output_aln"
=> 0,
"alignment_file"
=> 0,
"protein_distance_matrix"
=> 1,
"nucleotide_distance_matrix"
=> 1,
"protein_gap_open"
=> 1,
"protein_gap_ext"
=> 1,
"dna_gap_open"
=> 1,
"dna_gap_ext"
=> 1,
"results_files"
=> 0,
"gnuplot_call"
=> 0,
"gnuplot_commands"
=> 0,
};
$self
->{PROMPT} = {
"combat"
=>
""
,
"sequence1"
=>
"First Sequence"
,
"sequence2"
=>
"Second Sequence"
,
"output_aln"
=>
""
,
"alignment_file"
=>
""
,
"protein_distance_matrix"
=>
"Amino-acid distance matrix"
,
"nucleotide_distance_matrix"
=>
"Nucleotid distance matrix"
,
"protein_gap_open"
=>
"Gap open cost for protein"
,
"protein_gap_ext"
=>
"Gap extension cost for protein"
,
"dna_gap_open"
=>
"Gap open cost for dna"
,
"dna_gap_ext"
=>
"Gap extension cost for dna"
,
"results_files"
=>
""
,
"gnuplot_call"
=>
""
,
"gnuplot_commands"
=>
""
,
};
$self
->{ISSTANDOUT} = {
"combat"
=> 0,
"sequence1"
=> 0,
"sequence2"
=> 0,
"output_aln"
=> 0,
"alignment_file"
=> 1,
"protein_distance_matrix"
=> 0,
"nucleotide_distance_matrix"
=> 0,
"protein_gap_open"
=> 0,
"protein_gap_ext"
=> 0,
"dna_gap_open"
=> 0,
"dna_gap_ext"
=> 0,
"results_files"
=> 0,
"gnuplot_call"
=> 0,
"gnuplot_commands"
=> 0,
};
$self
->{VLIST} = {
"protein_distance_matrix"
=> [
'PAM60'
,
'PAM60'
,
'PAM120'
,
'PAM120'
,
'PAM250'
,
'PAM250'
,
'PAM350'
,
'PAM350'
,
'Blosum30'
,
'Blosum30'
,
'Blosum62'
,
'Blosum62'
,
'Blosum90'
,
'Blosum90'
,],
"nucleotide_distance_matrix"
=> [
'1'
,
'matrix 1'
,
'2'
,
'matrix 2'
,
'3'
,
'matrix 3'
,],
};
$self
->{FLIST} = {
};
$self
->{SEPARATOR} = {
};
$self
->{VDEF} = {
"output_aln"
=>
'"combat.aln"'
,
"alignment_file"
=>
'"combat.out"'
,
"protein_distance_matrix"
=>
'PAM60'
,
"nucleotide_distance_matrix"
=>
'1'
,
"protein_gap_open"
=>
'20'
,
"protein_gap_ext"
=>
'8'
,
"dna_gap_open"
=>
'8'
,
"dna_gap_ext"
=>
'2'
,
};
$self
->{PRECOND} = {
"combat"
=> {
"perl"
=>
'1'
},
"sequence1"
=> {
"perl"
=>
'1'
},
"sequence2"
=> {
"perl"
=>
'1'
},
"output_aln"
=> {
"perl"
=>
'1'
},
"alignment_file"
=> {
"perl"
=>
'1'
},
"protein_distance_matrix"
=> {
"perl"
=>
'1'
},
"nucleotide_distance_matrix"
=> {
"perl"
=>
'1'
},
"protein_gap_open"
=> {
"perl"
=>
'1'
},
"protein_gap_ext"
=> {
"perl"
=>
'1'
},
"dna_gap_open"
=> {
"perl"
=>
'1'
},
"dna_gap_ext"
=> {
"perl"
=>
'1'
},
"results_files"
=> {
"perl"
=>
'1'
},
"gnuplot_call"
=> {
"perl"
=>
'1'
},
"gnuplot_commands"
=> {
"perl"
=>
'1'
},
};
$self
->{CTRL} = {
};
$self
->{PIPEOUT} = {
"alignment_file"
=> {
'1'
=>
"readseq_ok_alig"
,
},
};
$self
->{WITHPIPEOUT} = {
};
$self
->{PIPEIN} = {
};
$self
->{WITHPIPEIN} = {
};
$self
->{ISCLEAN} = {
"combat"
=> 0,
"sequence1"
=> 0,
"sequence2"
=> 0,
"output_aln"
=> 0,
"alignment_file"
=> 0,
"protein_distance_matrix"
=> 0,
"nucleotide_distance_matrix"
=> 0,
"protein_gap_open"
=> 0,
"protein_gap_ext"
=> 0,
"dna_gap_open"
=> 0,
"dna_gap_ext"
=> 0,
"results_files"
=> 0,
"gnuplot_call"
=> 0,
"gnuplot_commands"
=> 0,
};
$self
->{ISSIMPLE} = {
"combat"
=> 0,
"sequence1"
=> 1,
"sequence2"
=> 1,
"output_aln"
=> 0,
"alignment_file"
=> 0,
"protein_distance_matrix"
=> 0,
"nucleotide_distance_matrix"
=> 0,
"protein_gap_open"
=> 1,
"protein_gap_ext"
=> 1,
"dna_gap_open"
=> 1,
"dna_gap_ext"
=> 1,
"results_files"
=> 0,
"gnuplot_call"
=> 0,
"gnuplot_commands"
=> 0,
};
$self
->{PARAMFILE} = {
"sequence1"
=>
"control_file"
,
"output_aln"
=>
"control_file"
,
"protein_distance_matrix"
=>
"control_file"
,
"nucleotide_distance_matrix"
=>
"control_file"
,
"protein_gap_open"
=>
"control_file"
,
"protein_gap_ext"
=>
"control_file"
,
"dna_gap_open"
=>
"control_file"
,
"dna_gap_ext"
=>
"control_file"
,
"gnuplot_commands"
=>
"gnuplot_file"
,
};
$self
->{COMMENT} = {
"sequence1"
=> [
" Each of the two sequences must describe an integer number ofcodon, i.e. the length of each sequence must be a multiple of three."
,
],
"sequence2"
=> [
" Each of the two sequences must describe an integer number ofcodon, i.e. the length of each sequence must be a multiple of three."
,
],
};
$self
->{SCALEMIN} = {
};
$self
->{SCALEMAX} = {
};
$self
->{SCALEINC} = {
};
$self
->{INFO} = {
};
$self
->_init_params(
@params
);
return
$self
;
}
1;