Solving Inequalities with Matlab

152 ビュー (過去 30 日間)
Dimitrios Anagnostou
Dimitrios Anagnostou 2023 年 3 月 27 日
コメント済み: Walter Roberson 2023 年 3 月 27 日
I guess this is a frequent question here but the answers I have seen did not help me.
I want to solve the following inequality: |x-2| > 2|x+1|.
Manually, we get
In Mathematica there is the built-in function Reduce.
In[58]:= Reduce[Abs[x - 2] > 2 Abs[x + 1], x, Reals]
Out[58]= -4 < x < 0
With Matlab I get
>> version
ans =
'9.13.0.2105380 (R2022b) Update 2'
>> syms x real
>> solve(abs(x-2) > 2*abs(x+1), x)
ans =
-2
There is this answer here that uses Mupad's Solve function but apparently it does not work anymore.
Is there a way to use a Matlab function, not necessarily solve to get the correct domain? Thank you very much.

採用された回答

Dyuman Joshi
Dyuman Joshi 2023 年 3 月 27 日
You need to use 'ReturnConditions' as true to obtain the conditions on the solution
syms x real
sol=solve(abs(x-2) > 2*abs(x+1), x,'ReturnConditions',true)
sol = struct with fields:
x: x parameters: x conditions: x < 0 & -4 < x
  4 件のコメント
Steven Lord
Steven Lord 2023 年 3 月 27 日
Yes, on the documentation page for the solve function. This documentation page also includes an example, "Solve Inequalities", that shows its use.
Walter Roberson
Walter Roberson 2023 年 3 月 27 日

サインインしてコメントする。

その他の回答 (0 件)

製品


リリース

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by