Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI...

33
INTEGRAZIONE NUMERICA Francesca Pelosi Dipartimento di Matematica, Universit ` a di Roma “Tor Vergata” CALCOLO NUMERICO e PROGRAMMAZIONE http://www.mat.uniroma2.it/pelosi/ INTEGRAZIONE NUMERICA – p.1/33

Transcript of Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI...

Page 1: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

INTEGRAZIONE NUMERICA

Francesca PelosiDipartimento di Matematica, Universita di Roma “Tor Vergata”

CALCOLO NUMERICO e PROGRAMMAZIONE

http://www.mat.uniroma2.it/∼pelosi/

INTEGRAZIONE NUMERICA – p.1/33

Page 2: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

INTEGRAZIONE NUMERICA

Data una f integrabile su [a, b] consideriamo

I[f ] :=

∫ b

af(x)dx

In alcuni casi non si conosce la primitiva

Anche quando si conosce la primitiva questa può essere troppocomplicata (mentre f può essere più semplice)

ESEMPIO:∫

11+t2

dt = arctan(x)

La funzione da integrare può essere data non in forma analitica, ma perpunti

⇒ Si cercano metodi numerici in grado di fornire una approssimazione di unintegrale in termini di un numero finito di valori della funzione integranda

⇒ FORMULE DI QUADRATURA

INTEGRAZIONE NUMERICA – p.2/33

Page 3: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

INTEGRAZIONE NUMERICA

Supponiamo di conoscere (o di poter valutare) la funzione integranda f(x) inpunti distinti {x0, x1, . . . , xn} (scelti o prefissati) in [a, b]

Costruiamo formule del tipo

In+1[f ] '∫ b

af(x)dx, In+1[f ] :=

n∑

i=0

wif(xi)

xi, i = 0, 1, . . . , n: nodi della formula di quadratura

wi, i = 0, 1, . . . , n: pesi della formula di quadratura

Si definisce l’errore di quadratura associato alla formula su n + 1 punti:

En+1[f ] = I[f ] − In+1[f ].

INTEGRAZIONE NUMERICA – p.3/33

Page 4: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

INTEGRAZIONE NUMERICA⇒ IDEA IMMEDIATA: Approssimare f(x) con il polinomio di grado n interpolante

la funzione nei nodi {xi, i = 0, 1, . . . , n} (unico se i nodi sono distinti):

∫ b

af(x)dx =

∫ b

a(Ln(x) + en(x))dx =

∫ b

aLn(x)dx +

∫ b

aen(x)dx

⇒ dove Ln(x) è il polinomio inerpolante i punti (x0, f(x0)), . . . , (xn, f(xn)),⇒ Formule interpolatorie

Se rappresentiamo Ln(x) nella forma di Lagrange

Ln(x; f) =

n∑

i=0

f(xi)`(n)i (x), con `

(n)i (x) =

∏nj=0

j 6=i

(x − xj)

∏nj=0

j 6=i

(xi − xj), i = 0, 1, . . . , n

∫ b

af(x)dx =

∫ b

aLn(x)dx+

∫ b

aen(x)dx =

∫ b

a

n∑

i=0

f(xi)`(n)i (x)dx+

∫ b

aen(x)dx

=

n∑

i=0

f(xi)

∫ b

a`(n)i (x)dx +

∫ b

aen(x)dx

INTEGRAZIONE NUMERICA – p.4/33

Page 5: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE INTERPOLATORIE

Da cui si ottiene un approssimazione dell’integrale con la formula diquadratura:∫ b

af(x)dx '

∫ b

aLn(x)dx =

n∑

i=0

f(xi)

∫ b

a`(n)i (x)dx =

n∑

i=0

wif(xi)

CASO n = 1. Consideriamo i punti (a, f(a)) e (b, f(b)) e sostituiamo allafunzione il polinomio di grado 1 (la retta) che passa per i punti dati

w0 =

∫ b

