want to get only all positive real roots
44 views (last 30 days)
Show older comments
Compute all positive real roots of x^4 + 2*x^3 − 7*x^2 + 3 = 0.
I want to discard all the imaginary ones and keep only the positive real root only
Can someone please guide me on that???
1 Comment
Steven Lord
on 22 Apr 2019
Show us what you've written so far and we may be able to suggest how to modify your code to return the positive real roots.
Answers (1)
Raj
on 23 Apr 2019
Edited: Raj
on 23 Apr 2019
Use this:
p=[1 2 -7 0 3] % Your Polynomial equation coefficients matrix
A=roots(p) % All roots of equation
B=A(A>=0) % Only positive real roots of equation
This will be a useful read.
4 Comments
Walter Roberson
on 23 Apr 2019
Looks like this particular equation has only real roots, two negative and two postive.
Dokeun Hwang
on 22 May 2021
Edited: Dokeun Hwang
on 22 May 2021
The answer above gives all the real parts in the roots
So, it should be corrected as below
B=A(real(A)>0&imag(A)==0);
ref: https://kr.mathworks.com/matlabcentral/answers/89612-how-to-select-real-positive-number
See Also
Categories
Find more on Numerical Integration and Differential Equations 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!