Simpsons regel

formel för att approximera en integral

Simpsons regel, efter Thomas Simpson, används för att approximera en integral.

Förklaring

redigera
 
En funktion   och dess interpolationspolynom   som har samma funktionsvärde som   i  ,   och  

Simpsons regel är ett sätt att uppskatta en integral till en funktion   genom att ersätta detta med ett andragradspolynom som antar samma värde som   i ändpunkterna   och mittpunkten  . För att kunna använda simpsons regel så måste alltså värdet på   vara känt i dessa tre punkter.

Det andragradspolynom som uppfyller dessa krav kallar vi   och detta kan vi få fram med bland annat Newtons eller Lagranges interpolationspolynom där den senare ser ut som följer:

 

Där alltså   är

 

och

 

Ur detta ses att om funktionen   är ett andragradspolynom så kommer   vara exakt lika med  .

Härledning

redigera

Härledning med hjälp av Lagranges interpolationspolynom

redigera

För att härleda att regeln ser ut som den gör behöver man bara integrera det uttrycket som står ovan. Om man nu sätter att

 

dvs. den längd det mellan   och   eller   och   kan man skriva om uttrycket på det något trevligare utseendet:

 

Om man nu integrerar   med avseende på x så kommer man få en enkel integralberäkning som dock är väldigt lång och därför kommer inte hela presenteras. Om man bara tittar på kvoten efter   och integrerar denna så kan man uppfattning om att det ändå stämmer, så att:

 

Och integralen av   blir då alltså

 
 
 

Vilket stämmer med ovan. De andra två räknas ut på likartat sätt och resultatet ovan kommer att erhållas. Nämnaren 3 gör att uttrycket ibland kallas Simpsons 1/3 regel.

Restterm

redigera

Integralen av interpolationspolynomet kan även skrivas med en restterm   och får då utseendet

 

Där

  [1]

Det största möjliga felet som kan inträffa gör alltså det när absolutbeloppet av fjärdederivatan av f är så stort som möjligt. Det största felet kan skrivas som

 
 

Simpsons 3/8 regel

redigera

Om man istället vet värdet hos en funktion   i fyra skilda punkter kan man göra som ovan men ersätta funktionen med ett tredjegradspolynom. Härledningen ser väldigt likartad ut som den ovan. Lagranges interpolationspolynom blir då

 
 

Där

 

Simpsons 3/8 regel säger då att

 

Och att detta i sin tur är

 

MATLAB-implementation

redigera

Simpsons regel kan implementeras i MATLAB enligt följande:

function [P] = simpson(f,a,b,n)
%f=funktionens namn, a=startvärde, b=slutvärde, 
%n=antal iterationer
h=(b-a)/n;
S=f(a);
i=1:2:n-1;
x=a+h.*i;
y=f(x);
S=S+4*sum(y);
i=2:2:n-2;
x=a+h.*i;
y=f(x);
S=S+2*sum(y);
S=S+f(b);
P=h*S/3;
end

Källor

redigera