sbrt.kernel.fba.comp
Class SimpleFluxIntervalComputer<F extends Fluxome>

java.lang.Object
  extended by sbrt.kernel.fba.comp.AbstractCvComputer<F>
      extended by sbrt.kernel.fba.comp.AbstractFluxIntervalComputer<F>
          extended by sbrt.kernel.fba.comp.SimpleFluxIntervalComputer<F>
Type Parameters:
F - the fluxome type.
All Implemented Interfaces:
FluxCvComputer<F>, FluxIntervalComputer<F>

public class SimpleFluxIntervalComputer<F extends Fluxome>
extends AbstractFluxIntervalComputer<F>

This class is used to compute flux intervals in the simplest possible way. An interval is computed by minimizing and maximizing the flux of a given reaction. If a flux is unbounded in a particular direction, as they sometimes are, Double.NEGATIVE_INFINITY or Double.POSITIVE_INFINITY are used to denote the flux bounds.

Author:
This class was written and documented by Jeremiah Wright while in the Wagner lab.

Field Summary
 
Fields inherited from class sbrt.kernel.fba.comp.AbstractFluxIntervalComputer
ZERO_CUTOFF
 
Constructor Summary
SimpleFluxIntervalComputer(FbaOptimizer<F> computer, double zeroCutoff)
          Constructs a new flux interval computer.
 
Method Summary
 java.util.Map<java.lang.String,Interval> getIntervals()
          Computes and returns the intervals of every flux in the fluxome used to construct this flux interval computer.
 java.util.Map<java.lang.String,Interval> getIntervals(java.util.Collection<java.lang.String> rxnNames)
          Computes and returns the flux intervals of the reactions with the provided names.
 java.util.Map<java.lang.String,java.lang.Double> getMaximumFluxes(java.util.Collection<java.lang.String> rxnNames, MutableProgressMonitor progress)
          Computes and returns the maximum fluxes of the reactions with the provided names.
 ProgressMonitor getProgress()
          Returns a progress monitor for this flux interval computer.
 
Methods inherited from class sbrt.kernel.fba.comp.AbstractFluxIntervalComputer
getBoundedMax, getBoundedMax, getBoundedMaxWithRxnsMinimized, getBoundedMin, getBoundedMin, getFluxConstraint, getFluxConstraints, getInterval, getIntervals, getMaximum, getMaximum, getMaxWithRxnsMinimized, getMinimum, getMinimum, getRxnExprConstraint, getRxnExprConstraints, getTolerance, getZeroCutoff, restoreFluxConstraint, restoreFluxConstraints, restoreFluxConstraints, restoreRxnExprConstraint, restoreRxnExprConstraints, restoreRxnExprConstraints, setFluxConstraint, setFluxConstraints, setRxnExprConstraint, setRxnExprConstraints
 
Methods inherited from class sbrt.kernel.fba.comp.AbstractCvComputer
checkFluxConstraint, checkNumber, checkRxnExpr, checkRxnExprConstraint, checkRxnName, checkRxnNames, getFluxome, getRxnExpr, getRxnExpr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface sbrt.kernel.fba.comp.FluxCvComputer
getFluxome
 

Constructor Detail

SimpleFluxIntervalComputer

public SimpleFluxIntervalComputer(FbaOptimizer<F> computer,
                                  double zeroCutoff)
Constructs a new flux interval computer.

Parameters:
computer - the computer with which all optimizations will be computed.
zeroCutoff - the amount by which a computed lower bound can exceed a computed upper bound.
Method Detail

getProgress

public ProgressMonitor getProgress()
Returns a progress monitor for this flux interval computer.

Returns:
a progress monitor for this flux interval computer.

getIntervals

public java.util.Map<java.lang.String,Interval> getIntervals()
Computes and returns the intervals of every flux in the fluxome used to construct this flux interval computer.

Returns:
reaction names mapped to the computed interval of their corresponding flux.

getIntervals

public java.util.Map<java.lang.String,Interval> getIntervals(java.util.Collection<java.lang.String> rxnNames)
Computes and returns the flux intervals of the reactions with the provided names.

Parameters:
rxnNames - a collection of reaction names.
Returns:
reaction names mapped to the computed interval of their corresponding flux.

getMaximumFluxes

public java.util.Map<java.lang.String,java.lang.Double> getMaximumFluxes(java.util.Collection<java.lang.String> rxnNames,
                                                                         MutableProgressMonitor progress)
Computes and returns the maximum fluxes of the reactions with the provided names. The provided progress monitor is incremented after each maximum flux is computed.

Parameters:
rxnNames - a collection of reaction names.
progress - the progress monitor to be incremented.
Returns:
reaction names mapped to their corresponding maximum flux.