Class MatrixExponential

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable

    public class MatrixExponential
    extends java.lang.Object
    implements java.lang.Cloneable, java.io.Serializable
    compute matrix exponential and, subsequently, transition probabilities for a given rate matrix
    Version:
    $Id: MatrixExponential.java,v 1.20 2004/08/05 03:00:22 matt Exp $
    Author:
    Korbinian Strimmer
    See Also:
    Serialized Form
    • Constructor Detail

      • MatrixExponential

        public MatrixExponential​(int dimension)
        create module
        Parameters:
        r - rate matrix
      • MatrixExponential

        public MatrixExponential​(RateMatrix r)
        create module
        Parameters:
        r - rate matrix
    • Method Detail

      • getTransitionProbability

        public final double getTransitionProbability​(int from,
                                                     int to)
      • getDimension

        public int getDimension()
      • updateByRelativeRates

        public void updateByRelativeRates​(double[][] relativeRates)
      • setMatrix

        public void setMatrix​(RateMatrix r)
        update rate matrix used in present module
        Parameters:
        r - rate matrix
      • getTransitionProbabilities

        public final void getTransitionProbabilities​(double[][] probabilityStore)
        A utility method for speed, transfers trans prob information quickly into store
      • setDistance

        public final void setDistance​(double arc)
        compute transition probabilities for a expected distance using the prespecified rate matrix
        Parameters:
        arc - expected distance
      • setDistanceTranspose

        public final void setDistanceTranspose​(double arc)
        compute transition probabilities for a expected distance using the prespecified rate matrix
        Parameters:
        arc - expected distance