a`(1)0 (x)dx =

∫ b

a

x − b

a − bdx =

1

2

(x − b)

a − b

2]b

a

= −1

2

(a − b)

a − b

2

=b − a

2

w1 =

∫ b

a`(1)1 (x)dx =

∫ b

a

x − a

b − adx =

1

2

(x − a)

b − a

2]b

a

=1

2

(b − a)

b − a

2

=b − a

2

Da cui si ottiene la Regola dei Trapezi

∫ b

af(x)dx ' I2[f ] :=

b − a

2[f(a) + f(b)]

INTEGRAZIONE NUMERICA – p.5/33

Page 6: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE INTERPOLATORIEESEMPIO 1: applichiamo la regola dei trapezi per approssimare l’integrale seguente:

I[f ] =

∫ 1

0

dx

1 + x= ln(2) ' 0.6931.

In questo caso a = 0 e b = 1 e f(x) = 11+x

; applichiamo la formula:

I2[f ] =b − a

2[f(a) + f(b)] =

1

2[f(0) + f(1)]

=1

2

[1

1 + 0+

1

1 + 1

]=

1

2

(1 +

1

2

)=

3

4= 0.75

a b

f(a)

f(b)y=f(x)

INTEGRAZIONE NUMERICA – p.6/33

Page 7: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE INTERPOLATORIE

CASO n = 2. Consideriamo i punti (−h, f(−h)), (0, f(0)) e (h, f(h)) esostituiamo alla funzione il polinomio di grado 2 che passa per i punti dati

w0 =

∫ h

−h`(2)0 (x)dx =

∫ h

−h

x(x − h)

2h2dx =

1

2h2

(1

3x3 − 1

2x2h

)]h

−h

=h

3

w1 =

∫ h

−h`(2)1 (x)dx =

∫ h

−h

(x + h)(x − h)

−h2dx =

1

h2

(−1

3x3 + h2x

)]h

−h

=4

3h

w2 =

∫ h

