matlab function

1 view (last 30 days)
LIU WEIHUA
LIU WEIHUA on 26 Mar 2012
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 Comment
Oleg Komarov
Oleg Komarov on 26 Mar 2012
Please format your question: http://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 27 Mar 2012
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

More Answers (0)

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!