Simpsons regel og trapesregelen av numerisk integrasjon beregner arealet under en funksjon ved å bryte funksjonen opp i mange mindre områder som er lettere å beregne
>> trapesformet ('sin (x) /x', 1,3,8)
ans =
0,902337806742469
I = ( ((3-1) /8) /2) [f
(1) 2 {f (1,25) + f (1,5) + F (1,75) + f
(2) + f (2,25) + f (2,5) + f (2,75)} + f
(3)]
= 0,125 [0,841471 + 2 (3,165097) +0.
047040)
= 0,902338
trapesregelen for numerisk integrasjon ved hjelp trapazoids å beregne arealet under funksjonen. Hver trapazoid modeller en lineær linje mellom to punkter på funksjons og beregner området under linjen.
>> simprule ('sin (x) /x', 1,3 , 8)
ans =
0,902568788567005
I stedet for å bruke lineære linjer for å modellere funksjonen beregner Simpson Rule området ved å modellere et polynom til funksjonen. Dette polynom er presis for andre polynomer av grad 2 og 3.
I = (((3-1) /8) /3) [f
(1) 4 {f (1.25) + f (1.75 ) + f (2,25) + f (2,75)} + {2-f (1,5) + f
(2) + f (2,5)} + f
(3)]
= (0,25 /3) [0,841471 +4 (1.806062) +2 (1.359035) +0.047040)
= 0.902569
funksjon I = trapesformet (f_str, a, b, n) % trapesformede trapesregelen integrering.% I = trapesformet (F_STR, A, B, N) returnerer trapesregelen tilnærming% for integralet av f (x) fra x = a til x = B, ved hjelp av N subintervaller, der% F_STR er den strengrepresentasjon av f
I = 0;.
g = inline (f_str), h = (ba) /n,
I = I + g (a);
< p> i ii = = (a + h): h: (bh) I = I + 2 * g (ii); end
I = I + g (b), I = I * h /2 ;.
funksjons I = simprule (f_str, a, b, n)% SIMPRULE Simpsons regel integrering% i = SIMPRULE (F_STR, A, B, N) returnerer Simpsons regel tilnærming% for integralet av f (x) fra x = a til x = B, ved hjelp av N subintervaller, der% F_STR er den strengrepresentasjon av f.% En feil genereres hvis N er ikke en positiv, selv heltall .
I = 0; g = inline (f_str), h = (ba) /n,
if ((n> 0) && (rem (n, 2) == 0 )) I = I + g (a); for ii = = (a + h): 2 * h: (bh) I = I + 4 * g (ii); end for kk = (a + 2 * t) 2 * h: (b-2 * h) I = I + 2 * g (kk); end I = I + g (b);
I = I * h /3; annet disp ('feil verdi for N') end
>>> Romberg numerisk integrasjon - Matl