−h`(2)2 (x)dx =

∫ h

−h

x(x + h)

2h2dx =

1

2h2

(1

3x3 +

1

2x2h

)]h

−h

=h

3

Da cui si ottiene la Regola di Simpson∫ h

−hf(x)dx ' I3[f ] =

h

3[f(−h) + 4f(0) + f(h)]

e su un generico intervallo [a, b]:∫ b

af(x)dx ' I3[f ] :=

b − a

6

[f(a) + 4f

(a + b

2

)+ f(b)

]

INTEGRAZIONE NUMERICA – p.7/33

Page 8: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE INTERPOLATORIEESEMPIO 2: applichiamo la regola di Simpson per approssimare l’integrale seguente:

I[f ] =

∫ 1

0

dx

1 + x= ln(2) ' 0.6931.

In questo caso a = 0 e b = 1 e f(x) = 11+x

da cui

I3[f ] =b − a

6

[f(a) + 4f

(a + b

2

)+ f(b)

]=

1

6

[f(0) + 4f

(1

2

)+ f(1)

]

=1

6

[1

1 + 0+ 4

1

1 + 1/2+

1

1 + 1

]=

1

6

(1 +

8

3+

1

2

)= 0.6944

f(a)

f(b)

y=f(x)

a b(a+b)/2 INTEGRAZIONE NUMERICA – p.8/33

Page 9: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE INTERPOLATORIE

TRAPEZI SIMPSON

b

f(b)

f(a)

a a (a+b)/2 b

INTEGRAZIONE NUMERICA – p.9/33

Page 10: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

GRADO DI PRECISIONE

La precisione di una formula di quadratura è legata alla bontà con cui In+1[f ]

approssima I[f ] =∫ b

a f(x)dx, pertanto in generale è dipendente dalla funzioneintegranda.Si esamina per quale classe di funzioni è esatta (cioè In+1[f ] = I[f ])

DEFINIZIONE: Una formula di quadratura ha grado di precisione k se e esatta quando la

funzione integranda e un polinomio di grado k, ed esiste almeno un polinomio di grado k + 1

per cui l’errore risulti non nullo.

(Tale definizione è giustificata dal teorema di Weierstrass. )

Vale il teorema seguente

TEOREMA: Le formule di quadratura interpolatorie costruite su n + 1 nodi, hanno grado di

precisione almeno n.

Deriva dall’espressione dell’errore di interpolazione:en(x) = f(x) − Ln(x) = ωn+1(x)f [x0, x1, . . . , xn, x], tenendo presente chef [x0, x1, . . . , xn, x] = 0 per f ∈ IPn.

INTEGRAZIONE NUMERICA – p.10/33

Page 11: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

GRADO DI PRECISIONEES: La formula di Simpson ha grado di precisione 3:

la formula è esatta perf(x) = x0 :∫ h−h x0dx = x]h

−h = 2h ⇔ I3[x0] = h3[f(−h) + 4f(0) + f(h)] =

h3[1 + 4 + 1] = 2h

f(x) = x1

∫ h−h x1dx = x2

2

]h

−h= 0 ⇔ I3[x] = h

3[f(−h)+4f(0)+f(h)] = h

3[−h+h] = 0

f(x) = x2

∫ h−h x2dx = x3

3

]h

−h= 2

3h3 ⇔ I3[x2] = h

3[f(−h) + 4f(0) + f(h)] =

h3[(−h)2 + h2] = 2

3h3

f(x) = x3

∫ h−h x3dx = x4

4

]h

−h= 0 ⇔ I3[x3] = h

3[f(−h) + 4f(0) + f(h)] =

h3[−h3 + h3] = 0

mentre non è esatta per f(x) = xr con r ≥ 4∫ h−h x4dx = x5

5

]h

−h= 2

5h5

<I3[x4] = h3[f(−h) + 4f(0) + f(h)] =

h3[(−h)4 + h4] = 2

3h5

INTEGRAZIONE NUMERICA – p.11/33

Page 12: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE di NEWTON-COTESSi tratta di formule di quadratura di tipo interpolatorio su nodi equidistanti:

dato [a, b] posto h = b−an

, consideriamo i punti equispaziati (tipo chiuso):

xi = a + ih, i = 0, . . . , n

cerchiamo l’espressione dei pesi delle formula interpolatoria corrispondente:

n∑

i=0

wif(xi) : wi =

∫ xn

x0

`(n)i (x)dx =

∫ xn

x0

∏nj=0

j 6=i

(x − xj)

∏nj=0

j 6=i

(xi − xj)dx

utilizziamo il cambiamento di variabili x = a + th da cui dx = hdt:

wi = h

∫ n

0

∏nj=0

j 6=i

(a + th − (a + jh))

∏nj=0

j 6=i

(a + ih − (a + jh))dt = h

∫ n

0

∏nj=0

j 6=i

(t − j)h

∏nj=0

j 6=i

(i − j)hdt = hαi

INTEGRAZIONE NUMERICA – p.12/33

Page 13: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE di NEWTON-COTES

Quindi una formula di Newton-Cotes su [a, b] generico può essere scritta nellaforma:

In+1[f ] = h

n∑

i=0

αif(xi), h =b − a

n

dove gli αi sono pesi in [0, n].

Poichè gli αi non dipendono da h ma solo da n, sono stati tabulati su delletabelle al variare di n nella forma αi = cβi. (si noti la simmetria centrale degliαi ovvero αi = αn−i):

n c β0 β1 β2 β3 β4 β5 Errore

1 12

1 1 − 112

h3f (2)(η)

2 13

1 4 1 − 190

h5f (4)(η)

3 38

1 3 3 1 − 380

h5f (4)(η)

4 245

7 32 12 32 7 − 8945

h7f (6)(η)

5 5288

19 75 50 50 75 19 − 27512096

h7f (6)(η)

INTEGRAZIONE NUMERICA – p.13/33

