【问题标题】:Unexpected result on solving some inequality in Matlab symbolic computation解决 Matlab 符号计算中的一些不等式的意外结果
【发布时间】:2014-05-23 02:00:17
【问题描述】:

请考虑这个例子。我想解决 x^3 - 2x > 0。我尝试以下命令:

syms x;
f = @(x) x^3-2*x;
solve(f(x)>0,x)

Matlab 会返回这个

ans = 求解([0.0

这不是我所期望的。因此我使用

solve(f(x)+x>x,x)

返回

ans = Dom::Interval(2^(1/2), Inf) Dom::Interval(-2^(1/2), 0)

有人能解释一下为什么solve 只能在第二种情况下成功吗?

【问题讨论】:

    标签: matlab solver symbolic-math symbolic-computation


    【解决方案1】:

    尝试将Real 选项添加到solve

    solve(f(x)>0,x,'Real',1)
    
    ans =
    
     Dom::Interval(2^(1/2), Inf)
     Dom::Interval(-2^(1/2), 0)
    

    【讨论】:

    • 或者将x定义为真实的,例如syms x real
    猜你喜欢
    • 1970-01-01
    • 2014-12-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-25
    • 2015-12-11
    • 2018-12-06
    • 2014-07-14
    • 1970-01-01
    相关资源
    最近更新 更多