Matlab 使用jacobian()时出错:“;MuPAD命令错误:索引超过矩阵维数。”;
我有函数F_测试Matlab 使用jacobian()时出错:“;MuPAD命令错误:索引超过矩阵维数。”;,matlab,Matlab,我有函数F_测试 function [ F_t ] = F_test( x ) F_t(1)=x(2)^2+5*x(1); F_t(2)=x(1)+7*x(2); end 我想计算这个函数的雅可比矩阵 [dF1/dx(1), dF2/dx(1) ; dF1/dx(2), dF2/dx(2)] 但是当我尝试这样做的时候,我得到了一个错误 jacobian(F_test(x),x) Error using mupadmex Error in MuPAD command: Index exceed
function [ F_t ] = F_test( x )
F_t(1)=x(2)^2+5*x(1);
F_t(2)=x(1)+7*x(2);
end
我想计算这个函数的雅可比矩阵
[dF1/dx(1), dF2/dx(1) ; dF1/dx(2), dF2/dx(2)]
但是当我尝试这样做的时候,我得到了一个错误
jacobian(F_test(x),x)
Error using mupadmex
Error in MuPAD command: Index exceeds matrix dimensions.
Error in sym/subsref (line 1577)
B = mupadmex('symobj::subsref',A.s,inds{:});
Error in F_test (line 4)
F_t(1)=x(2)^2+5*x(1);
甚至这个
syms x
jacobian([x(1)+x(2),x(1)*x(2)],x)
Error using mupadmex
Error in MuPAD command: Index exceeds matrix dimensions.
Error in sym/subsref (line 1577)
B = mupadmex('symobj::subsref',A.s,inds{:});
对于这个错误
Error in F_test (line 4)
F_t(1)=x(2)^2+5*x(1);
我认为你的问题之一可能是:
你在这么做吗
F_t(1)=x(2)^2+5*x(1);
F_t(2)=x(1)+7*x(2);
但是函数中从未初始化过F\u t
(未知大小)
确定如何使用雅可比(f,v)
(很抱歉,不确定,我很久没有使用MatLab了)Thnak,但我找到了如何计算它的方法
x=sym('x',[1 2])
jacobian(F_test(x),x)