Page 14: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE di NEWTON-COTESESEMPIO 3: applichiamo la formula di Newton-Cotes con n = 3 per approssimare l’integrale

seguente:

I[f ] =

∫ 1

0

dx

1 + x= ln(2) ' 0.6931.

Si ha: a = 0 , b = 1 e n = 3 da cui

h :=b − a

n=

1

3

x0 = 0, x1 =1

3, x2 =

2

3, x3 = 1

α0 =3

8, α1 =

3

8· 3, α2 =

3

8· 3, α3 =

3

8

I4[f ] := h[α0f(x0) + α1f(x1) + α2f(x2) + α3f(x3)]

=1

3· 3

8

[1f(0) + 3f

(1

3

)+ 3f

(2

3

)+ 1f(1)

]

1

8

[1 + 3

(1

1 + 1/3

)+ 3

(1

1 + 2/3

)+

1

2

]=

1

8· 11

2= 0.6938

INTEGRAZIONE NUMERICA – p.14/33

Page 15: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

ERRORE FORMULE di QUADRATURA

Per formule di tipo interpolatorio:

En+1[f ] =

∫ b

a(f(x)−Ln(x))dx =

∫ b

aen(x)dx =

∫ b

a

f (n+1)(η)

(n + 1)!(x−x0) · · · (x−xn)dx

Per formule di Newton-Cotes con h = b−an

:

En+1[f ] =

∫ b

a

f (n+1)(η)

(n + 1)!

n∏

j=0

(x − (a + jh))dx=

x=a+thdx=hdt

=

∫ n

0

f (n+1)(η)

(n + 1)!

n∏

j=0

(t − j)h

hdt =

hn+2

(n + 1)!

∫ n

0f (n+1)(η)

n∏

j=0

(t − j)dt

ESEMPIO: per la formula dei trapezi:

E2[f ] = −h3

2!

∫ 1

0f (2)(η)t(1 − t)dt

dove t(1 − t) ≥ 0 in [0, 1].

INTEGRAZIONE NUMERICA – p.15/33

Page 16: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

ERRORE FORMULE di QUADRATURA

Studiando meglio l’integrale si può ottenere il seguente(se la funzione non cambia segno si può applicare il teorema della mediaintegrale)

TEOREMA: Data una formula di quadratura di Newton-Cotes sui nodi xi = a + ih, con

h = b−an

, i = 0, . . . , n, si ha per l’errore le seguenti espressioni

per n pari e f ∈ Cn+2[a, b] :

En+1[f ] =f (n+2)(η)hn+3

(n + 2)!

∫ n

0

n∏

j=0

t(t − j)dt

per n dispari e f ∈ Cn+1[a, b] :

En+1[f ] =f (n+1)(η)hn+2

(n + 1)!

∫ n

0

n∏

j=0

(t − j)dt

dove η, η ∈ [a, b] = [x0, xn].

INTEGRAZIONE NUMERICA – p.16/33

Page 17: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

ERRORE FORMULE di QUADRATURA

Le formule di quadratura con n pari (numero dispari di nodi) hanno grado diprecisione n + 1

ESEMPIO: la formula di Simpson n = 2 ha grado di precisione 3 in quantol’errore coinvolge la derivata f (4)(η) che è nulla per f ∈ IP3

Le formule di quadratura con n dispari (numero pari di nodi) hanno grado diprecisione n

ESEMPIO: la formula dei Trapezi n = 1 ha grado di precisione 1, in quantol’errore coinvolge la derivata f (2)(η) che è nulla per f ∈ IP1

⇒ È più conveniente usare formule con n pari.

INTEGRAZIONE NUMERICA – p.17/33

Page 18: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

CONVERGENZA

Dal teorema di Weierstrass discende anche il seguente

TEOREMA: Sia {In+1[f ]} una successione di formule di quadratura tali che In+1[f ] abbia

grado di precisione almeno n, ed equilimitate (i.e. ∃C : ‖In+1‖ < C,∀n). Allora si ha

