如何在matlab中求解双系数符号方程?
我有二次方程1/x=1/(a-x)+1/(3*a-x) 我想在matlab中解决它:如何在matlab中求解双系数符号方程?,matlab,symbolic-math,Matlab,Symbolic Math,我有二次方程1/x=1/(a-x)+1/(3*a-x) 我想在matlab中解决它: solve('1/x=1/(a-x)+1/(3*a-x)', 'x') ans = (4/3+1/3*7^(1/2))*a (4/3-1/3*7^(1/2))*a 有没有办法用浮点数解方程?像 ans = 2.215250437021530*a 0.451416229645136*a ,double(ans)应该可以为您转换它。我使用eval()从符号表达式中获得双精度结果,但我只得到错误消息
solve('1/x=1/(a-x)+1/(3*a-x)', 'x')
ans =
(4/3+1/3*7^(1/2))*a
(4/3-1/3*7^(1/2))*a
有没有办法用浮点数解方程?像
ans =
2.215250437021530*a
0.451416229645136*a
,
double(ans)
应该可以为您转换它。我使用eval()从符号表达式中获得双精度结果,但我只得到错误消息:>>double(ans)???使用==>sym.double at 25 double时出错无法将输入表达式转换为双精度数组。如果输入表达式包含符号变量,请改用VPA函数。如果使用函数VPA(ans),会发生什么?我需要VPA(ans)。非常感谢你的回答