jmarkov.solvers
Class TransientSolver

java.lang.Object
  extended by jmarkov.solvers.Solver
      extended by jmarkov.solvers.TransientSolver
All Implemented Interfaces:
JMarkovElement
Direct Known Subclasses:
JamaTransientSolver

public abstract class TransientSolver
extends Solver

An abstract class for Transient solvers. At least the method getTransientProbs(double time, State i0) has to be implemented. All others call this method, but the user can provide more efficient implementations.

Author:
Germán Riaño. Universidad de los Andes.
See Also:
getTransientProbs(double, State)

Field Summary
 
Fields inherited from class jmarkov.solvers.Solver
mp
 
Constructor Summary
TransientSolver(MarkovProcess mp)
          Build a solver with the asssocieted Markov Process.
 
Method Summary
 double[][] getTransientProbs(double[] times, State i0)
          Computes the steady state probabilities at this given times, assuming the Markov Chain starts in the given state i0.
abstract  double[] getTransientProbs(double time, State i0)
          Computes the steady state probabilities at this given time, assuming the Markov Chain starts in the given state i0.
 double[][] getTransientProbs(int NumberPoints, double delta, State i0)
          Computes the steady state probabilities at times delta, 2delta, 3delta,..., assuming the Markov Chain starts in the given state i0.
 
Methods inherited from class jmarkov.solvers.Solver
getMP, label, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface jmarkov.basic.JMarkovElement
description, equals
 

Constructor Detail

TransientSolver

public TransientSolver(MarkovProcess mp)
Build a solver with the asssocieted Markov Process.

Parameters:
mp -
Method Detail

getTransientProbs

public abstract double[] getTransientProbs(double time,
                                           State i0)
Computes the steady state probabilities at this given time, assuming the Markov Chain starts in the given state i0.

Parameters:
time -
i0 - Initial State.
Returns:
probabilities array

getTransientProbs

public double[][] getTransientProbs(double[] times,
                                    State i0)
Computes the steady state probabilities at this given times, assuming the Markov Chain starts in the given state i0.

Parameters:
times - An array with the times at which the probabilities are to be evaluated.
i0 - The initial state (at time t=0).
Returns:
probabilities array for each state. The (i,j) entry on the returned state represents the steady state probability for state i at time times[j].

getTransientProbs

public double[][] getTransientProbs(int NumberPoints,
                                    double delta,
                                    State i0)
Computes the steady state probabilities at times delta, 2delta, 3delta,..., assuming the Markov Chain starts in the given state i0.

Parameters:
NumberPoints -
delta - the time gap between measurements.
i0 - Initial state.
Returns:
probabilities array for each state. The (i,j) entry on the returned state represents the steady state probability for state i at time j * delta.