.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Bio::Tools::Run::Alignment::DBA 3pm" .TH Bio::Tools::Run::Alignment::DBA 3pm "2023-01-22" "perl v5.36.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Bio::Tools::Run::Alignment::DBA \- Object for the alignment of two sequences using the DNA Block Aligner program. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& use Bio::Tools::Run::Alignment::DBA; \& \& # Build a dba alignment factory \& my @params = (\*(AqmatchA\*(Aq => 0.75, \& \*(AqmatchB\*(Aq => \*(Aq0.55\*(Aq, \& \*(Aqdymem\*(Aq =>\*(Aqlinear\*(Aq); \& my $factory = Bio::Tools::Run::Alignment::DBA\->new(@params); \& \& # Pass the factory a filename with 2 sequences to be aligned. \& $inputfilename = \*(Aqt/data/dbaseq.fa\*(Aq; \& # @hsps is an array of GenericHSP objects \& my @hsps = $factory\->align($inputfilename); \& \& # or \& my @files = (\*(Aqt/data/dbaseq1.fa\*(Aq,\*(Aqt/data/dbaseq2.fa\*(Aq); \& my @hsps = $factory\->align(\e@files); \& \& # or where @seq_array is an array of Bio::Seq objects \& $seq_array_ref = \e@seq_array; \& my @hsps = $factory\->align($seq_array_ref); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\s-1DNA\s0 Block Aligner program (\s-1DBA\s0) was developed by Ewan Birney. \s-1DBA\s0 is part of the Wise package available at . .PP You will need to enable dba to find the dba program. This can be done in a few different ways: .PP 1. Define an environmental variable \s-1WISEDIR:\s0 .PP .Vb 1 \& export WISEDIR =/usr/local/share/wise2.2.0 .Ve .PP 2. Include a definition of an environmental variable \s-1WISEDIR\s0 in every script that will use \s-1DBA\s0.pm: .PP .Vb 1 \& $ENV{WISEDIR} = \*(Aq/usr/local/share/wise2.2.20\*(Aq; .Ve .PP 3. Make sure that the dba application is in your \s-1PATH.\s0 .SH "FEEDBACK" .IX Header "FEEDBACK" .SS "Mailing Lists" .IX Subsection "Mailing Lists" User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to one of the Bioperl mailing lists. Your participation is much appreciated. .PP .Vb 2 \& bioperl\-l@bioperl.org \- General discussion \& http://bioperl.org/wiki/Mailing_lists \- About the mailing lists .Ve .SS "Support" .IX Subsection "Support" Please direct usage questions or support issues to the mailing list: .PP \&\fIbioperl\-l@bioperl.org\fR .PP rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible. .SS "Reporting Bugs" .IX Subsection "Reporting Bugs" Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via the web: .PP .Vb 1 \& http://redmine.open\-bio.org/projects/bioperl/ .Ve .SH "AUTHOR \- Shawn Hoon" .IX Header "AUTHOR - Shawn Hoon" Email shawnh@fugu\-sg.org .SH "APPENDIX" .IX Header "APPENDIX" The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _ .SS "program_name" .IX Subsection "program_name" .Vb 5 \& Title : program_name \& Usage : $factory>program_name() \& Function: holds the program name \& Returns: string \& Args : None .Ve .SS "program_dir" .IX Subsection "program_dir" .Vb 5 \& Title : program_dir \& Usage : $factory\->program_dir(@params) \& Function: returns the program directory, obtained from ENV variable. \& Returns: string \& Args : .Ve .SS "version" .IX Subsection "version" .Vb 6 \& Title : version \& Usage : exit if $prog\->version() < 1.8 \& Function: Determine the version number of the program \& Example : \& Returns : float or undef \& Args : none .Ve .SS "align" .IX Subsection "align" .Vb 12 \& Title : align \& Usage : \& $inputfilename = \*(Aqt/data/seq.fa\*(Aq; \& @hsps = $factory\->align($inputfilename); \& or \& #@seq_array is array of Seq objs \& $seq_array_ref = \e@seq_array; \& @hsps = $factory\->align($seq_array_ref); \& or \& my @files = (\*(Aqt/data/seq1.fa\*(Aq,\*(Aqt/data/seq2.fa\*(Aq); \& @hsps = $factory\->align(\e@files); \& Function: Perform a DBA alignment \& \& \& Returns : An array of Bio::Search::HSP::GenericHSP objects \& Args : Name of a file containing a set of 2 fasta sequences \& or else a reference to an array to 2 Bio::Seq objects. \& or else a reference to an array of 2 file \& names containing 1 fasta sequence each \& \& Throws an exception if argument is not either a string (eg a \& filename) or a reference to an array of 2 Bio::Seq objects. If \& argument is string, throws exception if file corresponding to string \& name can not be found. If argument is Bio::Seq array, throws \& exception if less than two sequence objects are in array. .Ve .SS "_run" .IX Subsection "_run" .Vb 7 \& Title : _run \& Usage : Internal function, not to be called directly \& Function: makes actual system call to dba program \& Example : \& Returns : nothing; dba output is written to a temp file \& Args : Name of a file containing a set of unaligned fasta sequences \& and hash of parameters to be passed to dba .Ve .SS "_parse_results" .IX Subsection "_parse_results" .Vb 6 \& Title : _\|_parse_results \& Usage : Internal function, not to be called directly \& Function: Parses dba output \& Example : \& Returns : an reference to an array of GenericHSPs \& Args : the name of the output file .Ve .SS "\fB_setinput()\fP" .IX Subsection "_setinput()" .Vb 6 \& Title : _setinput \& Usage : Internal function, not to be called directly \& Function: Create input file for dba program \& Example : \& Returns : name of file containing dba data input \& Args : Seq or Align object reference or input file name .Ve .SS "\fB_setparams()\fP" .IX Subsection "_setparams()" .Vb 7 \& Title : _setparams \& Usage : Internal function, not to be called directly \& Function: Create parameter inputs for dba program \& Example : \& Returns : parameter string to be passed to dba \& during align or profile_align \& Args : name of calling object .Ve .SS "\fB_query_seq()\fP" .IX Subsection "_query_seq()" .Vb 6 \& Title : _query_seq \& Usage : Internal function, not to be called directly \& Function: get/set for the query sequence \& Example : \& Returns : \& Args : .Ve .SS "\fB_subject_seq()\fP" .IX Subsection "_subject_seq()" .Vb 5 \& Title : _subject_seq \& Usage : Internal function, not to be called directly \& Function: get/set for the subject sequence \& Example : \& Returns : \& \& Args : .Ve