从matlab中的解算函数中获取实值

从matlab中的解算函数中获取实值,matlab,Matlab,我在Matlab中有一个函数,希望找到F值为0.5(不止一个点)的点。我编写的代码如下:(函数在“”中定义) 但这个返回实数和复数x,其中函数的值是0.5,我只需要实数。如何从Matlab中的solve函数中获得实际结果。可以在以下文档中找到解决方案: 顺便说一下,您还可以通过考虑结果(1:2)来获得所需的实值结果子集。可以使用double(result)将sym类值数组更改为双值数组,然后可以使用isreal获得真正的解决方案 result=solve('(1/(1+ ((x-5)/2)^(

我在Matlab中有一个函数,希望找到F值为0.5(不止一个点)的点。我编写的代码如下:(函数在“”中定义)


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

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

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

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