5 a lezione - laboratorio a.a Corso di Laurea ING. MECCANICA
Esercizio 1 a) si analizzino in [-10 10], le proprietà di f ( x ) atte a determinare le soluzioni dellequazione data; b) si enunci, per ogni metodo, almeno un teorema di convergenza e si calcoli la prima radice positiva, utilizzando i metodi di: punto fisso, bisezione e Newton; c) si riporti, per ciascun metodo, una tabella riassuntiva dei risultati. Data lequazione:
Punto a: proprietà di f ( x ) è funzione pari (simmetrica rispetto allasse y), infatti f ( x ) = f ( - x ) Si cercano le radici solo in [0, 10], le altre si ottengono per simmetria.
Grafico di f (x) in [-10,10] x=linspace(-10,10); %100 punti y=(x.^2-4).*cos(x)+4*... x.*sin(x); plot(x,y,[-10 10],... [0 0],'r') grid %fplot( (x^2-4)*cos(x)+4*... x*sin(x),[-10,10]), grid hold on fplot('0*x',[-10,10],r)
Punto b: valutazione di f (x) in [0,2] fplot((x^2-4)*cos(x)+4*x*sin(x),[0,2]) hold on fplot(0*x,[0,2],r), grid hold off Si può restringere lintervallo di lavoro intorno al valore 0.8 ad esempio Si consideri ora il problema, posto nella forma consistente:
Come è stata ottenuta la forma consistente? Dallequazione: Dividendo entrambi i membri per e Portando le altre quantità a secondo membro, si ottiene: Da cui, applicando la funzione inversa di tan ad Entrambi i membri, si ottiene la x = g(x) data.
Metodo del punto fisso: convergenza Hp:, I = [a,b], ed inoltre: Th : 2. a. b. La successione converge a
Punto b: verifica delle ipotesi:Hp.1 g(0.76)= , g(0.85)= g( x ) è funzione decrescente in [0.76,0.85], Hp.1: Per potere dire ciò è fondamentale la proprietà di monotonia!!!
Punto b: verifica Hp.2 è funzione decrescente in [0.76,0.85], quindi ha il max in x = Sono quindi soddisfatte le Hp. del Teorema di convergenza. La convergenza è alternata. Hp. 2:
Stima della costante asintotica Per la convergenza alternata, il criterio di arresto sullincremento delle iterate dà informazioni sullerrore e quindi è valido. Il metodo è lento! Si prevedono molte iterate!
x=[ ]; % vettore di valutazione dg=4./(4+x.^2); % vettore derivata prima % il massimo del modulo è nella prima %componente fattore=abs(dg(1))/(1-abs(dg(1))) fattore= % il criterio sullincreme. % delliterata sarebbe buono anche in caso % di convergenza monotona Stima di: Risulta:
Punto b: istruzioni punto fisso x0=0.85; nmax=30; toll=1e-12; g='atan((4-x.^2)./(4*x))'; fun='(x.^2-4).*cos(x)+4*x.*sin(x)'; [xvect,xdiff,fx,it,p,c]=Punto_fisso(x0,nmax,toll, fun,g); Superato il numero massimo di iterazioni Numero di Iterazioni : 30 Radice calcolata : e-001 Ordine stimato : Fattore di riduzione :
Punto c: tabella riassuntiva punto fisso iter=0:it; fprintf('%2d %22.15f %15.3e %15.3e\n',[iter;xvect';xdiff';fx']) e e e e e e e e e e e e e e e e e e e e e e-003 xvect ci mostra la conv. alternata del metodo
Stima del numero di iterazioni x=0.76;toll=1.e-12; dg=-4./(x.^2+4); err1=abs(xvect(1)-xvect(2)); k=log(toll*(1-abs(dg))/abs(err1))/log(abs(dg)) k =
Risultati con nmax = k stimato x0=0.85; nmax=201; toll=1e-12; g='atan((4-x.^2)./(4*x))'; fun='(x.^2-4).*cos(x)+4*x.*sin(x)'; [xvect,xdiff,fx,it,p,c]=Punto_fisso(x0,nmax,toll, fun,g); Numero di Iterazioni : 169 Radice calcolata : e-001 Ordine stimato : Fattore di riduzione :
Punto b: istruzioni bisezione a=0.76;b=0.85; nmax=50; toll=1e-12; fun='(x.^2-4).*cos(x)+4*x.*sin(x)'; [xvect,xdiff,fx,it,p,c]=bisezione(a,b,nmax,toll,fun); Numero di Iterazioni : 36 Radice calcolata : e-001 Ordine stimato : Fattore di riduzione :
Punto c: tabella riassuntiva metodo bisezione iter=1:it; fprintf('%2d %22.15f %15.3e %15.3e\n',[iter;xvect';xdiff';fx']) e e e e e e e e e e e e e e e e e e e e e e-012
x 0 =b a Metodo di Newton x1x1 x2x2
Grafico di f ( x ) in fplot((x^2-4)* cos(x)+4*x*sin(x), [0.76,0.85]),grid title(Andamento di f)
Teorema 1: convergenza locale del metodo di Newton
Teorema 2: convergenza globale del metodo di Newton
Verifica delle ipotesi di convergenza f(0.76)= df=6*x.*cos(x)... -(x.^2-8).*sin(x);
Proprietà di f in ddf=-8*x.*sin(x)-(x.^2-14).*cos(x);
Verifica ulteriori ipotesi per avere la convergenza globale Sono verificate tutte le ipotesi del Teorema 2
Punto b: istruzioni Newton estremo di Fourier: x0=0.85; nmax=30; toll=1e-12; fun='(x.^2-4).*cos(x)+4*x.*sin(x)'; dfun='6*x.*cos(x)-(x.^2-8).*sin(x)'; [xvect,xdiff,fx,it,p,c]=newton(x0,nmax,toll,fun, dfun); Numero di Iterazioni : 4 Radice calcolata : Ordine stimato : Fattore di riduzione :
Punto c: tabella riassuntiva metodo di Newton iter=0:it; tab=[iter;xvect';xdiff';fx']; fprintf('%2d %22.15f %15.3e %15.3e\n',tab) it soluzione xdiff fx e e e e e e e e e e-016 xvect ci mostra la convergenza monotona del metodo