【问题标题】:Finding the Jacobian of a matrix in matlab在matlab中找到矩阵的雅可比行列式
【发布时间】:2017-04-17 10:10:47
【问题描述】:

我在 matlab 中有以下脚本,目标是计算 $f_1,f_2,f_3,f_4$ 的雅可比矩阵,这应该给我一个 4 x 4 矩阵,但我得到一个 7 x 4$ 矩阵。我不确定这段代码有什么问题,它应该可以工作。

syms m M L J p_x p_theta theta X g K_m K_g r V_in R_m;
h= (m+M)*(m*L^2/4+J) - (m*L/2 * cos(theta))^2;
f_1 = [1/h * [ (m*L^2/4+J)*p_x + m*L/2 cos(theta)* p_theta]];
f_2 = [1/h * [ (m*L/2 * cos(theta))*p_x + (m+M)*p_theta]];
F = K_m *K_g/r *[ (V_in -K_m*K_g * f_1/r)/R_m];
f_3 = F;
f_4 = m*L/2 *sin (theta)*(f_1*f_2+g);
J_1=jacobian([f_1,f_2,f_3,f_4],[X;theta;p_x;p_theta]);
subs(J_1,[X,theta,p_x,p_theta],[0,0,0,0])

【问题讨论】:

    标签: matlab matrix


    【解决方案1】:

    我唯一能看到的是您在定义f_1 时遗漏了一个运算符。你的意思是它是一个 1x2 数组吗?如果没有,我建议如下(我在L/2cos(theta) 之间插入了*):

    f_1 = [1/h * [ (m*L^2/4+J)*p_x + m*L/2 * cos(theta)* p_theta]];
    

    这将为最终答案提供一个 4x4 矩阵,如您所愿。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-24
      • 1970-01-01
      相关资源
      最近更新 更多