numabj.mws |
Integroimalla differentiaaliyhtälö y ' = f( x , y ) puolittain välin yli saadaan
.
Adamsin – Bashforthin menetelmässä integraalille lasketaan approksimaatio korvaamalla funktio f( x , y ( x )) kolmannen asteen interpolaatiopolynomilla. Tämän tukipisteinä (so. pisteinä, joiden kautta polynomin kuvaaja kulkee) ovat neljä edellistä jo laskettua pistettä ( ), j = k - 3, k - 2, k - 1, k .
> tukipisteet:= x[k]-3*h, x[k]-2*h, x[k]-h, x[k];
> funktionarvot:= f[k-3], f[k-2], f[k-1], f[k];
Interpolaatiopolynomi (muuttujana t ) saadaan interp -komennolla, joka löytyy linalg -paketista:
> with(linalg):
>
p:= interp([tukipisteet], [funktionarvot], t):
expand(%);
Integraalin approksimaatio saadaan integroimalla polynomi:
>
integraali:= int(p, t=x[k]..x[k]+h):
simplify(%);