Je fait un programme sur matlab avec la MEF.
J'ai creer les fonctions isoparametrique associées, avec leurs derivées.
Le probleme est que pour utiliser la formule de derivée il faut declarer les variable en symbolique. Du coup j'ai mes fonctions mes dérivées mais j'aimerais convertir les variables symbolique en double.
Voici un exemple pour une fonction
syms('E'); syms('N'); syms('C');
N1=(1/8)*(1+E)*(1-N)*(1-C)*(-2-N+E-C);
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~%%-----------------------------------------------------------------%
%DERIVEES PREMIERES%
%-----------------------------------------------------------------%
%PAR RAPPORT A N
%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~%
NN1=diff(N1,N);
Modifié par mourina le 10/10/2014 à 18:40
sym x
E = [(exp(x)-1),(cos(x))];
for i=1:length(E)
diff_k_1(i)= diff( E(i),'x',j); %il faut mettre x=0 apres le calcule de derive
end
vous avez une idée comment mettre une valeur dans une variable symbolique x?
10 oct. 2014 à 19:35
sym x
E = [(exp(x)-1),(cos(x))];
for i=1:length(E)
diff_k_1(i)= diff( E(i),'x',j);
diff_k_1(i)=limit(diff_k_1(i),0);
end