matlab - 符号矩阵在 Matlab 中没有完全简化,但在 Octave 中简化了
问题描述
我有一个包含符号三角表达式的 4x4 矩阵。我希望简化矩阵中的每个表达式,所以我使用“简化”。然而,由于某种原因,Matlab 并未简化矩阵的第 4 列。Octave 中的相同代码为我提供了正确、最简化的输出。我在下面附上了 .m 代码和 Matlab 和 Octave 输出。
syms t1 t2 t3 t4 t5 a1 a2 a3 real;
A1 = [[cos(t1) 0 -sin(t1) 0]; [sin(t1) 0 cos(t1) 0]; [0 -1 0 0]; [0 0 0 1]];
A2 = [[cos(t2) -sin(t2) 0 a1*cos(t2)]; [sin(t2) cos(t2) 0 a1*sin(t2)]; [0 0 1 0]; [0 0 0 1]];
A3 = [[cos(t3) -sin(t3) 0 a2*cos(t3)]; [sin(t3) cos(t3) 0 a2*sin(t3)]; [0 0 1 0]; [0 0 0 1]];
A4 = [[cos(t4) 0 sin(t4) 0]; [sin(t4) 0 -cos(t4) 0]; [0 1 0 0]; [0 0 0 1]];
Af = [[cos(t5) 0 -sin(t5) a3*cos(t5)]; [sin(t5) 0 cos(t5) a3*sin(t5)]; [0 -1 0 0]; [0 0 0 1]];
T3f = A4 * Af;
T2f = A3 * T3f;
T1f = A2 * T2f;
T0f = A1 * T1f
T = simplify(T0f)
T = subs(T, t2+t3+t4, sym(0));
T = simplify(T)
T = subs(T, t1+t5, sym(0));
T = simplify(T)
Matlab 给出的最终 T:
T =
[ 1, 0, 0, cos(t1)*(a1*cos(t2) + cos(t2)*(a2*cos(t3) + a3*cos(t3)*cos(t4)*cos(t5) - a3*cos(t5)*sin(t3)*sin(t4)) - sin(t2)*(a2*sin(t3) + a3*cos(t3)*cos(t5)*sin(t4) + a3*cos(t4)*cos(t5)*sin(t3))) - a3*sin(t1)*sin(t5)]
[ 0, 0, 1, sin(t1)*(a1*cos(t2) + cos(t2)*(a2*cos(t3) + a3*cos(t3)*cos(t4)*cos(t5) - a3*cos(t5)*sin(t3)*sin(t4)) - sin(t2)*(a2*sin(t3) + a3*cos(t3)*cos(t5)*sin(t4) + a3*cos(t4)*cos(t5)*sin(t3))) + a3*cos(t1)*sin(t5)]
[ 0, -1, 0, - a1*sin(t2) - cos(t2)*(a2*sin(t3) + a3*cos(t3)*cos(t5)*sin(t4) + a3*cos(t4)*cos(t5)*sin(t3)) - sin(t2)*(a2*cos(t3) + a3*cos(t3)*cos(t4)*cos(t5) - a3*cos(t5)*sin(t3)*sin(t4))]
[ 0, 0, 0, 1]
Octave给出的最终T:
T = (sym 4×4 matrix)
⎡1 0 0 a₁⋅cos(t₁)⋅cos(t₂) + a₂⋅cos(t₁)⋅cos(t₂ + t₃) + a₃⎤
⎢ ⎥
⎢0 0 1 (a₁⋅cos(t₂) + a₂⋅cos(t₂ + t₃))⋅sin(t₁) ⎥
⎢ ⎥
⎢0 -1 0 -a₁⋅sin(t₂) - a₂⋅sin(t₂ + t₃) ⎥
⎢ ⎥
⎣0 0 0 1 ⎦
感谢您在 Matlab 中解决此问题的任何帮助。我正在使用 Matlab R2017a。
解决方案
推荐阅读
- swift - 动态链接/通用链接在冷启动时不起作用
- r - R - 陷入 IF Else
- javascript - 样式组件:Herencia
- c# - 如何在新创建的 GPO 中以编程方式在软件限制策略中添加新路径规则?
- powershell - 具有 UTF-8 编码的 Powershell 字符串变量
- templates - 为什么模板没有注册?
- excel - 如何找到下一个可用列并对其应用公式
- javascript - 我正在尝试使用从 php 数据库中提取的一些数据作为可点击 SVG 图片(javascript)中的信息
- swift - Swift:听 url 属性然后下载照片
- python - 加速图像上的逐像素操作