pal.alignment
Class SitePattern

java.lang.Object
  |
  +--pal.alignment.AbstractAlignment
        |
        +--pal.alignment.SitePattern
All Implemented Interfaces:
Alignment, IdGroup, Report, java.io.Serializable

public class SitePattern
extends AbstractAlignment

takes an Alignment and determines its site patterns

See Also:
Serialized Form

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
dataType, frequency, idGroup, numSeqs, numSites
 
Fields inherited from interface pal.alignment.Alignment
GAP
 
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)
static SitePattern getSitePattern(Alignment a)
           
 
Methods inherited from class pal.alignment.AbstractAlignment
getAlignedSequenceString, getDataType, getFrequency, getIdCount, getIdentifier, getLength, getSequenceCount, getSiteCount, getStates, guessDataType, isGap, report, setDataType, setFrequency, 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)
Overrides:
getData in class AbstractAlignment

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)