我知道在这个论坛上有一些非常相似的问题,我已经完成了这些问题,不幸的是我还不相信我取得的成果。
我正在尝试解决一个由三个联立方程组成的系统,但问题在于所有方程都是符号的,我实际上通过“求解方程式”的意思是用其余的方式写出“符号未知数”。符号或所谓的已知值。
我在下面发布了我的代码,我几乎尝试在Mathworks网站上应用其中一个示例。会发生什么,代码运行并且Matlab在很长一段时间内仍然处于繁忙状态,然后最终说它无法解决方程式。
在我见过的其他类似例子中,人们做了类似且特别的事情,没有人抱怨漫长的等待时间。这应该花很长时间吗?我做错了什么或者可以改变以获得我追求的目标? 这是我的代码:
L2 = sym('L2');
L1 = sym('L1');
L3 = sym('L3');
theta1 = sym('theta1');
theta2 = sym('theta2');
theta3 = sym('theta3');
x = sym('x');
y = sym('y');
z = sym('z');
eqn1 = cos(theta1)*(L1 + L3*cos(theta2 + theta3) + L2*cos(theta2)) == x
eqn2 = sin(theta1)*(L1 + L3*cos(theta2 + theta3) + L2*cos(theta2)) == y
eqn3 = L3*sin(theta2 + theta3) + L2*sin(theta2) == z
sol = solve([eqn1,eqn2,eqn3],[theta1,theta2,theta3]);