Bonjour à tous,

Je rencontre un problème assez casse-tête dans la symbolic toolbox. Mon début de code est le suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
%Symbolic definitions
syms G P X t;
G = sym('G(t)');
P = sym('P(t)');
X = sym('X(t)');
xi = [G; P; X];
syms kX ks ke mu_g Kg Kie rs rp rx;
theta = [kX; ks; ke; mu_g; Kg; Kie];
%Kinetics
rxend = -kX.*X;
rxg = mu_g*X*G./(G+Kg).*exp(-Kie*P);
rx = rxg+rxend;
rs = -ks.*rxg;
rp = ke.*rxg;
f = sym('f(kX,ks,ke,mu_g,Kg,Kie,G(t),P(t),X(t))');
f = [rs; rp; rx];
J'aimerais maintenant générer les dérivées partielles de f de type:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
diff(f,t,k)
diff(f,X(t))
diff(f,P(t))
diff(f,G(t))
La première dérivée fonctionnera mais malheureusement pas les suivantes...
En résumé, je cherche à savoir comment calculer la dérivée partielle d'une fonction par rapport à une fonction d'une autre variable comme t, ici le temps: diff(f,G(t))

L'erreur renvoyée est la suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Error using mupadmex
Error in MuPAD command: Invalid variable. [stdlib::diff]
 
Error in sym/diff (line 44)
    R = mupadmex('symobj::diff', S.s, x.s, int2str(n));

En vous remerciant!!!!!

Laucau