logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

TFBS::Matrix::Alignment - class for alignment of PFM objects

Appendix

       The  rest  of the documentation details each of the object methods. Internal methods are preceded with an
       underscore.

   new
        Title   : new
        Usage   : my $alignment = TFBS::Matrix::Alignment->new(%args)
        Function: constructor for the TFBS::Matrix::Alignment object
        Returns : a new TFBS::Matrix::Alignment object
        Args    : # you must specify:

                  -pfm1,      # a TFBS::Matrix::PFM object
                  -pfm2,      # another TFBS::Matrix::PFM object
                   -binary,  # a valid path to the comparison algorithm (matrixalign)

                  #######

                  -ext_penalty            #OPTIONAL gap extension penalty in Needleman-Wunsch
                                           algorithmstring. Default 0.01
                  -open_penalty,          #OPTIONAL gap opening penalty in Needleman-Wunsch
                                           algorithmstring. Default 3.0

   score
        Title   : score
        Usage   : my $score = $alignmentobject->score();
        Function: access an alignment score (where each aligned position can contribute max 2)
        Returns : a floating point number
        Args    : none

   score
        Title   : gaps
        Usage   : my $nr_of_gaps = $alignmentobject->gaps();
        Function: access the number of gaps in an alignment
        Returns : an integer
        Args    : none

   length
        Title   : length
        Usage   : my $length = $alignmentobject->length();
        Function: access the length of an alignment (ie thenumber of aligned positions)
        Returns : an integer
        Args    : none

   strand
        Title   : strand
        Usage   : my $strand = $alignmentobject->strand();
        Function: access the oriantation of the aligned patterns:
                  ++= oriented as input
                  +-= second pattern is reverse-complemented
        Returns : a string
        Args    : none

   alignment
        Title   : alignment
        Usage   : my $alignment_string = $alignmentobject->alignment();
        Function: access a string describing the alignment
        Returns : an string, where each number refers to a position in respective PFM.
        Position numbering is according to orientation: ie if the second profile is
        reversed, position 1 corresponds to the last position in the input profile.
        Gaps are denoted as - .

        RXR-VDR           -       1       2       3       -     4      5     -
        PPARgamma-RXRal   1       2       3       4       5     6      7     8

        Args    : none

Author - Boris Lenhard

       Boris Lenhard <Boris.Lenhard@cgb.ki.se>

Description

       TFBS::Matrix::Alignment is a class for representing and performing pairwise alignments  of  profiles  (in
       the  form  of  TFBS::PFM  objects) Alignments are preformed using a semi-global variant of the Needleman-
       Wunsch algorithm that only permits the opening of one internal gap.  Fore  reference,  the  algorithm  is
       described in Sandelin et al Funct Integr Genomics. 2003 Jun 25

Feedback

       Please send bug reports and other comments to the author.

Name

       TFBS::Matrix::Alignment - class for alignment of PFM objects

Pod Errors

       Hey! Theabovedocumenthadsomecodingerrors,whichareexplainedbelow:

       Around line 39:
           You forgot a '=back' before '=head1'

perl v5.40.0                                       2024-10-20                       TFBS::Matrix::Alignment(3pm)

Synopsis

       •
        Making  an  alignment:  (See  documentation of individual TFBS::DB::* modules to learn how to connect to
        different types of pattern databases and retrieve TFBS::Matrix::* objects from them.)

            my $db_obj = TFBS::DB::JASPAR2->new
                            (-connect => ["dbi:mysql:JASPAR2:myhost",
                                          "myusername", "mypassword"]);
            my $pfm1 = $db_obj->get_Matrix_by_ID("M0001", "PFM");
            my $pfm2 = $db_obj->get_Matrix_by_ID("M0002", "PFM");

            my $alignment= new TFBS::Matrix::Alignment(
                                              -pfm1=>$pfm1,
                                              -pfm2=>$pfm2,
                                              -binary=>"/TFBS/Ext/matrix_aligner",
                                            );

See Also