13.07.2015 Views

Lezione del 29/31 ottobre 2003. - Matematica

Lezione del 29/31 ottobre 2003. - Matematica

Lezione del 29/31 ottobre 2003. - Matematica

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Formula dei trapeziIntegrazione con la formula dei trapeziInterpoliamo f con il polinomio lineare Π 1 che passa per i punti(a, f(a)) e (b, f(b)).L’integrale si calcola facilmente usando la formula <strong>del</strong>l’area <strong>del</strong>trapezio:I 1 (f) =∫ baΠ 1 (x) dx = b − a2 (f(a) + f(b)). 4Formula di SimpsonIntegrazione con la formula di Simpson5Usiamo ora il polinomio Π 2 che interpola la funzione nei nodi(a, f(a)), (b, f(b)) e (c, f(c)) essendo c = (a + b)/2. Introducendoi polinomi di Lagrange L 0 , L 1 e L 2 associati rispettivamente ai 3nodi x 0 = a, x 1 = c e x 2 = b, si ottiene la seguente espressione perl’integrale approssimato:I 2 (f) =∫ ba+ f(c)Π 2 (x) dx = f(a)∫ ba∫ baL 1 (x) dx + f(b)L 0 (x) dx∫ baL 2 (x) dx.Dobbiamo calcolare gli integrali dei polinomi di Lagrange.67


Come calcolare gli integrali dei polinomi di LagrangeIntroduciamo un cambiamento di variabili in modo che il genericointervallo [a, b] sia trasformato nell’intervallo [−1, 1]. La nuovavariabile t si ottiene da x mediante la sostituzionet = −1 + 2 (x − a)b − a quindix = a + b − a (t + 1).2L’integrale <strong>del</strong> polinomio di Lagrange diventa:∫ baL i (x) dx = b − a2∫ 1−1L i(a + b − a2 (t + 1) )dt.a + bLa sostituzione è lineare: a → −1, → 0, b → 1.2I polinomi di Lagrange L i rispetto alla variabile x vengonotrasformati in polinomi di Lagrange ˆL i rispetto alla variabile t.ˆL 0 (t) =Si ottiene quindi:∫ 1−1t(t − 1), ˆL1 (t) = 1 − t 2 , ˆL2 (t) =2ˆL 0 (t) dt = 1 3 , ∫ 1−1ˆL 1 (t) dt = 4 3 , ∫ 1−1(t + 1)t.2ˆL 2 (t) dt = 1 3 ,che sostituiti nella formula per I 2 (f) danno la formula di SimpsonI 2 (f) = b − a ( ( ) )a + bf(a) + 4f + f(b) .62Grado di precisione <strong>del</strong>la formula di quadratura8Stima <strong>del</strong>l’errore nell’integrazione numerica9Si dice che una formula di integrazione numerica ha grado diprecisione p se vale chePer le formule presentate si hanno le seguenti stime <strong>del</strong>l’errore:I(f) = Ĩ(f) per ogni polinomio f di grado ≤ p;I(f) ≠ Ĩ(f) per ogni polinomio f di grado > p.I(f) − I 0 (f) =(b − a)3f ′′ (ξ 0 )24Esempi1. La formula <strong>del</strong> punto medio ha g.d.p. 1.2. La formula dei trapezi ha g.d.p. 1.3. La formula di Simpson ha g.d.p. 3.I(f) − I 1 (f) = −(b − a)3f ′′ (ξ 1 )12I(f) − I 2 (f) = − 1 (b − a) 516 180 f (4) (ξ 2 )1011


Formule di Newton–CotesFormule compositeLe formule <strong>del</strong> punto medio, dei trapezi e di Simpson sono casiparticolari <strong>del</strong>le formule di Newton–Cotes basate sull’approssimazione<strong>del</strong>la funzione da integrare mediante polinomi interpolatori digrado n in nodi equispaziati nell’intervallo [a, b].Formule di GaussLe formule di Gauss raggiungono il massimo grado di precisioneuna volta fissato il numero dei nodi.Suddividiamo l’intervallo [a, b] in N sottointervalli I k = [x k−1 , x k ]k = 1, · · · , N con x k = kH essendo H = (b − a)/N.Applicando la proprietà di additività <strong>del</strong>l’integrale si ottiene:I(f) =N∑∫k=1I kf(x) dx.Su ogni intervallo I k applichiamo la formula di quadratura scelta.Formule composite (continua)12Formule composite (continua)13Formula <strong>del</strong> punto medioI 0N (f) = HN∑( )xk−1 + x kf.2k=1Formula dei trapeziI 1N (f) = H(f(a)N−12 + ∑k=1Formula di Simpson)f(x k ) + f(b) .2(I 2N (f) = H N∑( ))N−1xk−1 + x k∑f(a) + f(b) + 4 f+ 2 f(x k ) .62k=1k=1. . . con le seguenti stime <strong>del</strong>l’errore:I(f) − I 0N (f) = b − a24 H2 f ′′ (ξ 0 )I(f) − I 1N (f) = − b − a12 H2 f ′′ (ξ 1 )I(f) − I 2N (f) = − b − a H 4180 16 f (4) (ξ 2 )1415


