Metodi Numerici per la soluzione di equazioni e il calcolo di integrali
by user
Comments
Transcript
Metodi Numerici per la soluzione di equazioni e il calcolo di integrali
Università degli Studi di Palermo Scuola Interuniversitaria Siciliana di Specializzazione per l’Insegnamento Secondario Laboratorio di Analisi Numerica Prof. C. Arena Metodi Numerici per la soluzione di equazioni e il calcolo di integrali definiti Specializzandi: Dott. Ferdinando Aufiero Dott. Onofrio Indelicato Dott. Rosario Manto Dott.ssa Angela Schiavo Anno accademico 2000/2001 1 Indice Laboratorio di analisi numerica ............................. 3 Analisi della classe ................................................................................ 3 Osservazione sul rilievo educativo della disciplina insegnata .................. 3 Costruzione dell’unità didattica ............................................................. 5 UNITA’ DIDATTICA: “Risoluzioni numeriche d'equazioni” ....................... 5 UNITA’ DIDATTICA: “Calcolo numerico d’ integrali definiti” .................... 7 Verifiche e criteri di valutazioni: ............................................................ 7 Attività didattica ................................................................................... 9 Il metodo delle corde .......................................................................... 15 Metodi di punto fisso o delle approssimazioni successive...................... 18 Integrazione numerica ........................................................................ 22 Attività didattica ................................................................................. 22 METODO DEI RETTANGOLI .................................................................. 23 METODO DEI TRAPEZI......................................................................... 25 METODO DI CAVALIERI-SIMPSON........................................................ 28 Griglia di valutazione .......................................................................... 32 Appendice A........................................................................................ 33 Anno accademico 2000/2001 2 CORSO SISSIS – 2000-2001 Laboratorio di analisi numerica Analisi della classe La conoscenza del gruppo classe è presupposto indispensabile per garantire il buon esito del compito educativo-didattico e per poter qualificare la preparazione degli alunni. Dalla partecipazione all’attività didattica dei discenti verifiche riscontrate finalizzate alla valutazione del e dalle livello di preparazione individuale di ciascuno dei discenti, si può constatare che la classe si presenta abbastanza eterogenea, per quanto riguarda le conoscenze-competenze e per la partecipazione al dialogo scolastico. Nei primi giorni di scuola la conoscenza è orientata a realizzare la socializzazione degli alunni tra loro con particolare attenzione a eventuali gruppi di alunni, provenienti da zone decentrate, individuare gruppi trainanti e a far emergere problemi, motivazioni, disagi e aspettative. Il fine che si vuole raggiungere con la compartecipazione dei diversi docenti è stimolare la classe al dialogo, in particolare sollecitando attivamente gli alunni provenienti da altre classi o ripetenti che trovano maggiori difficoltà ad inserirsi nel contesto di un gruppo già formato. Osservazione sul rilievo educativo della disciplina insegnata La matematica, al pari di parecchie altre discipline, ha un ruolo basilare e specifico all’interno del processo educativo poiché contribuisce in modo rilevante alla formazione culturale dei giovani stimolando la ricerca, li aiuta a capire le successive tappe delle conquiste del pensiero umano, educa alla riflessione, nel complesso li aiuta ad acquisire un metodo di studio ordinato, valido anche in ambito di altri campi del sapere. Lo studio della matematica: Ø Promuove ed esercita le facoltà sia intuitive che logiche Ø Educa ai procedimenti euristici, ai processi di astrazione e alla formazione dei concetti Ø Esercita a ragionare induttivamente ed deduttivamente Anno accademico 2000/2001 3 Ø Sviluppa le attitudini sia analitiche che sintetiche. Determinando cosi, nei giovani, abitudine alla sobrietà, precisione nel linguaggio, cura delle coerenze argomentative, gusto per la ricerca della verità. Il consiglio di istituto tenendo conto delle aspettative e delle esigenze nonché del contesto socio-economico-culturale, del territorio su cui si trova dislocata la maggior parte dell’utenza (alunni, famiglie) si propone di: Ø Potenziare la crescita culturale e sociale dei discenti Ø Potenziare le loro capacità di autocontrollo Ø Potenziare le loro capacità di proporre in modo adeguato le proprie idee Ø Potenziare le loro capacità d'autonomia operativa In ogni caso non dileggiando mai nessuno e dimostrando ad ognuno un apprezzamento per l’impegno dimostrato, perché ciascuno, vedendo riconosciuto il proprio lavoro, si senta gratificato e spronato a perseverare (nello studio). Per il conseguimento di tali obiettivi, il consiglio di classe concorda nella scelte delle strategie più idonee per instaurare, nel contesto classe, un clima di collaborazione reciproca alunno-alunno e alunno-docente. Ritiene costruttivo che l’alunno: Ø Consideri il docente come guida della propria formazione. Ø Non dipende troppo dal docente ma acquisti una propria autonomia. Di contro che il docente: Ø Comprenda la personalità dell’alunno Ø Valuti per ciascuno il raggiungimento degli obiettivi prefissati in relazione dei propri livelli di preparazione di partenza e alla proprie attitudini e capacità apprezzando più i progressi fatti che i risultati effettivi delle singole prove non trascurando di incoraggiare i più timidi e di frenare gli entusiasmi dei più superficiali. Il potenziamento del processo di socializzazione, il raggiungimento degli obiettivi formativi, previsti dalla Programmazione di Istituto saranno perseguibili lavori di gruppo guidati o autonomi, ricerche e rielaborazioni, dibattiti e confronti. Anno accademico 2000/2001 4 Costruzione dell’unità didattica Il problema didattico centrale, che si pone al docente nell’attuazione dei programmi, risiede nella scelta di situazioni idonee a fare insorgere in modo naturale congetture, ipotesi, problemi. Per una pratica così finalizzata sono di importanza i risultati delle ricerche in campo storico-epistemologico, in quello pedagogico, nonchè in quello metodologico-didattico. Le rappresentazioni epistemologiche sono dei percorsi conoscitivi di un particolare concetto matematico o scientifico in generale. Tali rappresentazioni possono essere messe a punto da un soggetto apprendente o da una comunità scientifica in un determinato periodo storico. Affinchè si riesca a costruire bene l’unità didattica è opportuno che si introducano dei concetti base in modo tale che si renda di facile comprensione l'argomento che si vuole trattare; UNITA’ DIDATTICA: “Risoluzioni numeriche d'equazioni” Enunciazione dell'argomento dell'unità didattica. L'argomento dell'unità didattica che si vuole affrontare riguarda le risoluzioni numeriche di equazioni. Concetti e vocaboli introdotti: Concetto di soluzione numerica di equazioni, approssimazione, errore, iterazione, formule iterative. Prerequisiti e obiettivi: I prerequisiti per l’apprendimento, devono essere i seguenti: Ø Conoscere e sapere applicare i metodi algebrici di soluzioni delle equazioni polinomiali. Ø Conoscere le equazioni trascendenti e trigonometriche. Ø Sapere utilizzare il foglio di calcolo.(EXCEL) Gli obiettivi cognitivi che si vogliono perseguire sono: Ø Conoscere i principali metodi numerici di soluzione di equazioni polinomiali, trascendenti e trigonometriche Anno accademico 2000/2001 5 Ø Conoscere i limiti di applicabilità dei metodi numerici di soluzione dell’equazioni. Ø Conoscere il problema degli errori nei metodi numerici di soluzione dell’equazioni. Gli obiettivi operativi che si vogliono perseguire sono: Ø Sapere risolvere in forma numerica equazioni polinomiali, trascendenti e trigonometriche con l’ausilio del foglio di calcolo. Ø Confrontare i vari metodi di soluzione delle equazioni polinomiali, trascendenti e trigonometriche. Ø Sapere valutare l’errore commesso nell’applicazione di un metodo per soluzione equazioni Ø Valutare l'efficacia di un metodo di soluzione rispetto ad un altro. Anno accademico 2000/2001 6 UNITA’ DIDATTICA: “Calcolo numerico d’ integrali definiti” Enunciazione dell'argomento dell'unità didattica. L'argomento dell'unità didattica che si vuole affrontare, riguarda calcolo numerico di integrali definiti Concetti e terminologia introdotti: Concetto di calcolo numerico di integrale definito, errore di approssimazione. Prerequisiti e obiettivi: I prerequisiti per l’apprendimento, devono essere i seguenti: Ø Concetti di limite, e di calcolo differenziale. Ø Concetto di funzione primitiva e di integrale indefinito. Ø Sapere utilizzare il foglio di calcolo. Ø Conoscere il concetto di errore di approssimazione. Gli obiettivi cognitivi che si vogliono perseguire sono: Ø Conoscere i principali metodi numerici di calcolo di integrali definiti. Ø Conoscere i limiti di applicabilità dei metodi di integrazione numerica. Gli obiettivi operativi che si vogliono perseguire sono: Ø Sapere calcolare in forma numerica integrali definiti. Ø Confrontare i vari metodi di calcolo numerico su tali integrali. Ø Sapere valutare l’efficacia di un metodo rispetto ad un altro Verifiche e criteri di valutazioni: Le valutazioni sull’apprendimento, volte ad accertare il livello di preparazione raggiunto dall’allievo in ordine al tipo di conoscenza e capacità connesse agli obiettivi dell’insegnamento saranno effettuate tramite prove di verifiche di tipo formativo e sommativo. Le verifiche di tipo formativo saranno necessarie per il controllo in itinere del processo di apprendimento e di supporto per eventuali pilotaggi dell’attività didattica, prevedendo che nel caso venissero riscontrate eventuali lacune, queste verranno colmate attraverso un processo di recupero in itinere. Anno accademico 2000/2001 7 Le verifiche di tipo sommativo serviranno per il controllo del profitto scolastico ai fini della classificazione finale. Gli strumenti da utilizzare consisteranno in interrogazione, prove semistrutturate, questionari, esercizi ed esercitazioni al computer. I fattori che concorreranno alla valutazione saranno: l’impegno profuso, il metodo di studio, la partecipazione all’attività didattica, l’eventuale progresso riscontrato, il livello di conoscenza-competenza, nonché la situazione personale. Anno accademico 2000/2001 8 Attività didattica La nostra attività didattica consta di due parti fondamentali: 1. Introduzione del problema della soluzione di equazioni generiche: f(x) = 0 2. Laboratorio d'informatica, in cui saranno implementati grazie al foglio elettronico i metodi esposti nella parte teorica. La nostra lezione inizia col porre immediatamente il problema: richiamando le equazioni di primo grado chiederemo agli studenti cosa voglia dire risolvere un'equazione, è chiaro che per la maggior parte dei casi avremo modo di appurare una conoscenza del problema da parte di tutti. Iterando il nostro procedimento, riprenderemo le equazioni di secondo grado facendo notare come il metodo del discriminante ci assicura la conoscenza univoca delle due radici. L'assenza di tale metodo ci costringerebbe a provare ripetutamente se alcuni numeri presi a caso siano radici della nostra equazione. E' chiaro che questo modus operandi è inefficace per risolvere la nostra equazione e potrebbe anche non garantirci la soluzione in un tempo ragionevolmente breve. L'esistenza del metodo del discriminante per risolvere le equazioni di secondo grado alla fine rassicura gli studenti, legati ad una visione "formulistica" della matematica, sulla possibilità di trovare le soluzioni. La conoscenza di equazioni superiori al secondo grado da parte degli studenti nei programmi di scuola secondaria è legata solitamente alla possibilità di ricondurle a quelle di secondo grado: misconoscendo il fatto che quelle equazioni sono soltanto una piccolissima parte di quelle esistenti, e che basta cambiare di poco i coefficienti per non essere più in grado di risolverle. Nella fattispecie l'equazione: 6 x3 - 19 x2 +19 x - 6 = 0 ha tre radici complesse, che si possono direttamente ricavare riconducendola ad un'equazione di secondo grado. Basta cambiare di un'unità uno qualsiasi dei coefficienti trasformando ad esempio l'equazione nella forma: Anno accademico 2000/2001 9 6 x3 - 19 x2 +19 x -5 = 0 per trovarsi nell'impossibilità di risolverla con metodi tradizionali. Infatti solo raramente è possibile determinarne le soluzioni esatte e questo può accadere per vari motivi. Facciamo un paio di esempi: • È noto che anche per funzioni piuttosto semplici, per esempio polinomi di grado > 4 non è possibile scrivere formule risolutive in forma chiusa (cioè in cui compaiono solo un numero finito di operazioni elementari). Questo obbliga ad usare metodi iterativi che portano necessariamente a valori approssimati per le soluzioni. • I calcoli sono svolti in precisione finita: i numeri reali sono rappresentati nei calcolatori secondo un sistema detto virgola mobile normalizzata. Non descriveremo nei particolari questo metodo di rappresentazione; ci limiteremo ad osservare che è rappresentabile in macchina esattamente solo un sottoinsieme finito di reali.Tutti gli altri sono affetti fin dall'inizio da un errore di rappresentazione che varia a seconda della precisione di macchina (cioè a seconda di quante cifre binarie sono usate per rappresentare ciascun reale). Un valore tipico per l'errore relativo è circa 10-7 . Nonostante questo valore sia piuttosto piccolo, ci sono casi in cui può portare a seri problemi di calcolo. A seconda del contesto, cioè a seconda del metodo usato, dire che un valore x* è una soluzione approssimata di una equazione f(x) = 0 può voler dire sia che |f(x*)| è"piccolo" a sufficienza sia che x* è "vicino" alla soluzione esatta dell'equazione. Si pone a questo punto l'esigenza di utilizzare un metodo numerico per risolvere la nostra equazione. Dovrebbe essere chiaro agli studenti che trovare la soluzione dell'equazione equivale a trovare i punti d'intersezione con l'asse x della funzione f (x) = 6 x3 - 19 x2 +19 x -5. Illustriamo quindi i vari metodi di soluzione numerica di equazioni: Il metodo di bisezione Consideriamo l'equazione x3 - x - 1 = 0 Anno accademico 2000/2001 10 Osserviamo che f(1) = -1 e f(2) = 5 allora, poiché la funzione f(x) è continua, essa assume tutti i valori compresi tra -1 e 5 (teorema di Weierstrass). In particolare deve esistere almeno un valore x* compreso tra 1 e 2 tale che f(x*)=0. Studiando il segno della derivata f'(x) si potrebbe anche stabilire a priori che c'è esattamente un valore che annulla f(x) nell'intervallo [1, 2]. Come si può vedere dal grafico seguente: 6 5 4 3 f(x) 2 1 0 -1 1 1,2 1,4 1,6 1,8 2 -2 x Potremo prendere il punto medio del segmento come prima approssimazione della soluzione: x* = 1.5 con errore assoluto < 0.5 Per cercare di individuare la soluzione valutiamo f(x) nel punto medio dell'intervallo; si ha: f(1.5) = 0.875 > 0 > -1 = f(1). Quindi ora sappiamo che la soluzione x* è nell'intervallo [1, 1.5]. In altri termini: x* = 1.25 con errore assoluto < 0.25. Ripetendo lo stesso ragionamento, calcoliamo f(1.25): f(1.25) = -0.296... < 0 < 0.875 = f(1.5), quindi x*=1.375 con errore assoluto < 0.125. Proseguendo, si individua una sequenza di intervalli, di ampiezza sempre più piccola: ogni volta che si calcola la f in un nuovo punto l'errore dimezza. Il procedimento si può porre in forma algoritmica come segue: Anno accademico 2000/2001 11 data una funzione f(x) continua nell'intervallo [a0 , b0 ] e tale che f(a0 )f(b0 ) < 0, e dato un intero n 1.Per n = 0, 1, 2, ..., finché non soddisfatti m = (an +bn )/2 Se f(an )f(m) < 0 allora an+1 = an bn+1 = m altrimenti an+1 = m bn+1 = bn 2.L'equazione f(x) = 0 ha una soluzione x = m con errore assoluto < bn+1 - an+1 . È necessario precisare cosa significa l'espressione finché non soddisfatti . Un algoritmo, per essere tale, ha bisogno di un termine. Il procedimento usato invece potrebbe essere portato avanti all'infinito: è sempre possibile trovare un nuovo punto medio, calcolarci la funzione, trarre le conclusioni e ripartire daccapo. È necessario quindi aggiungere un criterio di arresto al procedimento: se non lo facessimo, un programma che realizzasse il metodo, proseguirebbe a fare calcoli in eterno senza fornire mai una risposta. Per evitarlo è sufficiente prevedere che ci si fermi dopo un certo numero massimo d'iterazioni, qualunque sia l'esito dell'elaborazione. D'altra parte, se ad un certo punto si avesse f(m) = 0, avremmo trovato la soluzione e non avrebbe senso proseguire oltre. Possiamo quindi riscrivere l'algoritmo nella maniera seguente: Data una funzione f(x) continua nell'intervallo [a0 , b0 ], tale che f(a0 )f(b0 ) < 0 e dato un intero nmax 1.Per n=0, 1, 2, ..., nmax m = (an +bn )/2 Se f(m) = 0 salta al punto 2. Se f(an )f(m) < 0 allora an+1 = an bn+1 = m altrimenti Anno accademico 2000/2001 12 an+1 = m bn+1 = bn 2.L'equazione f(x) = 0 ha una soluzione x = m con errore assoluto < bn+1 - an+1 . Per i metodi iterativi è bene prevedere un criterio che arresti le iterazioni, allorché il risultato raggiunto è giudicato buono a sufficienza, per esempio se l'errore relativo è minore di una tolleranza fissata. Per il metodo di bisezione, dato che l'errore relativo dimezza ad ogni ciclo, un criterio di questo tipo coincide esattamente col fissare un numero massimo di iterazioni. Il punto di forza di questo metodo è nella sua semplicità e sicura convergenza, il suo punto debole è invece nella scarsa efficienza rispetto agli altri metodi infatti poiché ad ogni passo viene dimezzato l’intervallo contenente la radice, pertanto richiede un numero elevato di iterazioni. L'algoritmo su descritto può essere implementato al calcolatore ricorrendo a un linguaggio di alto livello come Pascal, C, Visual Basic o un programma specifico per la matematica ad esempio Derive. In appendice A sono riportate un grafico dell'interpretazione geometrica del metodo di bisezione, e un diagramma di flusso utile nel caso si voglia implementare il metodo in forma algoritmica. Nel caso che si voglia invece implementare il metodo su un foglio di calcolo l'algoritmo su descritto può essere tradotto nelle seguenti funzioni: Supposto come nel nostro caso che f(a)*f(b)< 0 si ha: a1 = [a +(1-segno(f(a)*f(m))*a/2+(1+segno(f(a)*f(m))*b/2]/2 b1 = [b +(1-segno(f(a)*f(m))*a/2+(1+segno(f(a)*f(m))*b/2]/2 e iterando: an+1 = [an +(1-segno(f(an )*f(mn ))* an /2+(1+segno(f(an )*f(mn ))*bn /2]/2 an+1 = [bn +(1-segno(f(an )*f(mn ))* an /2+(1+segno(f(an )*f(mn ))*bn /2]/2 Di seguito è riportata l'applicazione di questo metodo al caso precedente mediante foglio di calcolo Excel: Anno accademico 2000/2001 13 Soluzioni di equazioni con il metodo di bisezione x3 - x - 1 = 0 n a b f(a) 0 1 2 1 1 1,25 2 1,5 1,5 3 1,25 4 1,3125 1,375 5 1,3125 1,34375 6 1,3125 1,328125 7 1,320312 5 1,328125 8 1,324218 75 1,328125 1,375 -0,296875 9 1,324218 1,3261718 75 75 10 1,324218 1,3251953 75 13 11 1,324707 03 12 1,324707 03 13 1,324707 03 14 1,324707 03 15 1,324707 03 16 1,324707 03 17 1,324714 66 -1 -1 -0,296875 1,3251953 13 1,3249511 72 1,3248291 02 1,3247680 66 1,3247375 49 1,3247222 9 1,3247222 9 0,0515136 72 0,0515136 72 0,0515136 72 0,0187106 13 0,0021279 45 0,0021279 45 0,0021279 45 -4,65949E05 -4,65949E05 -4,65949E05 -4,65949E05 -4,65949E05 -4,65949E05 -1,40587E05 f(b) m=(a+b)/2 f(m) 5 1,5 0,875 0,875 1,25 -0,296875 0,875 1,375 0,22460937 5 0,2246093 1,3125 75 0,05151367 2 0,2246093 1,34375 0,08261108 75 4 0,0826110 84 1,328125 0,01457595 8 0,0145759 1,3203125 58 0,01871061 3 0,0145759 1,3242187 58 5 0,00212794 5 0,0145759 1,3261718 0,00620883 58 75 0,0062088 1,3251953 0,00203665 3 13 1 0,0020366 1,3247070 -4,65949E51 31 05 0,0020366 51 0,0009947 91 0,0004740 39 0,0002137 07 8,35524E05 1,84779E05 1,84779E05 Anno accademico 2000/2001 1,3249511 72 1,3248291 02 1,3247680 66 1,3247375 49 1,3247222 9 1,3247146 61 1,3247184 75 0,00099479 1 0,00047403 9 0,00021370 7 8,35524E05 1,84779E05 -1,40587E05 2,20949E06 14 18 1,324714 66 19 1,324716 57 20 1,324717 52 21 1,324717 52 22 1,324717 76 23 1,324717 88 1,3247184 75 1,3247184 75 1,3247184 75 1,3247179 99 1,3247179 99 1,3247179 99 -1,40587E05 -5,92464E06 -1,85758E06 -1,85758E06 -8,40809E07 -3,32426E07 2,20949E06 2,20949E06 2,20949E06 1,75958E07 1,75958E07 1,75958E07 1,3247165 68 1,3247175 22 1,3247179 99 1,3247177 6 1,3247178 79 1,3247179 39 -5,92464E06 -1,85758E06 1,75958E07 -8,40809E07 -3,32426E07 -7,82336E08 Il metodo delle corde Il metodo delle corde è un metodo iterativo più efficiente per calcolare le radici di un’equazione non lineare f(x) reale e continua in un intervallo chiuso e limitato [a,b] che assuma valori di segno opposto agli estremi dell’intervallo, condizione che, come detto in precedenza, assicura la presenza di almeno una radice. Il metodo delle corde (o della falsa posizione), la cui interpretazione grafica è riportata in figura, consiste nel calcolare se l’intersezione xi della retta (corda) passante per i punti A,B di coordinate (a,ƒ(a)) e (b, ƒ(b)) rispettivamente con l’asse delle ascisse è una radice. Poiché l’equazione di una retta passante per i punti A,B ha equazione: Anno accademico 2000/2001 15 x−a y − f (a ) = b − a f (b) − f ( a) ponendo y = 0 si ottiene: x = a− (b − a) * f ( a) f (b ) − f ( a ) o ancora meglio: x= a * f (b ) − bf ( a) f (b ) − f ( a ) Per verificare questa condizione, non si controlla se f(xi) = 0, ma (poiché si lavora con i numeri reali) se | f(xi)| < p, ove p rappresenta la precisione scelta. Se xi non è una radice si valuta il segno del prodotto f(a) f(xi) e si procede allo stesso modo nel sotto intervallo [a, xi ] se il segno è negativo, o nel sottointervallo [xi ,b] se è positivo. Pertanto iterando il procedimento si genera una successione di termini { xi }, il cui termine (i+1)-esimo è: x1+1 = x i −1 * f ( xi ) − xi * f ( x i −1 ) f ( x i ) − f ( x i −1 ) i = 2,3,4… Si può notare che se, come sovente succede nei casi pratici, nell’intervallo considerato la funzione sia monotona e non cambi concavità, allora uno degli estremi rimane fisso e le formula precedente assume le seguenti forme: Anno accademico 2000/2001 16 Caso A funzione crescente e concavità verso il basso oppure funzione decrescente e concavità verso l’alto cioè: f (a ) * f ' ' ( x) > 0 allora la formula da applicare diventa la seguente: x i +1 = a * f ( xi ) − xi * f ( a) f ( x i ) − f (a ) Caso B funzione decrescente e concavità verso il basso oppure funzione crescente e concavità verso l’alto cioè: f (a ) * f ' ' ( x) > 0 allora la formula da applicare diventa la seguente: x i +1 = xi * f (b) − b * f ( xi ) f (b ) − f ( xi ) Poiché il procedimento su cui è basato il metodo delle corde approssima la funzione con la retta individuata dai punti di coordinate (a, f(a)) e (b, f(b)) si può dimostrare che l’errore commesso durante ogni iterazione è minore e pertanto è necessario un minor numero di iterazioni rispetto al metodo di bisezione, come si può dal seguente foglio di calcolo dove è stato applicato il metodo delle corde alla stessa funzione e allo stesso intervallo dell’esempio precedente, in questo caso la funzione è crescente e concava verso l’alto per cui la funzione di iterazione da applicare è quella del caso B. Anno accademico 2000/2001 17 Soluzioni di equazioni con il metodo delle corde X3 - x - 1 = 0 n 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 a b 1 2 -1 2 -0,5787037 2 -0,285363 2 -0,1295421 2 -0,0565885 2 -0,0243037 2 -0,0103619 2 -0,0044039 2 -0,0018693 2 -0,000793 2 -0,0003363 2 -0,0001426 2 -6,047E-05 2 -2,564E-05 2 -1,087E-05 2 -4,611E-06 2 -1,955E-06 2 -8,291E-07 2 -3,516E-07 2 -1,491E-07 2 -6,321E-08 2 -2,68E-08 2 -1,137E-08 2 f(a) -1 -1 -0,615102996 -0,737874669 -0,872631773 -0,943592724 -0,975710608 -0,989639262 -0,995596136 -0,998130748 -0,999207041 -0,999663699 -0,999857386 -0,999939525 -0,999974356 -0,999989126 -0,999995389 -0,999998045 -0,999999171 -0,999999648 -0,999999851 -0,999999937 -0,999999973 -0,999999989 f(b) 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 xi 1 1,16666667 1,25311203 1,2934374 1,31128102 1,3189885 1,32228272 1,32368429 1,32427946 1,32453199 1,32463909 1,32468452 1,32470378 1,32471194 1,32471541 1,32471688 1,3247175 1,32471776 1,32471787 1,32471792 1,32471794 1,32471795 1,32471795 1,32471796 f(xi) -1 -0,578703704 -0,28536303 -0,129542093 -0,056588487 -0,024303747 -0,01036185 -0,00440395 -0,001869258 -0,000792959 -0,000336301 -0,000142614 -6,0475E-05 -2,56438E-05 -1,08739E-05 -4,61092E-06 -1,95519E-06 -8,29066E-07 -3,51552E-07 -1,4907E-07 -6,32108E-08 -2,68035E-08 -1,13656E-08 -4,8194E-09 Metodi di punto fisso o delle approssimazioni successive Sono i metodi che si ottengono trasformando il problema del calcolo dello zero di f(x) nel problema equivalente della costruzione di una successione (convergente) x k +1 = ϕ( x k ) (1) x = ϕ(x ) (2) dove ϕ(x) è scelta in modo che che può essere ottenuto da: f (x ) + x = x Anno accademico 2000/2001 18 ponendo f ( x ) + x = ϕ( x) se α ∈ R è una radice dell’equazione f (x ) = 0 (3) allora α sarà anche soluzione dell’equazione (2), con α = ϕ(α) e a si dice punto fisso o punto unito di ϕ(α) Geometricamente la soluzione della (3) coincide con l’ascissa del punto di intersezione di: y=x e y = ϕ( x) Vediamo un semplice esempio: f (x ) = x 2 − 2 x + 1 ϕ1 ( x ) = x 2 +1 2 ϕ2 ( x ) = 2 x − 1 ; ϕ3 ( x ) = x 2 − x + 1 Le tre ϕi ( x) ammettono tutte α = 1 come ''punto unito'', ma non tutte e tre vanno bene per generare una successione convergente x0 = partendo, per esempio, da 1 2 Non tutte le ϕ(x) di iterazione generano successioni di {xn } convergenti ad α, la condizione affinché avvenga ciò è che esista un opportuno intorno F di α dove la ϕ(x) sia continua con la sua derivata prima e che in tale intorno sia: 0 < ϕ' ( x ) ≤ q < 1 Anno accademico 2000/2001 19 in tal caso per ogni x0 appartenente ad F esiste una successione {xn }convergente ad α. Consideriamo adesso la funzione: x3 − 4x − 1 = 0 una possibile funzione d’iterazione è la seguente: x3 − 1 ϕ( x) = 4 la quale, assumendo come punto iniziale x 0 = −1.8 porta rapidamente alla soluzione x = -0.2541, come è possibile osservare, anche in forma animata, nel seguente foglio di calcolo Excel: Iterazioni1.xls Un secondo esempio è la funzione: x3 + 4x − 1 = 0 per la quale una funzione di iterazione è la seguente: x3 − 1 ϕ( x) = − 4 Anno accademico 2000/2001 20 ed assumendo come punto iniziale x 0 = 2 porta rapidamente alla soluzione x = 0.246266 , come è possibile osservare, anche in forma animata, nel seguente foglio di calcolo Excel: Iterazioni2.xls. Nel foglio di calcolo si può anche vedere come inserendo un valore iniziale x 0 > 2 la successione ϕ(x k) non converge. Anno accademico 2000/2001 21 Integrazione numerica Attività didattica La nostra attività didattica consta di due parti fondamentali: 1. Introduzione del problema della soluzione di equazioni generiche: f(x) = 0 2. Laboratorio d'informatica, in cui saranno implementati grazie al foglio elettronico i metodi esposti nella parte teorica. La valutazione di integrali definiti quando non è nota la primitiva della funzione integranda o quando il procedimento analitico risulta complesso richiede l’applicazione di metodi numerici. Le tecniche numeriche si basano sull’applicazione di una formula che usa i valori che la funzione integranda assume all’interno dell’intervallo di integrazione. Ogni formula di integrazione numerica ha un suo grado di precisione infatti: b n a i=1 ∫ f(x) = ∑ ci f(x) + Rn (f) il primo termine è detto parte approssimante e Rn (f) errore di troncamento. La valutazione numerica dell’integrale avviene tramite la costruzione di una opportuna successione di valori {xi}, tale che risulti: n lim ∑ ci f(x) = n→ ∞ i=1 b ∫ f(x) e R (f) = 0 n a La successione {xi} dei valori ottenuti dipende dal procedimento iterativo applicato. Nei successivi paragrafi saranno analizzati alcuni tra i metodi di integrazione numerica più semplici da realizzare: il metodo dei rettangoli, dei trapezi e di Cavalieri-Simpson. Anno accademico 2000/2001 22 METODO DEI RETTANGOLI Il metodo dei rettangoli è il metodo iterativo più semplice per calcolare l’integrale definito di una funzione ƒ(x) reale e continua in un intervallo chiuso e limitato [a,b]. Esso consiste nel suddividere l’intervallo di integrazione [a,b] in un certo numero di sottointervalli n e nell’approssimare la funzione all’interno di ciascun intervallo con il valore costante che questa assume nel suo punto medio, pertanto il calcolo dell’integrale numerico viene quindi a corrispondere con la somma dei rettangoli aventi come base l’ampiezza costante dei sottointervalli h = (b-a)/n e come altezza il valore che la funzione assume nel punto medio di ciascun rettangolo. La formula risultante, nel caso in cui si scelga n=1 risulta: b ∫ f(x) ≈ h *f (a+h/2) ove h= (b-a) a Nel caso in cui n=2, h= (b-a)/n b ∫ f(x) ≈ h* f (a+h/2) + h f(a+h/2+h) a mentre per n generico e h= (b-a)/2n si ha: b n-1 a i=0 ∫ f(x) ≈ ∑ h f(a+(1/2+i) h) Il procedimento di calcolo dell’integrale, può essere semplicemente realizzato prevedendo n iterazioni che conviene numerare con i da 0 a n-1 e incrementare ad ogni passo, come è riportato nel programma, la somma integrale con il valore: F(A+(i+.5)*h) . infatti la x dovrebbe assumere i valori: Anno accademico 2000/2001 23 A+h/2, A+h/2+h,A+ h/2+h+h,....ovvero ad ogni iterazione x= A+(i+0.5)h Per una migliore approssimazione del risultato e per non incorrere in problemi di convergenza il calcolo dell’integrale viene ripetuto dimezzando a ogni passo l’ampiezza dei sottointervalli, fino a quando la differenza tra due valori successivamente calcolati è minore della precisione che si vuole raggiungere nel calcolo. Nel metodo dei rettangoli, la cui interpretazione grafica è riportata in Fig.2.1 Per verificare questa condizione (poiché si lavora con i numeri reali) si controlla se |Ι−Ι 1 | < p, ove p rappresenta la precisione scelta. Poiché si approssima la funzione, in ogni sottointervallo, con la retta parallela all’asse x di equazione y = f(xi) viene commesso un errore di approssimazione che richiede un elevato numero di iterazioni prima di giungere al risultato. Fig.2.1 Interpretazione grafica dell’integrazione numerica secondo il metodo dei rettangoli Animazione integrazione numerica con il metodo dei rettangoli Anno accademico 2000/2001 24 METODO DEI TRAPEZI Esso consiste nel suddividere l’intervallo di integrazione [a,b] in un certo numero di sottointervalli n e nell’approssimare la funzione all’interno di ciascun intervallo con la spezzata che congiunge i punti per cui passa il grafico della funzione agli estremi di ogni intervallo, pertanto il calcolo dell’integrale corrisponde alla somma dei trapezi aventi come altezza l’ampiezza dei sottointervalli STEP = (ba)/n e come base maggiore e minore il valore che la funzione assume agli estremi dei singoli sottointervalli. La formula risultante, nel caso in cui si scelga n=1 risulta: b ∫ f(x) ≈ h/2 ( f (a+h) + f(a)) ove h= (b-a) a Nel caso in cui n=2, h= (b-a)/n b ∫ f(x) ≈ h/2 ( f (a+h) + f(a)) + h/2 ( f (a+2h) + f(a+h)) a mentre per n generico e h= (b-a)/2n si ha: b n-1 a i=0 ∫ f(x) ≈ ∑ h/2 [f(a+(i+1) h) + f(a+i h)] oppure b n-1 ∫ f(x) ≈ h/2 [f(a+f(b)] + ∑ h [f(a+i h)] (detta formula di Bezout) a i=0 Il calcolo dell’integrale, di cui in Fig.2.2.ne è riportata l’interpretazione grafica, può essere semplicemente realizzato prevedendo n iterazioni che conviene numerare con un indice i da 0 a n-1 e incrementare ad ogni passo la somma integrale con il valore: Anno accademico 2000/2001 25 h*.5* ((F(a+i*h)+F(a+(i+1)*h))) Infatti durante il procedimento di calcolo si deve generare una successione di termini ( ciascuno rappresentante l’area di un trapezio), ove si moltiplica l’altezza costante dei trapezi, pari ad h, per la somma delle due basi diviso 2, pertanto, come è riportato nel programma: I=I+(h*.5*(F(a+i*h)+F(a+(i+1)*h))) Per rendere minimo l’errore e per non incorrere in problemi di convergenza il procedimento viene ripetuto dimezzando a ogni passo l’ampiezza dei sottointervalli, fino a quando la differenza tra due valori successivamente calcolati diventa trascurabile ovvero (poiché si lavora con i numeri reali) fino a quando |Ι2−Ι1 | < p, ove p rappresenta la tolleranza scelta. S può dimostrare che l’errore commesso usando la formula trapezoidale, che risulta : R(t) < 1/12 (xi - xi+1 )3 • f′ ′ (ξ ) è molto minore rispetto a quello commesso usando la formula rettangolare, pertanto il risultato ottenuto a parità di sottointervalli risulta più approssimato. Fig.2.2 Interpretazione grafica dell’integrazione numerica secondo il metodo dei trapezi Anno accademico 2000/2001 26 Anno accademico 2000/2001 27 METODO DI CAVALIERI-SIMPSON Il metodo di Cavalieri-Simpson consiste nel suddividere l’intevallo [a,b] in un certo numero di sottointervalli n e nell’approssimare la funzione, all’interno di ogni sottointervallo, con una parabola individuata dai punti di coordinate: (xi, f(xi)), (xi+1 , f(xi+1 )) e dal punto intermedio (xi + (b-a)n) f(xi + (b-a)n)). La formula risultante, nel caso in cui si scelga n=1 risulta: b ∫ f(x) ≈ (h/3)[f(a)+4f (a+h)+f( b)] ove h= (b-a)/2 a Nel caso in cui n=2, h= (b-a)/2n b ∫ f(x) ≈ (h/3)[f(a)+4f (a+h)+f( a+2h)] + (h/3)[f(a+2h)+4f (a+3h)+f( b)] a mentre per n generico e h= (b-a)/2n si ha: b ∫ f(x) ≈ (h/3)[f(a)+4f (x )+2f(x )+....+ 4f(x 1 2 2n-1 )+f(x2n )] a Il procedimento di calcolo dell’integrale, può essere semplicemente realizzato inizializzando la somma integrale con la sommatoria dei primi due termini e dell’ultimo termine: I=(F(a)+F(b)+4*F(a+h*(2*n-1)))*h/3.0 tramite l’iterazione di n passi che conviene numerare tramite un indice i da 0 a n-1, ove la somma integrale verrà incrementata con la coppia di termini successivi di coefficiente 4 e 2: Anno accademico 2000/2001 28 I=I+h/3.0*(4*F(a+i*h)+2*F(a+(i+1)*h)) Si noti che il calcolo dell’integrale secondo questo metodo, come risulta osservando la Fig.2.3 prevede la ulteriore divisione a metà di ogni intervallo, pertanto dopo aver fissato il valore iniziale di n questo sarà subito raddoppiato per poter iniziare correttamente il calcolo. Come nei casi precedenti per rendere minimo l’errore e per non incorrere in problemi di convergenza il procedimento viene ripetuto raddoppiando a ogni iterazione il numero dei sottointervalli, fino a quando la differenza tra due valori successivamente calcolati è minore della precisione che si vuole raggiungere nel calcolo, ovvero si controlla se |Ι2−Ι1 | < p, ove p rappresenta la tolleranza scelta. Il metodo di Cavalieri-Simpson è uno tra i metodi più utilizzati per la notevole precisione che è in grado di raggiungere con pochi intervalli di calcolo, infatti è possibile dimostrare che l’errore di calcolo commesso risulta : R(t) < 1/90 (xi - xi+1 )5 • f′ ′ (ξ ) ovvero molto minore rispetto alle formule presentate in precedenza. Fig.2.3 Interpretazione grafica dell’integrazione numerica secondo il metodo di Cavalieri-Simpson Nel seguente foglio di calcolo possiamo vedere un confronto tra i diversi metodi di calcolo numerico degli integrali applicato alla funzione: f(x) = x Anno accademico 2000/2001 29 nell’intervallo [0,1] Integrazione Numerica i 0 f(x) = x x yn 0 cn yn 0 0 0,03 0,18257 0,73029 3 4 7 0,06 0,25819 0,51639 2 7 9 8 0,31622 1,26491 3 0,1 8 1 0,13 0,36514 0,73029 4 3 8 7 0,16 0,40824 1,63299 5 7 8 3 0,44721 0,89442 6 0,2 4 7 0,23 0,48304 1,93218 7 3 6 4 0,26 0,51639 1,03279 8 7 8 6 0,54772 9 0,3 3 2,19089 1 0,33 1,15470 0 3 0,57735 1 1 0,36 1 7 0,60553 2,42212 1 0,63245 1,26491 2 0,4 6 1 1 0,43 0,65828 2,63312 3 3 1 2 1 0,46 4 7 0,68313 1,36626 1 0,70710 2,82842 5 0,5 7 7 1 0,53 0,73029 1,46059 6 3 7 3 1 0,56 0,75277 3,01109 7 7 3 1 1 0,6 0,77459 1,54919 1 a= 0 b= 1 n= 30 0,03333333 h= 3 Rn S = S = S Metodo Rettangoli (y1 -yn) = S Metodo Trapezi = S Metodo Cavalieri Simpson = Valore esatto Metodo Rettangoli (y0 -yn1) 0,66666667 0,64878114 0,68211447 0,66544781 0,66617260 0,0178855 3 0,0154478 1 0,0012188 6 0,0004940 7 Anno accademico 2000/2001 30 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 7 3 0,63 0,79582 3 2 3,18329 0,66 0,81649 1,63299 7 7 3 Anno accademico 2000/2001 31 0,7 0,83666 3,34664 0,73 0,85634 1,71269 3 9 8 0,76 0,87559 7 5 3,50238 0,89442 1,78885 0,8 7 4 0,83 0,91287 3,65148 3 1 4 0,86 0,93094 1,86189 7 9 9 0,94868 3,79473 0,9 3 3 0,93 0,96609 1,93218 3 2 4 0,96 0,98319 3,93276 7 2 8 1 1 1 Griglia di valutazione Valutazione Comprensione del testo Uso delle regole di calcolo e formalismi matematici Errato Correttezza espressiva Rielaborazione critica e originalità Non adeguata Conoscenza dei contenuti e loro applicazione Incoerente < 4 = insufficiente Errata Assente 5 = mediocre Parziale Superficiale Impreciso Lessico impreciso Superficiale 6 = sufficiente Sufficiente Sufficiente Corretto Lessico corretto Adeguati 7 = discreto Discreta Discreta Appropriato Lessico corretto ed appropriato Articolata capacità di collegamento e di estensione dei contenuti 8 = buono Valida organizzazione Approfondita Adeguato Lessico specifico e adeguato Personale 9/10 = ottimo Padronanza organizzativa e capacità analitico sintetico Applicazione dei contenuti articolata e fluida Padronanza delle regole e dei formalismi Padronanza del linguaggio specifico Personale ed originale Anno accademico 2000/2001 32 Appendice A Interpretazione geometrica del metodo di bisezione: Anno accademico 2000/2001 Diagramma di flusso per il metodo di bisezione: Anno accademico 2000/2001