]> AND Private Git Repository - cours-mesi.git/blob - tel/TPmatlab/equation_differentielle/TP5c/calcul_fonction_fp.m
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
j
[cours-mesi.git] / tel / TPmatlab / equation_differentielle / TP5c / calcul_fonction_fp.m
1 function F=calcul_fonction_fp(t,y,p);\r
2 \r
3 %\r
4 %       calcul_fonction_fp : définition symbolique des fonctions f_0,...,f_p\r
5 %\r
6 % *********************************************************\r
7 %\r
8 %       F=calcul_fonction_fp(t,y,p)\r
9 %   calcule les fonctions f_0, f_1, ..., f_p définies par récurrence par\r
10 %        f_0(t,y)=f(t,y)\r
11 %        pour k dans {0,...,p-1},\r
12 %        f_{k+1}=diff(f_k,t)(t,y)+diff(f_k,y)(t,y)*f(t,y). \r
13 % Chaque foncton f_k est stockée dans F(k+1) pour k dans {0,...,p-1}.\r
14 % *     variables d'entrée : \r
15 %    * entier naturel p \r
16 %    * symbolique t , y et h \r
17 % *     variables de sortie : F=[f_0 f_1 ... f_p]\r
18 %\r
19\r
20\r
21 % ************ Fonctions auxiliaires utilisées ************\r
22 %\r
23 %       aucune\r
24 %\r
25 % *********************************************************\r
26 %\r
27 \r
28 \r
29 if (p>=0) \r
30    syms yb tb;\r
31    fcn=sym('f(tb,yb)');\r
32    fauxi=fcn;\r
33    F=zeros(1,p+1);\r
34    F=sym(F);\r
35    F(1)=fcn;\r
36    for k=0:p-1\r
37        fauxi=simplify(diff(fauxi,tb)+diff(fauxi,yb)*fcn);\r
38        F(k+2)=fauxi;\r
39    end\r
40    for k=1:p+1\r
41       F(k)=subs(F(k),{'tb','yb'},{char(t),char(y)});; \r
42    end\r
43 else\r
44     F=sym([]);\r
45 end\r
46 \r
47 \r
48 \r
49 \r
50 \r