Se connecter avec
S'enregistrer | Connectez-vous

Racines d'un polynome de degrès 3

Dernière réponse : dans Programmation

Bonjour à tous, je cherche un moyen le plus rapide possible pour trouver les racines d'un polynome de degrès 3 (en fait c'est le polynome caractéristique d'une matrice symétrique reelle)...
J'ai pensé à utiliser la dichotomie pr extraire une racine puis résoudre le polynome de degrès 2 restant par les méthode classiques mais le pb est que je ne vois pas comment faire chercher un encadrement d'une racine par le pc car je ne connait pas du tout l'ordre de grandeur des racines et si elles sont "rapprochées" ou non...
J'ai aussi pensé a la méthode de cardan mais bon....un peu dure à mettre en oeuvre je trouve...
Voilà, si certains ont des idées...
PS : je cherche des approximations à 10^-5 près des racines...
Merci à vous

Autres pages sur : racines polynome degres

Lassé par la pub ? Créez un compte
Expert Programmation

Je suppose que tu pars d'une équation. Comme ça, sans réfléchir, je vois 2 pistes:
- est-ce que tu ne pourrais pas encadrer la zone de recherche (en majorant) à partir des coefficients du polynôme ?
- Est-ce que tu ne pourrais pas trouver une heuristique en prenant 2 points, supposer dans un premier temps que c'est suffisamment proche pour être approximatif d'une tangente ? Et donc, tu pourrais travailler sur la dérivée, voire la dérivée seconde (en observant les variations de tangente).

A ma connaissance un super formule existe pour le degré 3.
Une autre pour le degré 4.

A partir du degré 5 il est impossible de trouver une formule.

Donc pour ton probleme, cherche sur des cours de maths, tu devrais trouver la formule (t'a essayé wikipedia?)

Ca me fait penser que le dernier coef du polynome donne le produit des 3 racines donc si ce coef est + grand que 1 en VA au moins l'une d'elles est inferieure à ce coef en valeur absolue bien entendu...sinon on est sûr qu'au moins l'une d'elles est + petite que 1 en valeur absolue !!!!! J'y avais meme pas pensé ca fait 2h que je sui dessus en +...merciiii !!! En plus c'est tout con à programmer ça.
Apres je compte faire par dichotomie avc un pas de 1...ensuite reste à factoriser le (x-racine) par Horner et à trouver les racines du polynome de degres 2 restant...
Bon ben c'est nickel.

EDIT : oui j'étais allé voir, ils parlaient de la méthode de cardan que je connaissais déjà un peu mais elle est vraiment lourde (changement de variables, il faut passer par des complexes etc...bref le merdier) mais là je pense que c'est bon

On m'a parlé d'une méthode permettant de trouver les vecteurs propres d'une matrice symétrique reelle en faisant le procédé de graam-schmidt plusieurs fois de suite (exploitant l'orthogonalité des vecteurs propres) : on obtenait ainsi une suite de vecteurs qui convergeait vers les vecteurs propres...Quelqu'un peut m'en dire plus ? Et puis si qqun peut me donner la démonstration ça m'interesse ...
Voilà, merci à vous.

oulaa je suis pas tres copain avc l'anglais...en fait je connais le procédé de schmidt y a pas de problèmes mais j'ai vu que dans le cas d'une matrice symétrique, on utilisait ce procédé plusieurs fois de suite pour trouver des vecteurs propres vu qu'on sait que ces vecteurs là sont orthogonnaux : en fait au lieu de trouver des racines d'un polynome de d°3, on fait schmidt un certain de nbre de fois au meme vecteur et il y a convergence de ce vecteur vers un vecteur propre....Et ça je comprend pas d'où ça sort.
http://www.cppfrance.com/codes/DIAGONALISATION-MATRICES-3X3-SYMETRIQUES_33253.aspx
C'est la fonction diag en fait qui me pose problème car à aucun moment on parle de polynome caractéristique : on fait juste 10 tours de boucles et c'est réglé...Je voudrais juste connaitre la théorie qu'il y a derriere.
merci

Je n'arrive pas à trouver la démo que je cherche :( ....Quand même bizzare que j'en ai jamais entendu parler...Je précise que cet algorithme est censé marcher seulement pour des matrices symétriques réelles.
Merci quand même
Lassé par la pub ? Créez un compte
Tom's guide dans le monde