limn→∞

In+1[f ] = I[f ]

DIM:Poiche la formula di quadratura ha grado di precisione almeno n si ha che

In+1[p] = I[p], ∀p ∈ IPn, ne segueEn+1[f ] = I[f ] − In+1[f ] = I[f ] − I[p] + In+1[p] − In+1[f ]

= I[f−p]−In+1[f−p] ⇒ |En+1[f ]| ≤ (‖I‖+‖In+1‖)‖f−p‖ ≤ (‖I‖+C)‖f−p‖Per il Teorema di Weierstrass ∃p ∈ IPn convergente a f ⇒ En+1[f ] → 0.

TEOREMA: Data una famiglia di formule di quadratura interpolatorie In+1[f ] tali che ∃H :

tale che∑n

i=0 |wi| < H . Allora limn→∞

En+1[f ] = 0

Per formule interpolatorie∑n

i=0 wi = b − a : essendo esatte su f(x) = 1 si ha

b − a =∫ b

a 1 · dx = I[1] =∑n

i=0 wi · 1.⇒ se wi ≥ 0 si ha

∑ni=0 |wi| =

∑ni=0 wi = b − a :

convergenza per formule interpolatorie con pesi positivi.

INTEGRAZIONE NUMERICA – p.18/33

Page 19: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

CONVERGENZA

Contrariamente a quanto potrebbe sembrare “a prima vista” non convieneusare formule di Newton-Cotes di grado di precisione via via crescente

I pesi tendono a crescere in modulo e ad essere di segno alterno, dando luogoa rilevanti errori di arrotondamento (per es. errori di cancellazione).Ad esempio per n = 10 si ha β0 = β10 = 16067, β1 = β9 = 106300,

β2 = β8 = −48525, β3 = β7 = 272400, β4 = β6 = −260550, β5 = 427368.

Pertanto un piccolo errore δi nel calcolo di f(xi) può dar luogo al crescere di n

ad un contributo oscillante di ampiezza crescente, rendendo instabile ilprocedimento numerico. Sia In+1[f ] la formula calcolata in precisione finita:

In+1[f ] :=

n∑

i=0

wi(f(xi) + δi) ⇒ |In+1[f ] − In+1[f ]| = |n∑

i=0

wiδi| < δ

n∑

i=0

|wi|

con δ = maxi |δi|.

Ne segue che l’errore di arrotandamento accumulato rimane limitato se adesempio i pesi wi sono a segno costante ed in particolare positivo.

⇒ Si sconsiglia di utilizzare formule di Newton-Cotes di grado elevato.

INTEGRAZIONE NUMERICA – p.19/33

Page 20: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE COMPOSITE (Newton-Cotes)

Per avere

la convergenza:∑n

i=0 |wi| < H

la stabilità: wi ≥ 0

conviene considerare n basso e h piccolo, ossia

suddividere [a, b] in N sottointervalli [zk, zk+1], k = 0, . . . , N

su ciascuno applicare una formula di quadratura con basso grado (diprecisione)

∫ b

af(x)dx =

N−1∑

k=0

∫ zk+1

zk

f(x)dx 'N−1∑

k=0

I(k)n+1[f ]

I(k)n+1 può essere ad esempio la formula di Newton-Cotes con n + 1 nodi in

[zk, zk+1]

INTEGRAZIONE NUMERICA – p.20/33

Page 21: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULA COMPOSITA dei TRAPEZI

[zk, zk+1] = [a + k b−aN

, a + (k + 1) b−aN

]

∫ b

af(x)dx '

N−1∑

k=0

(zk+1 − zk)

2[f(zk) + f(zk+1)]

⇒ INT [f ] :=

(b − a)

2N

[f(a) + 2

N−1∑

k=1

f(zk) + f(b)

]

INTEGRAZIONE NUMERICA – p.21/33

Page 22: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULA COMPOSITA di SIMPSON

[zk, zk+1] = [a + k b−aN

, a + (k + 1) b−aN

]

