Estratto del documento

Calcolo numerico - I appello programmazione - 22 giugno 2022

Ingegneria civile e per l’Ambiente e il Territorio (Prof. M. Ferronato)

1a squadra

Nome:

Cognome:

Matricola:

Postazione computer:

Metodo di Aitken

Si vuole risolvere l’equazione non lineare 1.5x tan x = 0.1 utilizzando un metodo di punto fisso. Dopo aver riscritto l’equazione assegnata nella forma x = g(x), con:

0.1 + tan x
g(x) = ,
1.5

si vuole applicare il metodo di Aitken:

g(x ) x x x
k k k k 1
x = g(x ) + , r = ,
k+1 k k
r 1 g(x ) x
k k k

che costituisce un’accelerazione della classica iterazione di Picard x = g(x ). Si dimostra
k+1 k
che se lo schema di Picard converge al punto fisso ⇐ del problema, allora il metodo di Aitken lo fa con velocità maggiore. Si scriva una function che implementa il metodo di Aitken e avente come input la funzione g, il punto iniziale x , la tolleranza tol di uscita e il numero massimo di
0
iterazioni itmax. Poiché lo schema di Aitken dipende dagli ultimi due elementi della successione di approssimanti, ovvero x e x , come accade ad esempio alla Regula Falsi, per inizializzare
k k 1
il metodo iterativo si ponga x = g(x ).
1 0

Script compitoCOGNOME.m

Si implementi uno script dal nome che:

  • Definisca g(x) come funzione di tipo handle;
  • Definisca x = 0, tol = 10 e itmax = 100;
    0
  • Calcoli ⇐ mediante il metodo di Aitken, fornendo il numero di iterazioni it per giungere a
    A
    convergenza;
  • Al fine di valutare l’accelerazione indotta rispetto alla classica iterazione x = g(x ),
    k+1 k
    si scriva una seconda function che implementa il metodo di Picard e la si applichi al problema assegnato per calcolare il numero di iterazioni it richiesto in questo caso per
    P
    raggiungere la medesima tolleranza d’uscita tol;
  • Generi un unico grafico con i profili di convergenza ottenuti con il metodo di Aitken e con l’iterazione di Picard.

Si riporti come commento il proprio nome, cognome e numero di matricola sia nelle function che nello script.

Risultati

⇐ =
A
it = , it =
P

Tempo a disposizione: 1h 30m

Soluzione appello 22 giugno 2022

Domanda 1: definire g(x)

g=@(x) (0.1+tan(x))/(1.5);

Domanda 2: definire x0, tol, itermax

x0=0;
tol=1e-10;
itermax=100;

Domanda 3: calcolare la radice e il numero di iterazioni con il metodo di Aitken

[xnew_a,iter_a,sc_a]=aitken(g,x0,tol,itermax);

%Risposta: il ciclo e lo script funzionano bene

XNEW=0.2059 E ITER=12

Domanda 4: si esegua la stessa cosa con il metodo di Picard xnew=g(xold)

[xnew_p,iter_p,sc_p]=picard(g,x0,tol,itermax);

%Ciclo funziona correttamente XNEWPICARD=

Anteprima
Vedrai una selezione di 1 pagina su 5
Prova di Programmazione 22/06/2022 risolta Pag. 1
1 su 5
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher MARYORI.RUIZ di informazioni apprese con la frequenza delle lezioni di Calcolo numerico e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Padova o del prof Ferronato Massimiliano.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community