Matlab错误函数求解的输入或输出数量不正确

oiopk7p5  于 2023-03-23  发布在  Matlab
关注(0)|答案(1)|浏览(2294)

我试图在MatLab中解决一个简单的方程,但我一直得到这个错误,说“函数'solve'的输入或输出的数量或类型不正确”。
下面是我的代码:

syms tau12 sig11 sig22

tau12= 6e6
sig11 =22e6
sig22 = 10e6

solve(tan(2*theta) == tau12 / ((sig11 - sig22) / 2), theta)

atan,tand不工作。我想可能有什么问题,因为我看到了一个矩阵。

ljo96ir5

ljo96ir51#

我认为问题是theta不是syms变量,所以你输入solve的第一个参数不是类'eqn'的对象。
尝试创建您的方程作为一个单独的变量第一,像;

syms theta
my_eqn = tan(2*theta) == tau12 / ((sig11 - sig22) / 2)
solve(my_eqn, theta)

这将帮助您避免将来发生类似的问题,因为在创建eqn对象时返回错误,而不是在调用solve()时返回更令人困惑的错误

相关问题