∫ b

af(x)dx '

N−1∑

k=0

(zk+1 − zk)

6

[f(zk) + 4f

(zk+1 + zk

2

)+ f(zk+1)

]

⇒ INS [f ] :=

(b − a)

6N

[f(a) + 4

N−1∑

k=0

f

(zk+1 + zk

2

)+

N−1∑

k=1

2f(zk) + f(b)

]

a=z0

z1 z

2z

3z

4=b

INTEGRAZIONE NUMERICA – p.22/33

Page 23: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

FORMULE COMPOSITEESEMPIO 4: applichiamo la formula dei Trapezi e di Simpson composita su 2 intervalli per

approssimare l’integrale seguente:

I[f ] =

∫ 1

0

dx

1 + x= ln(2) ' 0.6931.

a = 0, b = 1, N = 2, z0 = 0, z1 =1

2, z2 = 1

I2T [f ] :=

b − a

2N[f(z0) + 2f(z1) + f(z2)] =

1

4

[f(0) + 2f

(1

2

)+ f(1)

]

1

4

[1 + 2

(1

1 + 1/2

)+

1

2

]=

1

4· 17

6= 0.7083

I2S [f ] :=

b − a

6N

[f(z0) + 4f

(z0 + z1

2

)+ 2f(z1) + 4f

(z1 + z2

2

)+ f(z2)

]

=1

12

[f(0) + 4f

(1

4

)+ 2f

(1

2

)+ 4f

(3

4

)+ f(1)

]

=1

12

[1 + 4

(1

1 + 1/4

)+ 2

(1

1 + 1/2

)+ 4

(1

1 + 3/4

)+

1

2

]= 0.6933

INTEGRAZIONE NUMERICA – p.23/33

Page 24: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

GRADO di PRECISIONE (Formule composite)

Il grado di precisione delle formule composite è lo stesso delle corrispondentiformule di Newton-Cotes “semplici”

Si può facilmente dimostrare che

|ENT [f ]| ≤ (b − a)

12

(b − a

N

)2

|f (2)(η)|

|ENS [f ]| ≤ (b − a)

180

(b − a

2N

)4

|f (4)(η)|

con η, η ∈ [a, b]

Per funzioni sufficientemente regolari, si ha

limN→∞

|ENn+1[f ]| = 0,

e quindi si ha la convergenza all’aumentare del numero di suddivisioni N .

INTEGRAZIONE NUMERICA – p.24/33

Page 25: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

IMPLEMENTAZIONE

In pratica è importante determinare un valore adeguato del numero disuddivisioni dell’intervallo che bisogna fare.

Si parte da N piccolo e si aumenta iterativamente il numero di suddivisioni,stimando l’errore in modo automatico:

|IN2n+1[f ] − IN1

n+1[f ]|

Di solito è conveniente considerare N2 = 2N1, per sfruttare le valutazioni di f

fatte per costruire IN1n+1[f ]

Le formule composite con suddivisione uniforme dell’intervallo di integrazionesono ormai superate, tranne in casi particolari (funzioni periodiche). Si usanoformule di tipo adattivo:

Quando la funzione integranda presenta delle irregolarità c’è la necessitàdi addensare nodi nelle vicinanze delle irregolarità

L’intervallo viene suddiviso in sottointervalli di ampiezza diversa

Si usano molti nodi solo dove necessario

Per capire dove infittire la sequenza dei nodi si usano stime dell’errore.

INTEGRAZIONE NUMERICA – p.25/33

Page 26: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

ESERCIZI

INTEGRAZIONE NUMERICA – p.26/33

Page 27: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

Esecizio 1.Valutare l’errore che si commette approssimando l’integrale

∫ 1

0exdx

con la formula di Newton-Cotes su 4 nodi (n = 3).

a = 0, b = 1, n = 3, h =b − a

n=

1

3

E4[f ] = − 3

80h5f (4)(η) = − 3

