pal.alignment
Class SitePattern

java.lang.Object
  extended by pal.alignment.AbstractAlignment
      extended by pal.alignment.SitePattern
All Implemented Interfaces:
java.io.Serializable, Alignment, IdGroup, Report

public class SitePattern
extends AbstractAlignment

takes an Alignment and determines its site patterns

Version:
$Id: SitePattern.java,v 1.11 2002/10/14 06:54:24 matt Exp $
Author:
Korbinian Strimmer, Alexei Drummond
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface pal.misc.IdGroup
IdGroup.Utils
 
Field Summary
 int[] alias
          site -> site pattern
 int numPatterns
          number of site patterns
 byte[][] pattern
          site patterns [sequence][site pattern]
 int[] weight
          weights of each site pattern
 
Fields inherited from class pal.alignment.AbstractAlignment
idGroup, numSeqs, numSites
 
Fields inherited from interface pal.alignment.Alignment
GAP, GAP_TLA, GAPS, UNKNOWN, UNKNOWN_TLA
 
Constructor Summary
SitePattern(Alignment a)
          infer site patterns for a given alignment
SitePattern(DataType dataType, int numSites, int numSeqs, IdGroup idGroup, int numPatterns, int[] alias, int[] weight, byte[][] pattern)
          construct SitePattern from scratch
 
Method Summary
 char getData(int seq, int site)
          sequence alignment at (sequence, site)
 int getNumberOfPatterns()
          Accessor method for numPatterns
 char getPatternData(int seq, int patternSite)
           
 int getPatternState(int seq, int patternSite)
           
static SitePattern getSitePattern(Alignment a)
           
 int[] getSiteWeights()
          Accessor method for weight
 
Methods inherited from class pal.alignment.AbstractAlignment
getAlignedSequenceString, getChar, getDataType, getIdCount, getIdentifier, getLength, getSequenceCount, getSiteCount, getState, getStates, guessDataType, isGap, isUnknownState, report, setDataType, setIdentifier, toString, whichIdNumber
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

numPatterns

public int numPatterns
number of site patterns


alias

public int[] alias
site -> site pattern


weight

public int[] weight
weights of each site pattern


pattern

public byte[][] pattern
site patterns [sequence][site pattern]

Constructor Detail

SitePattern

public SitePattern(Alignment a)
infer site patterns for a given alignment

Parameters:
a - alignment

SitePattern

public SitePattern(DataType dataType,
                   int numSites,
                   int numSeqs,
                   IdGroup idGroup,
                   int numPatterns,
                   int[] alias,
                   int[] weight,
                   byte[][] pattern)
construct SitePattern from scratch

Parameters:
dataType - data type
numSites - number of sites
numSeqs - number of sequences
idGroup - sequence identifiers
numPatterns - number of site patterns
alias - link site -> site pattern
weight - frequency of a site pattern
pattern - site patterns
Method Detail

getData

public char getData(int seq,
                    int site)
sequence alignment at (sequence, site)

Specified by:
getData in interface Alignment
Specified by:
getData in class AbstractAlignment

getPatternData

public final char getPatternData(int seq,
                                 int patternSite)

getPatternState

public final int getPatternState(int seq,
                                 int patternSite)

getSiteWeights

public int[] getSiteWeights()
Accessor method for weight


getNumberOfPatterns

public int getNumberOfPatterns()
Accessor method for numPatterns


getSitePattern

public static final SitePattern getSitePattern(Alignment a)
Parameters:
a - An alignment
Returns:
alignment as a site pattern if it isn't already one (other wise just returns alighnment)