>> l=(y+z)*sqrt(x*x+y*y+z*z-2*y*z)
l =
(y + z)*(x^2 + y^2 - 2*y*z + z^2)^(1/2)
>> diff(l,'y')
ans =
(x^2 + y^2 - 2*y*z + z^2)^(1/2) + ((2*y - 2*z)*(y + z))/(2*(x^2 + y^2 - 2*y*z + z^2)^(1/2))
>> diff(l,'z')
ans =
(x^2 + y^2 - 2*y*z + z^2)^(1/2) - ((2*y - 2*z)*(y + z))/(2*(x^2 + y^2 - 2*y*z + z^2)^(1/2))
如上,l表达式里Y和Z两个变量互换以后还是l,那么l对Y和l对Z的偏导数应该是一样的,为什么用MATLAB算出来差一个符号?