从matlab中的solve函数中获取实数值

时间:2014-10-12 17:58:29

标签: matlab

我在Matlab中有一个函数,想要找到它的F值为0.5(超过一个点)的点我编写的代码如下:(函数在'&#39中定义;)

 result=solve('(1/(1+ ((x-5)/2)^(2*4)))=0.5');

但这会返回实数和复数x,其中函数的值为0.5,我只需要实数。如何从Matlab中获得求解函数的实际结果。

1 个答案:

答案 0 :(得分:1)

解决方案可以在solve的文档中找到:

result = solve('(1/(1+ ((x-5)/2)^(2*4)))=0.5', 'Real', true)

顺便说一下,您还可以通过考虑result(1:2)来获得所需的实值的结果子集。可以使用double(result)将sym类值数组更改为double值数组,之后您也可以使用isreal来获取实际解决方案。