80

(1

3

)5

|E4[f ]| ≤ 1

80 · 34max[0,1]

{ex} =1

80 · 81 e1 =e

6480< 0.5 · 10−3

INTEGRAZIONE NUMERICA – p.27/33

Page 28: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

Esecizio 2.Approssimare l’integrale ∫ 1

0e−x2

dx ' 0.7468

con la formula di Newton-Cotes su 4 nodi (n = 3).

a = 0, b = 1, n = 3, h =b − a

n=

1

3

x0 = 0, x1 =1

3, x2 =

2

3, x3 = 1

α0 =3

8, α1 =

3

8· 3, α2 =

3

8· 3, α3 =

3

8

I4[f ] := h[α0f(x0) + α1f(x1) + α2f(x2) + α3f(x3)]

=1

3· 3

8

[1f(0) + 3f

(1

3

)+ 3f

(2

3

)+ 1f(1)

]

=1

8

[1 +

3

e1/9+

3

e4/9+

1

e

]' 0.7470

INTEGRAZIONE NUMERICA – p.28/33

Page 29: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

Esecizio 3.Ricordando che

ln(2) =

∫ 2

1

1

xdx ' 0.6931

approssimare ln(2) con la formula dei trapezi composita scegliendo il numero di intervalli N in modo da

commettere un errore di approssimazione minore di 10−4.

|ENT [f ]| =

∣∣∣∣∣b − a

12

(b − a

N

)2

f ′′(η)

∣∣∣∣∣ ≤1

12

(1

N

)2

max[1,2]

|f ′′(x)|

f ′(x) = − 1

x2, f ′′(x) =

2

x3⇒ max

[1,2]|f ′′(x)| = 2

|ENT [f ]| ≤ 2

12N2=

1

6N2< 10−4 per N >

102

√6

' 40.82

quindi occorre suddividere l’intervallo [1, 2] in almeno 41 sottointervalli. Con la formula di Simpson

composita:

|ENS [f ]| =

∣∣∣∣∣b − a

180

(b − a

2N

)4

f (4)(η)

∣∣∣∣∣ ≤1

2880N4max[1,2]

|f (4)(x)|

f (3)(x) = − 6

x4, f (4)(x) =

24

x5⇒ max

[1,2]|f (4)(x)| = 24

|ENS [f ]| ≤ 24

2880N4=

1

120N4< 10−4 per N4 >

104

120, N >

104√

120' 3.0214

INTEGRAZIONE NUMERICA – p.29/33

Page 30: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

Esecizio 4.Dato ∫ 1

−1|x|dx = −

∫ 0

−1xdx +

∫ 1

0xdx =

1

2+

1

2= 1

lo si approssimi con la formula dei trapezi composita scegliendo N = 2 e successivamente N = 3.

Si valuti in entrambi i casi l’errore ottenuto e si commentino i risultati.

a = −1, b = 1:

N = 2 ⇒ z0 = −1, z1 = 0, z2 = 1;

I2T [f ] :=

b − a

2N[f(z0) + 2f(z1) + f(z2)] =

1

2[f(−1) + 2f(0) + f(1)]

1

2[1 + 2 · 0 + 1] = 1

N = 3 ⇒ z0 = −1, z1 = −1

3, z2 =

1

3, z3 = 1;

I3T [f ] :=

b − a

2N[f(z0) + 2f(z1) + 2f(z2) + f(z3)]

=1

3

[f(−1) + 2f

(−1

3

)+ 2f

(1

3

)+ f(1)

]=

1

3

[1 +

2

3+

2

3+ 1

]= 10/9

Si nota che mentre I2T [f ] fornisce il valore esatto dell’integrale, con I3

T [f ] l’approssimazione peggiora.

INTEGRAZIONE NUMERICA – p.30/33

Page 31: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

Esecizio 4 (segue...)Stimiamo adesso l’errore in entrambi i casi. Le derivate della funzione sono:

f ′(x) =

