INDIETRO
 Laboratorio 9
AVANTI

Equazioni differenziali ordinarie: stiff

Sul sito di Matlab è proposta questa equazione da studiare con vari valori di a:

La soluzione si calcola e si disegna esattamente con maple

a:=100;
eq1:=diff(x(t),t)-x(t)^2-x(t)^3;
dsolve({eq1,x(0)=1/a});
f:=unapply(rhs(%),t);
plot(f(t),t=0..2*a);

Proviamo ora a calcolarla numericamente, chiedendoci quanti passi devono fare i vari algoritmi.

In alcuni casi, come per esempio per la routine ode45 si può richiedere di avere informazioni sui passi e sul numero di chiamate efettuate con opportune opzioni assegnate al comando di soluzione:

miosetup=odeset('Stats','on');
ode45(f,[0 5],1,miosetup)


In altri casi, più prosaicamente, si possono prenderi i tempi con tic e toc.

 


INDIETRO
Laboratorio Didattico di Matematica Computazionale - Sergio Steffè - AA 2017/2018 - PISA
AVANTI