Package org.apache.commons.math.util
Class ContinuedFraction
- java.lang.Object
-
- org.apache.commons.math.util.ContinuedFraction
-
public abstract class ContinuedFraction extends java.lang.Object
Provides a generic means to evaluate continued fractions. Subclasses simply provided the a and b coefficients to evaluate the continued fraction.References:
- Version:
- $Revision: 990655 $ $Date: 2010-08-29 23:49:40 +0200 (dim. 29 août 2010) $
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ContinuedFraction()
Default constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description double
evaluate(double x)
Evaluates the continued fraction at the value x.double
evaluate(double x, double epsilon)
Evaluates the continued fraction at the value x.double
evaluate(double x, double epsilon, int maxIterations)
Evaluates the continued fraction at the value x.double
evaluate(double x, int maxIterations)
Evaluates the continued fraction at the value x.protected abstract double
getA(int n, double x)
Access the n-th a coefficient of the continued fraction.protected abstract double
getB(int n, double x)
Access the n-th b coefficient of the continued fraction.
-
-
-
Method Detail
-
getA
protected abstract double getA(int n, double x)
Access the n-th a coefficient of the continued fraction. Since a can be a function of the evaluation point, x, that is passed in as well.- Parameters:
n
- the coefficient index to retrieve.x
- the evaluation point.- Returns:
- the n-th a coefficient.
-
getB
protected abstract double getB(int n, double x)
Access the n-th b coefficient of the continued fraction. Since b can be a function of the evaluation point, x, that is passed in as well.- Parameters:
n
- the coefficient index to retrieve.x
- the evaluation point.- Returns:
- the n-th b coefficient.
-
evaluate
public double evaluate(double x) throws MathException
Evaluates the continued fraction at the value x.- Parameters:
x
- the evaluation point.- Returns:
- the value of the continued fraction evaluated at x.
- Throws:
MathException
- if the algorithm fails to converge.
-
evaluate
public double evaluate(double x, double epsilon) throws MathException
Evaluates the continued fraction at the value x.- Parameters:
x
- the evaluation point.epsilon
- maximum error allowed.- Returns:
- the value of the continued fraction evaluated at x.
- Throws:
MathException
- if the algorithm fails to converge.
-
evaluate
public double evaluate(double x, int maxIterations) throws MathException
Evaluates the continued fraction at the value x.- Parameters:
x
- the evaluation point.maxIterations
- maximum number of convergents- Returns:
- the value of the continued fraction evaluated at x.
- Throws:
MathException
- if the algorithm fails to converge.
-
evaluate
public double evaluate(double x, double epsilon, int maxIterations) throws MathException
Evaluates the continued fraction at the value x.
The implementation of this method is based on equations 14-17 of:
- Eric W. Weisstein. "Continued Fraction." From MathWorld--A Wolfram Web Resource. http://mathworld.wolfram.com/ContinuedFraction.html
- Parameters:
x
- the evaluation point.epsilon
- maximum error allowed.maxIterations
- maximum number of convergents- Returns:
- the value of the continued fraction evaluated at x.
- Throws:
MathException
- if the algorithm fails to converge.
-
-