2012-04-03 35 views
4

我有這樣的代碼:有沒有辦法在Matlab中評估Jacobian?

syms x y z 
f =[x^2+y^2+z^2-100 ,x*y*z-1 ,x-y-sin(z)]; 
v = [x, y, z]; 
fp = jacobian(f,v) 

這給:

fp = 
[ 2*x, 2*y,  2*z] 
[ y*z, x*z,  x*y] 
[ 1, -1, -cos(z)] 

現在我想在,比方說,以評估這一點,X = Y = Z = 1。但

fp([1,1,1]) 

給我

[ 2*x, 2*x, 2*x] 

有沒有辦法做到這一點?

回答

10

可以使用subs功能:

subs(fp, [x y z], [1 1 1])