EsercizioScrivere un programma di tipo function che calcoli il valore approssimato<strong>del</strong>l’integrale di una funzione mediante le formule composite.La riga di dichiarazione <strong>del</strong>la function deve essere <strong>del</strong> seguente tipo:function[I] = nome function(a,b,f,N)dove i dati in input rappresentano:a,b gli estremi <strong>del</strong>l’intervallo;f il nome <strong>del</strong>la funzione da integrare;N il numero degli inetervalli di suddivisione.Scrivere un programma di tipo script per calcolare i seguentiintegrali al variare di N=[5,10,50,100,200,500]:∫ 2−1x 4 dx = 33 ∫ π/25 , cos x dx = 2,π/2∫ 10e x dx = e − 1.Soluzione <strong>del</strong>l’esercizio functionfunction[I]=intcomposita(a,b,f,N,metodo)% a,b estremi <strong>del</strong>l’intervallo;% N numero <strong>del</strong>le suddivisioni;% f nome <strong>del</strong>la funzione da integrare.% metodo=1 per punto medio; =2 per trapezi; =3 per Simpson% I valore <strong>del</strong>l’integrale;h=(b-a)/N;xn=linspace(a,b,N+1);if metodo==1x=xn(1:N)+h/2; ff=eval(f);I=h*sum(ff);elseif metodo==2x=xn; ff=eval(f);I=h*sum([ff(1)/2 ff(2:N) ff(N+1)/2]);elsex=[xn xn(1:N)+h/2]; ff=eval(f);I=h*sum([ff(1) ff(N+1) 2*ff(2:N) 4*ff(N+2:2*N+1)])/6;endSoluzione <strong>del</strong>l’esercizio script16L’integrazione numerica con MATLAB17if caso==1a=-1; b=2; f=’x.^4’; Iesatto=33/5;elseif caso==2a=-pi/2; b=-a; f=’cos(x)’ Iesatto=2;elsea=0; b=1; f=’exp(x)’; Iesatto=exp(1)-1;endN=[5 10 50 100 200 500];for metodo=1:3for k=1:length(N)I(metodo,k)=intcomposita(a,b,f,N(k),metodo);endendfigureloglog(N,abs(Iesatto-I))Funzionequadquadlquad8dblquadSignificatoQuadratura adattiva con formula di Simpson.Quadratura adattiva con formula diGauss-Lobatto (Matlab 6).Quadratura adattiva con formula diNewton–Cotes a 9 punti (Matlab 5).Formula di quadratura per integralidoppi su rettangoli.1819


Uso <strong>del</strong>le function quad e quadlIl calcolo <strong>del</strong>l’integrale ∫ bf(x)dx può essere effettuato con unoadei seguenti comandi indicando con f la funzione f.>> q=quad(f,a,b) formula di ordine basso;>> q=quadl(f,a,b) formula di ordine elevato in Matlab 6;>> q=quad8(’f’,a,b) formula a 9 nodi in Matlab 5,Ci sono tre modi per assegnare f>> q=quadl(’1./(1+10*x.∧2)’,-2,2)>> q=quadl(’funz’,-2,2) essendo funz.m il file:Formule adattiveIl passo di integrazione H può essere scelto in modo da garantireche l’errore sia inferiore ad una tolleranza ε prestabilita.Se usiamo la formula di Simpson si dovrebbe trovare H tale cheb − a180H 416M < ε, essendo M = maxx∈[a,b] |f (4) (x)|function[f]=funz(x)f=1./(1+10*x.^2);>> F=inline(’1./(1+10*x.∧2)’); >> q=quadl(F,-2,2)La funzione arctan(ax)20La funzione arctan(ax)21a = 1∫ 5−1arctan(ax)dx = 4.79913099259686a = 10∫ 5−1arctan(ax)dx = 6.12240101910<strong>31</strong>8M=4.66560, tol=1.e-6imponendo b−a H 4180 16 M < tol si ricava H=0.140149 e N=43. 22M=4.647825e+04, tol=1.e-3imponendo b−a H 4180 16 M < tol si ricava H=0.0788870 e N=77. 23


