Class SimpleSequencePair<S extends Sequence<C>,​C extends Compound>

    • Constructor Detail

      • SimpleSequencePair

        public SimpleSequencePair​(AlignedSequence<S,​C> query,
                                  AlignedSequence<S,​C> target)
        Creates a pair profile for the given already aligned sequences.
        Parameters:
        query - the first sequence of the pair
        target - the second sequence of the pair
        Throws:
        java.lang.IllegalArgumentException - if sequences differ in size
      • SimpleSequencePair

        public SimpleSequencePair​(S query,
                                  S target,
                                  java.util.List<AlignedSequence.Step> sx,
                                  java.util.List<AlignedSequence.Step> sy)
        Creates a pair profile for the given sequences with a global alignment.
        Parameters:
        query - the first sequence of the pair
        target - the second sequence of the pair
        sx - lists whether the query sequence aligns a Compound or gap at each index of the alignment
        sy - lists whether the target sequence aligns a Compound or gap at each index of the alignment
        Throws:
        java.lang.IllegalArgumentException - if alignments differ in size or given sequences do not fit in alignments
      • SimpleSequencePair

        public SimpleSequencePair​(S query,
                                  S target,
                                  java.util.List<AlignedSequence.Step> sx,
                                  int xb,
                                  int xa,
                                  java.util.List<AlignedSequence.Step> sy,
                                  int yb,
                                  int ya)
        Creates a pair profile for the given sequences with a local alignment.
        Parameters:
        query - the first sequence of the pair
        target - the second sequence of the pair
        sx - lists whether the query sequence aligns a Compound or gap at each index of the alignment
        xb - number of Compounds skipped in the query sequence before the aligned region
        xa - number of Compounds skipped in the query sequence after the aligned region
        sy - lists whether the target sequence aligns a Compound or gap at each index of the alignment
        yb - number of Compounds skipped in the target sequence before the aligned region
        ya - number of Compounds skipped in the target sequence after the aligned region
        Throws:
        java.lang.IllegalArgumentException - if alignments differ in size or given sequences do not fit in alignments
    • Method Detail

      • getCompoundInQueryAt

        public C getCompoundInQueryAt​(int alignmentIndex)
        Description copied from interface: SequencePair
        Returns the Compound in query sequence at given column index in alignment.
        Specified by:
        getCompoundInQueryAt in interface SequencePair<S extends Sequence<C>,​C extends Compound>
        Parameters:
        alignmentIndex - column index in alignment
        Returns:
        the query sequence element
      • getCompoundInTargetAt

        public C getCompoundInTargetAt​(int alignmentIndex)
        Description copied from interface: SequencePair
        Returns the Compound in target sequence at given column index in alignment.
        Specified by:
        getCompoundInTargetAt in interface SequencePair<S extends Sequence<C>,​C extends Compound>
        Parameters:
        alignmentIndex - column index in alignment
        Returns:
        the target sequence element
      • getIndexInQueryAt

        public int getIndexInQueryAt​(int alignmentIndex)
        Description copied from interface: SequencePair
        Returns the query index corresponding to a given alignment column.
        Specified by:
        getIndexInQueryAt in interface SequencePair<S extends Sequence<C>,​C extends Compound>
        Parameters:
        alignmentIndex - column index in alignment
        Returns:
        index in query Sequence
      • getIndexInTargetAt

        public int getIndexInTargetAt​(int alignmentIndex)
        Description copied from interface: SequencePair
        Returns the target index corresponding to a given alignment column.
        Specified by:
        getIndexInTargetAt in interface SequencePair<S extends Sequence<C>,​C extends Compound>
        Parameters:
        alignmentIndex - column index in alignment
        Returns:
        index in target Sequence
      • getNumIdenticals

        public int getNumIdenticals()
        Description copied from interface: SequencePair
        Returns the number of indices for which both the query and target sequences have an identical Compound.
        Specified by:
        getNumIdenticals in interface SequencePair<S extends Sequence<C>,​C extends Compound>
        Returns:
        the number of identical indices
      • getNumSimilars

        public int getNumSimilars()
        Description copied from interface: SequencePair
        Returns the number of indices for which both the query and target sequences have a similar Compound.
        Specified by:
        getNumSimilars in interface SequencePair<S extends Sequence<C>,​C extends Compound>
        Returns:
        the number of similar indices
      • getPercentageOfIdentity

        public double getPercentageOfIdentity​(boolean countGaps)
        Returns the percentage of identity between the two sequences in the alignment as a fraction between 0 and 1.
        Specified by:
        getPercentageOfIdentity in interface SequencePair<S extends Sequence<C>,​C extends Compound>
        Parameters:
        countGaps - If true, gap positions are counted as mismatches, i.e., the percentage is normalized by the alignment length. If false, gap positions are not counted, i.e. the percentage is normalized by the number of aligned residue pairs. See May (2004). "Percent sequence identity: the need to be explicit."
        Returns:
        the percentage of sequence identity as a fraction in [0,1]