First I write a function as follow:
syms x y z
f = [x*y*z; y; x + z];
v = [x, y, z];
R = jacobian(f, v);
As just you said, to get the value of R at the particular value of x,y,z, I can use
subs(R,[x,y,z],{1,2,3});
However, if z is a vector, and I want to compute the each value of R by using each element of z and the value of x,y, hence, I made a loop as follow:
%Consider x=1;y=2;z=[1 2 3];
for i = 1:size(z)
t = z(i);
R(:,:,i)=subs(R,[x,y,z],{1,2,t});
end
however, it doesn't work, because t can not be instead by each value in vector z, what shall I do on this?
Thank you very much!

1 commentaire

Oleg Komarov
Oleg Komarov le 26 Mar 2012
Please format your question: http://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup

Connectez-vous pour commenter.

 Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 27 Mar 2012

0 votes

syms x y z
f = [x*y*z; y; x + z];
v = [x, y, z];
R = jacobian(f, v);
t = 1:3;
Out = zeros([size(R),numel(t)]);
for j1 = 1:numel(t)
Out(:,:,j1) = subs(R,[x y z],[1 2 t(j1)]);
end

Plus de réponses (0)

Catégories

En savoir plus sur Symbolic Math Toolbox dans Centre d'aide et File Exchange

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by