Risultati a confrontoStrategia adattivaa=1, tol=1.e-6a=10, tol=1.e-3Obiettivo: distribuire l’ampiezza dei sottointervalli in modonon uniforme, così da garantire la stessa accuratezza su ciascunsottointervallo.Ingredienti:a. stimatore <strong>del</strong>l’errore di quadratura;b. strategia per la scelta <strong>del</strong>l’ampiezza dei sottointervalli.Iesatto=4.79913099Isimp=4.79913093err simp=6.49e-8Iadat=4.79913097err adat=2.36e-8Iesatto=6.122401019Isimp=6.122401012err simp=7.02e-9Iadat=6.122079err adat=3.22e-4Stimatore <strong>del</strong>l’errore <strong>del</strong>la formula di quadratura24Se f (4) (ξ) ≈ f (4) (η) allora si ricava:25Errore per la formula di Simpson sull’intervallo A = [α, β]:∫ βα(β − α)5f(x)dx − I S (f) = −2880 f (4) (ξ)f (4) (ξ) = 4608016(β − α) 5∆Iche dàErrore per la formula di Simpson composita sull’intervallo A = [α, β]suddivisiso in due parti:∫ βαf(x)dx − IS C (β − α)5(f) = −46080 f (4) (η)Sottraggo le due equazioni <strong>del</strong>l’errore:∫ βαf(x)dx − I C S (f) ≈ 115 ∆IL’ultima equazione fornisce uno stimatore <strong>del</strong>l’errore mediantequantità calcolabili.∆I = IS C (β − α)5(f) − I S (f) = −2880 f (4) (β − α)5(ξ) +46080 f (4) (η)2627


Strategia di scelta <strong>del</strong> passo di integrazioneStrategia di scelta <strong>del</strong> passo di integrazioneDividiamo l’intervallo di integrazione in tre parti:J A = I C S (f)formula composita1. A= [α, β] intervallo di integrazione attivo;2. S intervallo già esaminato (il valore <strong>del</strong>l’integrale è < tol);3. N intervallo da esaminare.All’inizio: N= [a, b], A= [a, b], S= ∅.calcolo ∆I∆I ≤ 15tolsì=⇒J S = J S + J AS = S ∪ AN = [a, b] \ SA = NJ S indica l’approssimazione <strong>del</strong>l’integrale calcolata sull’intervallo S;J A indica l’approssimazione <strong>del</strong>l’integrale calcolata sull’intervallo A.no=⇒A = [α, β ′ ] dove β ′ = (α + β)/2N = N ∪ [β ′ , β]torna alla stima <strong>del</strong>l’erroreIntegrazione di funzioni di 2 variabili28Suggerimenti per l’esercizio<strong>29</strong>Sia D = {(x, y) ∈ R 2 : a ≤ x ≤ b, α(x) ≤ y ≤ β(x)} un dominionormale.Per calcolare l’integrale doppio di una funzione f(x, y) uso la formuladi riduzione:∫ ∫∫ (b ∫ )β(x)f(x, y) dx dy =f(x, y) dy dx.Daα(x)function[I] = intdoppio(a,b,Nx,Ny,alpha,beta,f)Input: a, b estremi <strong>del</strong>l’intervallo;Input: Nx, Ny numero <strong>del</strong>le suddivisioni;Input: alpha, beta nomi <strong>del</strong>le funzioni che descrivono il dominio;Input: f nome <strong>del</strong>la funzione da integrare.Output: I valore <strong>del</strong>l’integrale.Esercizio Scrivere una function per il calcolo <strong>del</strong>l’integrale doppiosu una regione normale che usi le formule composite introdotte comeformule per integrali di linea.30<strong>31</strong>


Applicazione <strong>del</strong>la formula composita <strong>del</strong> puntomedio1. Suddividere l’intervallo [a, b] in Nx parti di ampiezza hx. Indicareil punto medio <strong>del</strong> k-esimo intervallino con x k .2. Calcolare l’integrale di linea rispetto alla variabile x mediante∑Nxhxk=1∫ β(xk )α(x k )f(x k , y) dy.3. Per k fissato applicare la formula composita <strong>del</strong> punto medioall’integrale di linea in y, suddividendo l’intervallo [α(x k ), β(x k )]in Ny parti uguali di ampiezza hy e calcolando∫ β(xk )α(x k )Ny∑f(x k , y) dy ≈ hy f(x k , y j )j=132

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!