mesquite.categ.lib
Class MCategoricalStates

java.lang.Object
  extended by mesquite.lib.characters.MCharactersStates
      extended by mesquite.categ.lib.MCategoricalStates
All Implemented Interfaces:
MCharactersStatesHolder, Listable, Renamable
Direct Known Subclasses:
MCategoricalDistribution

public abstract class MCategoricalStates
extends MCharactersStates

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


Field Summary
protected  double[][][] extraFrequencies
           
protected  double[][][] frequencies
           
 
Fields inherited from class mesquite.lib.characters.MCharactersStates
data, totalCreated
 
Constructor Summary
MCategoricalStates(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 frequenciesExist()
          return if frequencies exist for states at each node.
 long getAllStates()
          returns the union of all state sets
 java.lang.Class getCharacterDataClass()
          returns the corresponding CharacterData subclass
 CharacterState getCharacterState(CharacterState cs, int ic, int it)
          get CharacterState at node N
 java.lang.String getDataTypeName()
          returns the name of the type of data stored
 double[][] getExtraFrequencies(int node)
          get extra freqency information at a particular node
 double getExtraFrequency(int ic, int node, int category)
          get extra freqency of particular category at a particular node
 double[][] getFrequencies(int node)
          get freqency information at a particular node
 double getFrequency(int ic, int node, int category)
          get freqency of particular category at a particular node
protected  int getNumExtraFreqCateg()
           
protected  int getNumFreqCateg()
           
abstract  long getState(int ic, int it)
          returns state set of character ic in taxon
 java.lang.Class getStateClass()
          Indicates the type of character stored
 void setExtraFrequencies(int node, double[][] freqs)
          set extra freqency information
 void setExtraFrequencies(int ic, int node, double[] freqs)
          set extra freqency information
 void setFrequencies(int node, double[][] freqs)
          set freqency information
 void setFrequencies(int ic, int node, double[] freqs)
          set freqency information
 
Methods inherited from class mesquite.lib.characters.MCharactersStates
checkIllegalNode, getBasisTree, getName, getNumNodes, getParentData, getTaxa, isCurrentlyIncluded, matrixToString, setBasisTree, setName, setTaxa
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface mesquite.lib.characters.MCharactersStatesHolder
getNumChars, getNumTaxa
 

Field Detail

frequencies

protected double[][][] frequencies

extraFrequencies

protected double[][][] extraFrequencies
Constructor Detail

MCategoricalStates

public MCategoricalStates(Taxa taxa)
Method Detail

getStateClass

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

Specified by:
getStateClass in interface MCharactersStatesHolder
Specified by:
getStateClass in class MCharactersStates

getCharacterDataClass

public java.lang.Class getCharacterDataClass()
Description copied from interface: MCharactersStatesHolder
returns the corresponding CharacterData subclass


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.


getNumFreqCateg

protected int getNumFreqCateg()

setFrequencies

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


setFrequencies

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


getFrequencies

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


getFrequency

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


disposeFrequencies

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


copyExtraFrequencies

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


getNumExtraFreqCateg

protected int getNumExtraFreqCateg()

setExtraFrequencies

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


setExtraFrequencies

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


getExtraFrequencies

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


getExtraFrequency

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


disposeExtraFrequencies

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


getDataTypeName

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

Specified by:
getDataTypeName in interface MCharactersStatesHolder
Specified by:
getDataTypeName in class MCharactersStates

getState

public abstract long getState(int ic,
                              int it)
returns state set of character ic in taxon


getCharacterState

public CharacterState getCharacterState(CharacterState cs,
                                        int ic,
                                        int it)
get CharacterState at node N

Specified by:
getCharacterState in interface MCharactersStatesHolder
Specified by:
getCharacterState in class MCharactersStates

getAllStates

public long getAllStates()
returns the union of all state sets