"roots" call is not providing the correct answer
3 views (last 30 days)
Show older comments
So this has been happening for every type of polynomail that I give matlab, and it always provides me with the same answer.
For example, if trying to find the roots for: f(x) = x^2+ 3x+2
the two roots are simply: x = -1 and x = -2
But, when I run the code in my matlab program on my computer I get the following:
p = [1 3 2];
r = roots(p)
>> roottest
fx =
-1.6954e+03
r =
-1.6954e+03
And I get that answer regardless of what coefficients are place within the p variable. I'm just wondering if anyone has encountered a similar probelm ebfore and how to go about fixing it. I have tried clear roots before as well and that did not change anything. I'm just doing a tutorial for a lab session for intro to Matlab and while I will be using a different computer in the lab which I know works, I would just like to know why it is not working for my personal program.
TYIA
2 Comments
Dyuman Joshi
on 24 May 2023
Are you running a script named "roottest"? What are its content?
"And I get that answer regardless of what coefficients are place within the p variable."
Maybe you have saved a user-defined function with the name 'roots'.
What is the output when you run this following line of code?
which roots -all
Answers (1)
James Tursa
on 24 May 2023
Edited: James Tursa
on 25 May 2023
Rename your old roots file (preferred method) or move it to a directory that is not on the MATLAB path. That way it won't shadow the MATLAB roots function.
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!