1 / 8

Esercizio n.5

Esercizio n.5. Dato e la formula del metodo trapezoidale. a ) Dimostrare che, dato un qualunque  > 0, se  m’ : | I m’ + 1  I m’ |   allora. supponendo che f ( x )  C 2 [ a , b ].

arav
Download Presentation

Esercizio n.5

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Esercizio n.5 Dato e la formula del metodo trapezoidale a) Dimostrare che, dato un qualunque  > 0, se m’ :|Im’ + 1Im’ | allora supponendo che f(x)  C 2 [a,b]. Ciò consente, prefissato un certo  > 0, errore massimo assoluto voluto nella approssimazione del calcolo di I, di trovare un n sufficientemente grande da verificare la: affinché sia verificata la |In I| per tutti gli n successivi.

  2. c) Si verifichi la bontà del metodo applicandolo al calcolo dell’integrale per vari gradi di precisione e confrontando il risultato con la soluzione analitica per verificare che l’errore effettivo sia compatibile con la precisione richiesta. Esercizio n.5 b) Si scriva un programma in C per trovare una stima di I col metodo trapezoidale e in modo che l’accuratezza sia determinabile a priori secondo il metodo descritto in a).

  3. Esercizio n.5 d) Si applichi il metodo al calcolo dell’integrale con tre cifre significative.

  4. Soluzione n.5a a) Indichiamo con Dato un  > 0, supponiamo che  m : allora, essendo, si ha che (5.1) ma sappiamo che* quindi da cui e dalla (5.1) Dunque abbiamo dimostrato che se allora ma quest’ultima disuguaglianza è in realtà valida n > m poiché m è sempre decrescente c.v.d. Nota: la stessa vale anche per il metodo rettangolare, mentre per Simpson va sostituito l’esponente 2 con 4 nella frazione n/(n+1) che va a sua volta sostituita con n/(n+2) *vero a patto che f(x)  C2[a,b] e ricordando che, in questo caso, |RT| < M/n2

  5. Soluzione n.5b Algoritmo Leggi a, b, delta Poni n = 2; h = b - a; deltaI = 1 Poni trap0 = (funz(b) + funz(a)) * h / 2 Esegui loop la prima volta e poi finché deltaI > c1 Poni c1 = delta * (1-n^2/(n+1)^2) Poni h= (b-a)/n Poni trap = 0 Esegui loop per i = 1,2,3,...,n-1 poni trap = trap + 2*funz(a + h*i) Fine loop Poni trap = (trap + funz(a) + funz(b))*h/2 Poni deltaI = Ass(trap - trap0) Poni n = n + 1 Poni trap0 = trap Fine loop Scrivi trap0, n - 1 Fine

  6. Soluzione n.5b /* ESERCIZIO 5 programma per il calcolo numerico dell'integrale di una funzione data analiticamente, tra gli estremi a e b che, usando il metodo trapezoidale, si arresta ad un numero di intervalli tali da dare una stima con errore assoluto inferiore a un delta dato. La funzione e‘ specificata in f *** compilare con l'opzione -lm */ #include <stdio.h> #include <math.h> main() { /* dichiarazione variabili */ int i,n; double nf; double a,b,h,delta,deltaI,c1; double trap,trap0; double f( double ); /*-------------------------*/ printf ("introdurre a, b, delta: "); fflush (stdin); scanf ("%lf,%lf,%lf", &a,&b,&delta); n=2; h=b-a; trap0=(f(b)+f(a))*h*0.5; do { nf=(double)n; c1=delta*(1-pow(nf/(nf+1),2)); h=(b-a)/nf; trap=0; for (i=1; i < n; i=++i) { trap = trap +f(a+h*(double)i); } trap = h*trap + (f(a)+f(b))*h*0.5; deltaI = fabs (trap - trap0); n=n+1; trap0=trap; } while (deltaI > c1) printf ("integrale = %lf \n",trap); printf ("dopo %d passi. \n", n); } double f ( double x) { double funz ; funz = exp(x); return funz; }

  7. Soluzione n.5c Il margine d’errore imposto è sempre compatibile ( maggiore) con quello effettivamente commesso. OK! Attenzione: le variabili nel programma devono essere in doppia precisione!

  8. Soluzione n.5d il risultato è I = 0.7127 0.0005 che si ottiene con 58 intervalli di integrazione

More Related