mesquite.categ.lib
Class CategoricalStates

java.lang.Object
  extended by mesquite.lib.characters.CharacterStates
      extended by mesquite.categ.lib.CategoricalStates
All Implemented Interfaces:
CharacterStatesHolder, Listable, Renamable, WithStringDetails
Direct Known Subclasses:
CategoricalDistribution

public abstract class CategoricalStates
extends CharacterStates

A class for an array of categorical character states for one character, at each of the taxa or nodes


Field Summary
protected  long allStates
           
protected  int enforcedMaxState
           
protected  double[][] extraFrequencies
           
protected  ColorDistribution extraFrequencyColors
           
protected  java.lang.String[] extraFrequencyNames
           
protected  double[][] frequencies
           
protected  boolean maxFound
           
protected  int maxState
           
protected  boolean minFound
           
protected  int minState
           
 
Fields inherited from class mesquite.lib.characters.CharacterStates
characterNumber, data, totalCreated
 
Constructor Summary
CategoricalStates(Taxa taxa)
           
 
Method Summary
static void copyExtraFrequencies(CategoricalStates source, CategoricalStates sink)
          Copy extra frequency information from first to second CategoricalStates.
static void copyFrequencies(CategoricalStates source, CategoricalStates sink)
          Copy frequency information from first to second CategoricalStates.
 void disposeExtraFrequencies()
          dispose extra frequency information (frees memory).
 void disposeFrequencies()
          dispose frequency information (frees memory).
 boolean extraFrequenciesExist()
          return if frequencies exist for states at each node.
 boolean firstIsGreater(int N, int M)
          returns true if statesets have single element each, and that at node N is greater than that at node M.
 boolean frequenciesExist()
          return if frequencies exist for states at each node.
 long getAllStates()
          get union of all statesets, including multiple-state uncertainties (but not missing, gap)
 long getAllStates(Tree tree, int node)
          get union of all statesets, including multiple-state uncertainties (but not missing, gap), in the tree
 java.lang.Class getCharacterDataClass()
          returns the corresponding CharacterData subclass
 CharacterState getCharacterState()
          returns blank CharacterState object
 CharacterState getCharacterState(CharacterState cs, int N)
          returns CharacterState at node N
 java.lang.String getDataTypeName()
          returns the name of the type of data stored
 CharacterModel getDefaultModel(MesquiteProject file, java.lang.String paradigm)
          Get the default CharacterModel for the given paradigm (e.g., "Parsimony")
 double[] getExtraFrequencies(int node)
          get extra freqency information at a particular node
 double getExtraFrequency(int node, int category)
          get extra freqency of particular category at a particular node
 ColorDistribution getExtraFrequencyColors()
          get extra frequency colors
 java.lang.String[] getExtraFrequencyNames()
          get extra frequency names
 int getExtraNumFreqCategories()
           
 double[] getFrequencies(int node)
          get freqency information at a particular node
 double getFrequency(int node, int category)
          get freqency of particular category at a particular node
 int getNumFreqCategories()
           
 long getSetFromFrequencies(int node)
          get state set represented by frequences at a particular node
