picard.mws

Méthode des itérations de Picard

La procédure qui suit applique la méthode des itérations de Picard à l'équation différentielle y' = f( x , y ) avec la condition initiale y( a ) = c.

On définit en premier la partie droite de l'équation, à savoir la fonction f( x , y ). La procédure calculera et affichera la nième itération de cette méthode.

> f:=(x,y)->2*x-3*y;

f := proc (x, y) options operator, arrow; 2*x-3*y e...

> picard:=proc(f,a,c,n)
local i,y,iter:
iter:=c;
for i from 1 to n do
iter:=sort(c+int(f(s,eval(iter,x=s)),s=a..x));
end do: y[n]=iter:end;

picard := proc (f, a, c, n) local i, y, iter; iter ...

> picard(f,0,1,1);

y[1] = x^2-3*x+1

> picard(f,0,1,2);

y[2] = -x^3+11/2*x^2-3*x+1

> picard(f,0,1,3);

y[3] = 3/4*x^4-11/2*x^3+11/2*x^2-3*x+1

>