# richardson-extrapolation

Use Richardson Extrapolation sequence acceleration to compute the order of convergence and exact value of a sequence

richardson-extrapolation   Use Richardson Extrapolation sequence acceleration to compute the order of convergence and exact value of a sequence

## Introduction

Richardson Extrapolationis a numerical method that uses solutions at multiple values of a small parameter (think: = grid size) to accelerate the converenge of a sequence. To make that concrete, consider an method that approximates the value of . Writing this as the unknowns are the exact value , the error constant , and the order of convergence .

In its current form, this module solves for two of three unknowns using the solution at two parameter sizes . So for example, given the the order of convergence , you may approximate the exact value (with error of order ), or given the exact value , you may solve for the order of convergence .

The solution of all three unknowns requires the solution of a set of three nonlinear equations and is not implemented yet. :(

## Install

`\$ npm install richardson-extrapolation`

## Example

```var richardson = require('richardson-extrapolation')

// Exact value = 3.5
// Order of convergence = 3
function func( h ) {
return 3.5 + 2.0 * Math.pow( h, 3 )
}

// Solve for the order of convergence:
richardson( func, 1, { f: 3.5 } )
// => { f: 3.5,  n: 3,  c: 2 }

// Approximate the the exact value given order of convergence:
richardson( func, 1, { n: 3 } )
// => { f: 3.5,  n: 3,  c: 2 }```

## API

#### `require('richardson-extrapolation')( func, h, knowns )`

Arguments:

• `func`: a function that takes small parameter as its only argument
• `h`: either a starting parameter size or a set of parameter sizes
• if a number, then is subdivided by a factor of 2 as needed t solve for the unknowns
• if an array of numbers, then the first are used as values of in order solve for unknowns
• `knowns`: a hash of known parameters. Possibilities are:
• provided (solves for and )
• provided (solves for and )

Returns: A hash containing three values: the approximated exact value , order of convergence , and the constant of the error term .

## TODO

Implement nonlinear simultaneous equation solver as a separate module in order to solve for all three unknowns.

## Credits

(c) 2015 Ricky Reusser. MIT License

## Repository

https://github.com/scijs/richardson-extrapolationode-euler 