Different answers from 'roots' & 'solve' command?

2 vues (au cours des 30 derniers jours)
Subham Shit
Subham Shit le 7 Avr 2015
Modifié(e) : Matt J le 7 Avr 2015
>> R=roots([3 0 0 0 0 4 1])
R =
0.9017 + 0.6256i
0.9017 - 0.6256i
-0.2767 + 1.0147i
-0.2767 - 1.0147i
-1.0000 + 0.0000i
-0.2502 + 0.0000i
>> R(R == real(R))
ans =
-1.0000
-0.2502
>> solx = solve(3*x^6 + 4*x + 1==0, x)
solx =
-1
RootOf(z^5 - z^4 + z^3 - z^2 + z + 1/3, z)[1]
RootOf(z^5 - z^4 + z^3 - z^2 + z + 1/3, z)[2]
RootOf(z^5 - z^4 + z^3 - z^2 + z + 1/3, z)[3]
RootOf(z^5 - z^4 + z^3 - z^2 + z + 1/3, z)[4]
RootOf(z^5 - z^4 + z^3 - z^2 + z + 1/3, z)[5]
>> solx(solx == real(solx))
ans =
-1
>>
  1 commentaire
Subham Shit
Subham Shit le 7 Avr 2015
Modifié(e) : Subham Shit le 7 Avr 2015
Using 'roots' I am getting 2 real solution but using 'solve' I am getting 1 real solution of same equation. How is that possible?

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 7 Avr 2015
Modifié(e) : Matt J le 7 Avr 2015
SOLVE was not able to find a closed symbolic form for all the roots (because one doesn't exist for this polynomial). It therefore cannot assess whether the ones not in closed form are real.

Plus de réponses (0)

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by