Comments
Description
Transcript
Settima esercitazione
1 Settima Esercitazione: Metodi iterativi Interpolazione Esercizio 1 Metodo di Jacobi Completare la seguente funzione [x,n] = jacobi(A,b,epsilon) che usa il metodo di Jacobi per calcolare la soluzione del sistema con una tolleranza epsilon. Il numero di iterazioni effettuate è n. Usare come criteri di arresto successivamente 1. Il criterio del residuo. k Ax − b k<epsilon 2. La norma k xi − xi+1 k<epsilon 3. La norma k xi − xi+1 k <epsilon k xi+1 k function [x,n] = jacobi(A,b,epsilon); % Effettua Jacobi su Ax=b con tolleranza epsilon S = ; T = ; x = ones(size(b)); nmax = 200; % numero massimo di iterazioni n = 0; residuo = norm(A*x-b); % while n <= nmax & residuo > epsilon % primo criterio % while n <= nmax & abs(x-... > epsilon % secondo criterio ... Premessa 1: Lettura di dati da file esterno. Da un file di testo o da una tabella Excel. Si usano i comandi load xlsread clear all; % cancella tutte le variabili load DatiA.txt % file di testo % e definisce la variabile DatiA a=xlsread(’DatiX.xls’) % file Excel Esercizio 2 Interpolazione in vari modi Ricavare y dal file “DatiA.txt” Porre x=0:.05:· · · · · · Indi disegnare i punti usando l’opzione plot (x,y,’o’) Successivamente: - interpolare con una spezzata - interpolare con una spline (leggere le istruzioni del comando spline) Eventualmente porre tutti i comandi in uno script Per sovrapporre i vari disegni si possono usare due opzioni: plot(x,y,’ ’,x1,y1,’ ’, ...) % oppure plot(x,y,’ ’) hold on plot(x1,y1,’ ’) E poi hold off quando non si vuole più sovrapporre. Esercizio 3 Idem con DatiB.txt Esercizio 4 Idem con DatiX.txt