Analisi Numerica Corso di Laurea in Ingegneria Elettrotecnica (A.A. 2016-2017) Prof.ssa Silvia Tozza Integrazione numerica 6 Dicembre 2016
Silvia Tozza Email: tozza@mat.uniroma1.it Ricevimento: Su appuntamento Pagina del corso: http://silviatozza.altervista.org/silvia_tozza/an_ing_elettr.html
Introduzione Problema (Demografia) Consideriamo una popolazione formata da un numero X grande di individui. La distribuzione n(s) della loro altezza può essere rappresentata da una funzione a campana caratterizzata dal valor medio h dell altezza e da una deviazione standard σ, Allora, n(s) = N [h,h+ h] = X σ 2π e (s h)2 /(2σ2). h h h n(s)ds (1) rappresenta il numero di individui la cui altezza è compresa fra h e h + h (per un h > 0).
Introduzione Nella figura sottostante è riportato un esempio che corrisponde ad aver preso X = 200 individui con h = 1.7m, σ = 0.1m. L area della regione ombreggiata fornisce il numero di individui la cui altezza è compresa fra 1.8 e 1.9m. 4.2 Approssimazione delle derivate 117 800 700 600 n(s) 500 400 300 200 100 0 1 1.5 1.8 1.9 2 2.5 Figura: Figura Distribuzione 4.1. Distribuzione dell altezza dell altezza per una popolazione per una popolazione formata formata da X da = 200 M = individui. 200 individui s Allora N [h,h+ h] = h+ h n(s) ds (4.3) S. Tozza - SAPIENZA, Università di Roma h Integrazione numerica
Introduzione Goal: Vogliamo introdurre metodi numerici adatti ad approssimare l integrale I(f ) = b a f (x)dx, dove f é un arbitraria funzione continua in [a, b]. Ci limiteremo a ricavare alcune semplici formule, che sono parte della piú ampia famiglia delle cosiddette formule di Newton-Cotes.
Metodo del punto medio Una semplice procedura per approssimare I(f ) consiste nel suddividere l intervallo [a, b] in sottointervalli con I k = [x k 1, x k ], k = 1,..., M, x k = a + kh, k = 0,..., M, H = (b a)/m.
Metodo del punto medio Poichè I(f ) = M k=1 I k f (x)dx, su ogni sotto-intervallo I k si sostituisce l integrale di f con l integrale di un polinomio f che approssimi f su I k. La soluzione più semplice consiste nello scegliere f come il polinomio costante che interpola f nel punto medio dell intervallo I k, ovvero in x k = x k 1 + x k 2
Metodo del punto medio In tal modo si ottiene la Formula di quadratura composita del punto medio M Ipm(f c ) = H f ( x k ). (2) k=1 Il pedice pm sta per punto medio, mentre l apice c sta per composita. Essa è accurata al second ordine rispetto a H. Più precisamente, se f è derivabile con continuità in [a, b] fino al second ordine, si ha I(f ) I c pm(f ) = b a 24 H 2 f (ξ), (3) dove ξ è un opportuno punto in [a, b].
Metodo del punto medio La formula (2) è anche nota come formula di quadratura composita del rettangolo per la sua interpretazione geometrica, che è evidente nella figura sottostante. 4.3 Integrazione numerica 121 f f x x x 1 x k x M a (a + b)/2 b Figura Figura: 4.3. Formule Formule del punto delmedio punto composito mediocomposito (a sinistra) e del (apunto sinistra) medioedel semplice punto (a destra) medio (a destra) dove ξ è un opportuno punto in [a, b] (si veda l Esercizio 4.6). Laformula (4.13) è anche nota come formula di quadratura composita del rettangolo
Metodo del punto medio La formula del punto medio semplice (nota anche come formula del rettangolo) si ottiene prendendo M = 1 nella (2), ovvero usando la formula del punto medio direttamente sull intervallo (a, b). Formula di quadratura del punto medio semplice [ ] a + b I pm (f ) = (b a)f. (4) 2 L errore è dato da I(f ) I pm (f ) = (b a)3 (b a)f (ξ), (5) 24 dove ξ è un opportuno punto in [a, b]. L errore in (5) segue come caso particolare della (3).
Metodo del punto medio Grado di esattessa Il grado di esattezza di una formula di quadratura è il più grande intero r 0 per il quale l integrale approssimato (prodotto dalla formula di quadratura) di un qualsiasi polinomio di grado r è uguale all integrale esatto. Come si deduce dalle (3) e (5), le formule del punto medio hanno grado di esattezza 1 in quanto integrano esattamente tutti i polinomi di grado minore od uguale a 1 (ma non tutti quelli di grado 2).
Metodo del punto medio - Esercizio Scrivere in MATLAB la function midpointc che implementi la formula composita del punto medio. I parametri d ingresso sono gli estremi dell intervallo di integrazione a e b, il numero di sottointervalli M e la variabile fun che contiene l espressione della funzione integranda f. Restituisce in output l approssimazione dell integrale della funzione.
Metodo del trapezio Si può ottenere un altra formula di quadratura sostituendo f su ogni I k con il suo interpolatore lineare nei nodi x k 1 e x k (equivalentemente, sostituendo f in [a, b] con l interpolatore lineare composito Π H 1 f ) Si perviene alla seguente formula Formula del trapezio composita I c t (f ) = H 2 M k=1 [f (x k 1 )+f (x k )] = H M 1 2 [f (a)+f (b)]+h k=1 f (x k ) (6) Essa è accurata al second ordine rispetto a H. Più precisamente, I(f ) I c t (f ) = (b a) H 2 f (ξ), (7) 12 per un opportuno ξ [a, b], purchè f C 2 ([a, b]).
Metodo del trapezio Ponendo M = 1 nella (6), si ottiene la seguente formula Formula del trapezio semplice L errore che si commette vale I t (f ) = b a [f (a) + f (b)] (8) 2 I(f ) I t (f ) = (b a)3 f (ξ), (9) 12 con ξ opportuno in [a, b]. Si deduce che (8) ha grado di esattezza uguale ad 1, come la formula del punto medio.
Metodo del trapezio La formula (8) è detta formula del trapezio semplice per via della sua interpretazione geometrica, visibile nella figura sottostante. 4.3 Integrazione numerica 123 f f x x 0 = a x k x M = b x 0 = a x x 1 = b Figura Figura: 4.4. Formule Formule del trapezio del tra peziocomposita (a sinistra) e del (atrapezio sinistra) semplice edel (a destra) trapezio (a destra) per unopportuno ξ [a, b], purché f C 2 ([a, b]). Utilizzando (4.17) con M =1, si trova la formula
Metodo del trapezio - in MATLAB La formula composita del trapezio (6) è implementata in MATLAB tramite i comandi trapz e cumtrapz. In particolare, se indichiamo con x il vettore con componenti gli x k e con y il vettore delle f (x k ), z = cumtrapz(x, y) restituisce un vettore z che ha come componenti i valori z k = xk a f (x)dx, approssimati con la formula composita del trapezio. Di conseguenza, l ultima componente del vettore z, ossia z(m + 1), contiene un approssimazione dell integrale di f su (a, b).
Metodo di Simpson La formula di Simpson si ottiene sostituendo su ogni sottointervallo I k l integrale di f con quello del polinomio interpolatore di grado 2 di f relativo ai nodi x k 1, x k = x k 1+x k 2 e x k, ossia Π 2 f (x) = 2(x x k)(x x k ) H 2 f (x k 1 ) + 4(x k 1 x)(x x k ) H 2 f ( x k ) + 2(x x k)(x x k 1 ) H 2 f (x k ).
Metodo di Simpson La formula risultante è nota come la formula di quadratura composita di Simpson, che è data dalla seguente Formula di Simpson composita I c s (f ) = H 6 L errore commesso è pari a M [f (x k 1 ) + 4f ( x k ) + f (x k )]. (10) k=1 I(f ) I c s (f ) = (b a) H 4 180 16 f (4) (ξ), (11) per un opportuno ξ [a, b], purché f C 4 ([a, b]). Si tratta quindi di una formula accurata di ordine 4 rispetto a H.
Metodo di Simpson Quando la (10) viene applicata al solo intervallo [a, b], otteniamo la formula di quadratura di Simpson semplice Formula di Simpson semplice I s (f ) = b a 6 L errore che si commette vale [f (a) + 4f ( a + b ) + f (b)]. (12) 2 I(f ) I s (f ) = 1 (b a) 5 f (4) (ξ), (13) 16 180 per un opportuno ξ [a, b]. Il grado di esattezza è quindi uguale a 3.
Metodo di Simpson - in MATLAB Il comando MATLAB quad implementa la formula composita di Simpson adattiva, ossia calcola un approssimazione di I(f ) a meno di una tolleranza toll fissata, utilizzando una distribuzione non uniforme dei passi di integrazione nell intervallo [a, b]. In tal modo si garantisce la stessa accuratezza della formula di Simpson composita (10), ma con un numero inferiore di nodi di quadratura e, quindi, di valutazioni di f.
Metodo di Simpson - in MATLAB La sintassi per il comando MATLAB è quad(fun,a,b) dove fun è la funzione integranda, che può essere definita in linea, come function handle o definita in un M-file; a è l estremo inferiore dell intervallo di integrazione; b è l estremo superiore dell intervallo di integrazione. Di default, MATLAB utilizza una tolleranza toll= 1.e-6. Se si desidera una tolleranza diversa, basta aggiungerla come quarto argomento quad(fun,a,b,toll)
Metodo di Simpson - Esercizio Scrivere la function simpsonc che implementi la formula composita di Simpson. I parametri d ingresso sono gli estremi dell intervallo di integrazione a e b, il numero di sottointervalli M e la variabile fun che contiene l espressione della funzione integranda f. Restituisce in output l approssimazione dell integrale della funzione. function int = simpsonc(a,b,m,fun)
Metodo di Simpson - Esempio in MATLAB Esempio: Problema di Demografia (definito nell introduzione) Per determinare il numero di individui X la cui altezza è compresa fra 1.8 e 1.9m, dobbiamo calcolare l integrale (1) per h = 1.8 e h = 0.1. Usiamo la formula composita di Simpson (10) con 100 sotto-intervalli. In MATLAB scriveremo: X = 200; hbar = 1.7; sigma = 0.1; fun = @(h)x/(sigma sqrt(2 pi)) exp( (h hbar).ˆ... 2./(2 sigmaˆ2)); int = simpsonc(1.8, 1.9, 100, N) La soluzione calcolata è int = 27.1810 Si stima quindi che il numero di individui con altezza nell intervallo indicato è 27.1810, corrispondente al 15.39% della popolazione.