Assoluta stabilità

5mrkv
Considerando un metodo numerico che risolve un problema di Cauchy, qualcuno mi potrebbe indicare in parole povere cosa significa ricavare la regione di assoluta stabilità del metodo? Ad esempio per per il metodo di Eulero:
\[y_{i+1}=y_{i}+hf(y_{i},t_{i})\]
Va bene anche una fonte, meglio senza troppi prerequisiti.

Risposte
5mrkv
Ok. Dando un'occhiata al Butcher e seguendo la formula per un metodo di ordine \(q\)
\[
y_{i+1}=\Sigma_{j=0}^{q}a_{j}y_{i-j}+h\Sigma_{j=0}^{q}b_{j}f_{i-j}+b_{-1}f_{i+1}
\]
Ho scritto, con \(a,b,-b\) esemplificativi:

script.m
a=[1/2 0 0];
b=[23/12 -16/12 5/12];
b_1=1;
n=length(a);

whitebg('w');
bordo(a,b,b_1,n);


bordo.m
function a=bordo(a,b,b_1,n)

         ang=linspace(0,2*pi);
         x=exp(i*ang);
         x1=0;
         x2=0;
         for j=1:n,
             x1=x1+a(j)*power(x,n-j);
             x2=x2+b(j)*power(x,n-j);
         end
         px1=power(x,n)-x1;
         sx2=power(x,n)*b_1+x2;
         x3=px1./sx2;
         x4=real(x3);
         x5=imag(x3);
         x3_r_min=min(x4)-0.1;
         x3_r_max=max(x4)+0.1;
         x3_i_min=min(x5)-0.1;
         x3_i_max=max(x5)+0.1;
         Zero=zeros(2);
         y1=[x3_r_min x3_r_max];
         y2=[x3_i_min x3_i_max];
         grey=[0.4,0.4,0.4];
         black=[0,0,0];
         
         if x5(5)>0
             fill(x4,x5,'g');
         else
             whitebg('g');
             fill(x4,x5,'w');
         end 
                                     hold on
         plot(x3,'Color',grey);      hold on
         plot(y1,Zero,'Color',grey); hold on 
         plot(Zero,y2,'Color',grey); hold on
         xlim(y1);
         ylim(y2);
         axis square
             
             fprintf(' Re(z)  Im(z)\n');
         for k=1:length(x3),
             fprintf('%6.3f %6.3f\n',x4(k),x5(k));
         end


Immagine:
link

Avendo un sistema di equazioni, cosa devo prendere come parametro \(\lambda\)?

5mrkv
Ok, risolto.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.