Namespace JXG.Math.Extrapolate
↳ JXG.Math.Extrapolate
Defined in: extrapolate.js.
Constructor Attributes | Constructor Name and Description |
---|---|
Functions for extrapolation of sequences.
|
Method Attributes | Method Name and Description |
---|---|
<static> |
JXG.Math.Extrapolate.aitken(s_n, n, a)
Aitken transformation.
|
<static> |
JXG.Math.Extrapolate.brezinski(s_n, n, a)
Iterated Brezinski transformation.
|
<static> |
JXG.Math.Extrapolate.iteration(x0, h0, f, method, step_type)
Extrapolated iteration to approximate the value f(x_0).
|
<static> |
JXG.Math.Extrapolate.levin(s_n, n, numer, denom, numer, denom)
Levin transformation.
|
<static> |
JXG.Math.Extrapolate.limit(x0, h0, f)
|
<static> |
JXG.Math.Extrapolate.wynnEps(s_n, n, e)
Wynn's epsilon algorithm.
|
Namespace Detail
JXG.Math.Extrapolate
Functions for extrapolation of sequences. Used for finding limits of sequences which is used for curve plotting.
Method Detail
<static>
{Number}
JXG.Math.Extrapolate.aitken(s_n, n, a)
Aitken transformation. Ported from the FORTRAN version in
Ernst Joachim Weniger, "Nonlinear sequence transformations for the acceleration of convergence
and the summation of divergent series", Computer Physics Reports Vol. 10, 189-371 (1989).
- Parameters:
- {Number} s_n
- next value of sequence, i.e. n-th element of sequence
- {Number} n
- index of s_n in the sequence
- {Array} a
- One-dimensional array containing the extrapolation data. Has to be supplied by the calling routine.
- Returns:
- {Number} New estimate of the limit of the sequence.
<static>
{Number}
JXG.Math.Extrapolate.brezinski(s_n, n, a)
Iterated Brezinski transformation. Ported from the FORTRAN version in
Ernst Joachim Weniger, "Nonlinear sequence transformations for the acceleration of convergence
and the summation of divergent series", Computer Physics Reports Vol. 10, 189-371 (1989).
- Parameters:
- {Number} s_n
- next value of sequence, i.e. n-th element of sequence
- {Number} n
- index of s_n in the sequence
- {Array} a
- One-dimensional array containing the extrapolation data. Has to be supplied by the calling routine.
- Returns:
- {Number} New estimate of the limit of the sequence.
<static>
{Array}
JXG.Math.Extrapolate.iteration(x0, h0, f, method, step_type)
Extrapolated iteration to approximate the value f(x_0).
- Parameters:
- {Number} x0
- Value for which the limit of f is to be determined. f(x0) may or may not exist.
- {Number} h0
- Initial (signed) distance from x0.
- {Function} f
- Function for which the limit at x0 is to be determined
- {String} method
- String to choose the method. Available values: "wynnEps", "aitken", "brezinski"
- {Number} step_type
- Approximation method. step_type = 0 uses the sequence x0 + h0/n; step_type = 1 uses the sequence x0 + h0 * 2^(-n)
- Returns:
- {Array} Array of length 3. Position 0: estimated value for f(x0), position 1: 'finite', 'infinite', or 'NaN'. Position 2: value between 0 and 1 judging the reliability of the result (1: high, 0: not successful).
- See:
- JXG.Math.Extrapolate.limit
- JXG.Math.Extrapolate.wynnEps
- JXG.Math.Extrapolate.aitken
- JXG.Math.Extrapolate.brezinski
<static>
JXG.Math.Extrapolate.levin(s_n, n, numer, denom, numer, denom)
Levin transformation. See Numerical Recipes, ed. 3.
Not yet ready for use.
- Parameters:
- {Number} s_n
- next value of sequence, i.e. n-th element of sequence
- {Number} n
- index of s_n in the sequence
- {Array} numer
- One-dimensional array containing the extrapolation data for the numerator. Has to be supplied by the calling routine.
- {Array} denom
- One-dimensional array containing the extrapolation data for the denominator. Has to be supplied by the calling routine.
- numer
- denom
<static>
{Array}
JXG.Math.Extrapolate.limit(x0, h0, f)
- Parameters:
- {Number} x0
- Value for which the limit of f is to be determined. f(x0) may or may not exist.
- {Number} h0
- Initial (signed) distance from x0.
- {Function} f
- Function for which the limit at x0 is to be determined
- Returns:
- {Array} Array of length 3. Position 0: estimated value for f(x0), position 1: 'finite', 'infinite', or 'NaN'. Position 2: value between 0 and 1 judging the reliability of the result (1: high, 0: not successful). In case that the extrapolation fails, position 1 and 2 contain 'direct' and 0.
- Examples:
var f1 = (x) => Math.log(x), f2 = (x) => Math.tan(x - Math.PI * 0.5), f3 = (x) => 4 / x; var x0 = 0.0000001; var h = 0.1; for (let f of [f1, f2, f3]) { console.log("x0=", x0, f.toString()); console.log(JXG.Math.Extrapolate.limit(x0, h, f)); }
<static>
{Number}
JXG.Math.Extrapolate.wynnEps(s_n, n, e)
Wynn's epsilon algorithm. Ported from the FORTRAN version in
Ernst Joachim Weniger, "Nonlinear sequence transformations for the acceleration of convergence
and the summation of divergent series", Computer Physics Reports Vol. 10, 189-371 (1989).
- Parameters:
- {Number} s_n
- next value of sequence, i.e. n-th element of sequence
- {Number} n
- index of s_n in the sequence
- {Array} e
- One-dimensional array containing the extrapolation data. Has to be supplied by the calling routine.
- Returns:
- {Number} New estimate of the limit of the sequence.