−1, [−1, 0)

1, [0, 1], f ′′(x) = 0.

|E2T [f ]| =

∣∣∣∣∣b − a

12

(b − a

N

)2

f ′′(η)

∣∣∣∣∣ ≤2

12

(2

2

)2

max[−1,1]

|f ′′(x)| =1

6max[−1,1]

|f ′′(x)| = 0

|E3T [f ]| =

∣∣∣∣∣b − a

12

(b − a

N

)2

f ′′(η)

∣∣∣∣∣ ≤2

12

(2

3

)2

max[−1,1]

|f ′′(x)| =2

33max[−1,1]

|f ′′(x)| = 0

In entrambi i casi si stima una errore nullo, ma di fatto l’approssimazione peggiora passando da 2 a 3 intervalli.

Tale risultato e dovuto al fatto che la funzione integranda non e regolare (la derivata prima non e continua).

INTEGRAZIONE NUMERICA – p.31/33

Page 32: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

Esecizio 5.Si vuol approssimare l’integrale ∫ 1

0e−x2

dx ' 0.7468

con un errore in modulo non superiore a 0.5 10−3. Si determini una stima dell’errore utilizzando formule di

Newton-Cotes per diversi valori di n.

a = 0, b = 1, h := b−an

. Calcoliamo le derivate di f :

f ′(x) = −2xe−x2

, f ′′(x) = 2(2x2 − 1)e−x2

, f (3) = 4x(3 − 2x2)e−x2

f (4) = 4(4x4 − 12x2 + 3)e−x2

, f (5) = 8x(20x2 − 4x4 − 15)e−x2

,

f (6) = 8(8x6 − 60x4 + 90x2 − 15)e−x2

.

n = 1 : h = 1 ⇒ |E2[f ]| =

∣∣∣∣−1

12h3f ′′(η)

∣∣∣∣ ≤1

12max[0,1]

|f ′′(x)| =1

12|f ′′(0)| =

1

6

n = 2 : h = 12⇒ |E3[f ]| =

∣∣∣∣−1

90h5f (4)(η)

∣∣∣∣ ≤1

90

1

25max[0,1]

|f (4)(x)| =1

90

1

25|f (4)(0)| =

1

240

n = 4 : h = 14⇒ |E5[f ]| =

∣∣∣∣−8

945h7f (6)(η)

∣∣∣∣ ≤8

945

1

47max[0,1]

|f (6)(x)| =8

945

1

47|f (6)(0)|

=8

945

1

47120 ' 0.6200 10−4

INTEGRAZIONE NUMERICA – p.32/33

Page 33: Francesca Pelosi - Dipartimento di Matematica -UTV-pelosi/Integrazione_Numerica.pdf · TRAPEZI SIMPSON b f(b) f(a) a a (a+b)/2 b INTEGRAZIONE NUMERICA Œ p.9/33. GRADO DI PRECISIONE

Esecizio 5 (segue ...)

Poiche |E5[f ]| < 0.5 10−3, utilizzando la formula di Newton-Cotes con n = 4, si ottiene un valore che

approssima l’integrale esatto a meno di 0.5 10−3. Risulta

h :=b − a

n=

1

4

x0 = 0, x1 =1

4, x2 =

1

2, x3 =

3

4, x4 = 1

α0 =2

45· 7, α1 =

2

45· 32, α2 =

2

45· 12, α3 =

2

45· 32, α4 =

2

45· 7

I5[f ] := h[α0f(x0) + α1f(x1) + α2f(x2) + α3f(x3) + α4f(x4)]

=1

4· 2

45

[7f(0) + 32f

(1

4

)+ 12f

(1

2

)+ 32f

(3

4

)+ 7f (1)

]

=1

90

[7 +

32

e1/16+

12

e1/4+

32

e9/16+

7

e1

]= 0.74683

e dato che I[f ] = 0.74682, l’errore generato e circa 10−5.

INTEGRAZIONE NUMERICA – p.33/33