abstract  long getState(int N)
          get stateset at node N
 java.lang.Class getStateClass()
          Indicates the type of character stored
 boolean isInapplicable(int N)
          returns whether state at node N is inapplicable
 boolean isUnassigned(int N)
          returns whether state at node N is unassigned (missing data)(
 boolean isUncertain(int N)
          returns whether state at node N is uncertain (partial missing or ambiguous data)(
 void logStates()
          Dump a listing of the states to the log.
 void setExtraFrequencies(int node, double[] freqs)
          set extra freqency information
 void setExtraFrequency(int node, int category, double freq)
          set extra freqency information.
 void setExtraFrequencyColors(ColorDistribution colors)
          Set extra frequency colors
 void setExtraFrequencyNames(java.lang.String[] names)
          Set extra frequency names
 void setFrequencies(int node, double[] freqs)
          set freqency information
 void setFrequency(int node, int category, double freq)
          set freqency information.
 void setNumExtraFreqCategories(int numExtraCategories)
           
 void setNumFreqCategories(int numCategories)
           
 boolean statesEqual(int N, int M)
          returns true if states at nodes N and M are equal
 java.lang.String toString()
          returns string describing states at nodes.
 java.lang.String toString(int node, java.lang.String lineEnding)
          returns string describing character states at node
 
Methods inherited from class mesquite.lib.characters.CharacterStates
checkIllegalNode, getName, getParentCharacter, getParentData, getTaxa, makeCharacterState, setName, setParentCharacter, setParentData, setTaxa, toExternal, toInternal, toStringWithDetails
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface mesquite.lib.characters.CharacterStatesHolder
getNumNodes, getNumTaxa
 

Field Detail

maxState

protected int maxState

minState

protected int minState

allStates

protected long allStates

minFound

protected boolean minFound

maxFound

protected boolean maxFound

frequencies

protected double[][] frequencies

extraFrequencies

protected double[][] extraFrequencies

extraFrequencyColors

protected ColorDistribution extraFrequencyColors

extraFrequencyNames

protected java.lang.String[] extraFrequencyNames

enforcedMaxState

protected int enforcedMaxState
Constructor Detail

CategoricalStates

public CategoricalStates(Taxa taxa)
Method Detail

getStateClass

public java.lang.Class getStateClass()
Indicates the type of character stored


getCharacterDataClass

public java.lang.Class getCharacterDataClass()
returns the corresponding CharacterData subclass


getDataTypeName

public java.lang.String getDataTypeName()
returns the name of the type of data stored


frequenciesExist

public boolean frequenciesExist()
return if frequencies exist for states at each node.


extraFrequenciesExist

public boolean extraFrequenciesExist()
return if frequencies exist for states at each node.


copyFrequencies

public static void copyFrequencies(CategoricalStates source,
                                   CategoricalStates sink)
Copy frequency information from first to second CategoricalStates.


copyExtraFrequencies

public static void copyExtraFrequencies(CategoricalStates source,
                                        CategoricalStates sink)
Copy extra frequency information from first to second CategoricalStates.


setExtraFrequencyColors

public void setExtraFrequencyColors(ColorDistribution colors)
Set extra frequency colors


getExtraFrequencyColors

public ColorDistribution getExtraFrequencyColors()
get extra frequency colors


setExtraFrequencyNames

public void setExtraFrequencyNames(java.lang.String[] names)
Set extra frequency names


getExtraFrequencyNames

public java.lang.String[] getExtraFrequencyNames()
get extra frequency names


setNumFreqCategories

public void setNumFreqCategories(int numCategories)

getNumFreqCategories

public int getNumFreqCategories()

setFrequencies

public void setFrequencies(int node,
                           double[] freqs)
set freqency information


setFrequency

public void setFrequency(int node,
                         int category,
                         double freq)
set freqency information.


getFrequencies

public double[] getFrequencies(int node)
get freqency information at a particular node


getFrequency

public double getFrequency(int node,
                           int category)
get freqency of particular category at a particular node


setNumExtraFreqCategories

public void setNumExtraFreqCategories(int numExtraCategories)

getExtraNumFreqCategories

public int getExtraNumFreqCategories()

setExtraFrequencies

public void setExtraFrequencies(int node,
                                double[] freqs)
set extra freqency information


setExtraFrequency

public void setExtraFrequency(int node,
                              int category,
                              double freq)
set extra freqency information.


getExtraFrequencies

public double[] getExtraFrequencies(int node)
get extra freqency information at a particular node


getExtraFrequency

public double getExtraFrequency(int node,
                                int category)
get extra freqency of particular category at a particular node


getSetFromFrequencies

public long getSetFromFrequencies(int node)
get state set represented by frequences at a particular node


disposeFrequencies

public void disposeFrequencies()
dispose frequency information (frees memory).


disposeExtraFrequencies

public void disposeExtraFrequencies()
dispose extra frequency information (frees memory).


getDefaultModel

public CharacterModel getDefaultModel(MesquiteProject file,
                                      java.lang.String paradigm)
Get the default CharacterModel for the given paradigm (e.g., "Parsimony")


getAllStates

public long getAllStates()
get union of all statesets, including multiple-state uncertainties (but not missing, gap)


getAllStates

public long getAllStates(Tree tree,
                         int node)
get union of all statesets, including multiple-state uncertainties (but not missing, gap), in the tree


getState

public abstract long getState(int N)
get stateset at node N


getCharacterState

public CharacterState getCharacterState(CharacterState cs,
                                        int N)
returns CharacterState at node N


getCharacterState

public CharacterState getCharacterState()
returns blank CharacterState object


isInapplicable

public boolean isInapplicable(int N)
returns whether state at node N is inapplicable


isUnassigned

public boolean isUnassigned(int N)
returns whether state at node N is unassigned (missing data)(


isUncertain

public boolean isUncertain(int N)
returns whether state at node N is uncertain (partial missing or ambiguous data)(


logStates

public void logStates()
Dump a listing of the states to the log.


toString

public java.lang.String toString(int node,
                                 java.lang.String lineEnding)
returns string describing character states at node


toString

public java.lang.String toString()
returns string describing states at nodes.

Overrides:
toString in class java.lang.Object

firstIsGreater

public boolean firstIsGreater(int N,
                              int M)
returns true if statesets have single element each, and that at node N is greater than that at node M.


statesEqual

public boolean statesEqual(int N,
                           int M)
returns true if states at nodes N and M are equal