Afsnit 17.3 opgave 9, 11, 15 (8. udgave)
Afsnit 18.3 opgave 7, 9, 11 (7. udgave)

Den første opgave (17.3.9 eller 18.3.7) er at finde Lagrange polynomiet p2(x), som
tilnærmer "fejl-funktionen", Erf(x):

Clear[x0, x1, x2, f, p2];

\(L0[x_]\  = 
      \(\((x - x1)\) \((x - x2)\)\)\/\(\((x0 - x1)\) \((x0 - x2)\)\); 

    L1[x_]\  = 
      \(\((x - x0)\) \((x - x2)\)\)\/\(\((x1 - x0)\) \((x1 - x2)\)\); 

    L2[x_] = \ 
      \(\((x - x0)\) \((x - x1)\)\)\/\(\((x2 - x0)\) \((x2 - x1)\)\); \)

f[x_] := Erf[x]

p2[x_]:=f[x0] L0[x] + f[x1] L1[x] + f[x2] L2[x]

x0 = 0.25;  x1 = 0.5;  x2 = 1.0;  p2[x]

Expand[p2[x]]

g5 = Plot[Erf[x] - p2[x], {x, 0.1, 1.5}]

Bemærk at afvigelserne begynder at vokse kraftigt, når der ekstrapoleres (når x er uden for intervallet fra 0.25 til 1). Afvigelsen er i første tilnærmelse et tredie grads polynomium, men ligner snarere et fjerde grads polynomium i dette tilfælde.

I opgave 17.3.15 eller 18.3.11 skal "fejl-funktionen" tilnærmes med  p2(x) udregnet vha. "Newton's divided difference formula", som derefter kan benyttes ved interpolation eller ekstrapolation. BEMÆRK at afstanden mellem x-værdierne ikke er ækvidistante i dette tilfælde. Resultatet er det samme p2(x) som fundet ovenfor, og dermed fås for x = 0.75:

p2[x]  /.   x -> 0.75

f[x]  /.  x -> 0.75

Fejlen ϵ = f(x) - p2(x) kan vurderes hvis den tredie afledede af f(x) kendes. Ligning (5) i 18.3 med n=2.

df3[x_] := N[f'''[x]]

g1 = Plot[df3[x], {x, 0.5, 1}]

Dvs. |f'''(t)| er maximalt 0.75 i et interval omkring x =  0,75. Dvs. den numeriske fejl er af størrelsesordenen

Abs[(1/(3!)) (x - x0) (x - x1) (x - x2) 0.75] /.  
      x -> 0.75

og til sammenligning

ϵ = f[x] - p2[x]  /.  x  ->  0.75

I opgave 17.3.11 eller 18.3.9 skal "Newton's forward difference formula", benyttes til at udregne gamma-funktionen (for x = 1.01, 1.03, og 1.05). BEMÆRK, at (forward) difference formlen kun kan benyttes når intervallet er opdelt i ÆKVIDISTANTE punkter.  
De korrekte resultater (6D) er:

Gamma[1.01]

Gamma[1.03]

Gamma[1.05]