Unable to find explicit solution to a very simple equation

1 view (last 30 days)
So my code is
syms x
solve(-3*x^4+12*x^2 > 0,x)
And for some reason matlab cant answer this. I have tried everything but nothing has worked so far
the answer should be x=0 and x=+-2, but instead i get
Warning: Unable to find explicit solution. For options, see help.
ans =
Empty sym: 0-by-1
What am i doing wrong? I am losing my mind cause I know this is a very simple task

Accepted Answer

Paul
Paul on 15 Sep 2021
Edited: Paul on 15 Sep 2021
The equation in the question is an inequality, but the supposed solution posed in the question is for an equality:
syms x real
f(x) = -3*x^4 + 12*x^2;
solve(f(x)==0,x)
ans = 
Plot f(x)
fplot(f(x),[-2 2])
So that gives us an idea of what the solution should be for f(x) > 0.
assume(x,'real') % otherwise the solver will consider x as complex
sol = solve(f(x)>0,'ReturnConditions',true);
sol.x
ans = 
sol.parameters
ans = 
x
sol.conditions
ans = 
Which looks like the expected solution based on the graph.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!