|
Apprendre Maple Site dédié au logiciel de calcul formel Maple
|
Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
bendesarts
Inscrit le: 27 Fév 2009 Messages: 234
|
Posté le: 20 Déc 2012 23:16 Sujet du message: Résolution de systèmes trigonométriques |
|
|
Bonjour,
Je cherche à résoudre un système d'équations trigonométrique. J'ai la démarche à adopter qui a été réalisé dans un cas simple :
Code: |
restart;
Equations à l'équilibre
eq_L_psi_e := 0 = m[3]*g*L*sin(psi_e)*cos(theta_e);
eq_L_theta_e := 0 = m[3]*g*L*cos(psi_e)*sin(theta_e);
Positions d'équilibre
_EnvAllSolutions := true;
sol := solve({eq_L_psi_e, eq_L_theta_e}, {psi_e, theta_e});
sol1 := sol[1]; sol2 := sol[2];
sol1 := subs(_Z1 = i, _Z2 = j, sol1);
sol2 := subs(_Z3 = i, _Z4 = j, sol2);
solu_totale := seq(seq(sol1, i = 0 .. 1), j = 0 .. 1), seq(seq(sol2, i = 0 .. 1), j = 0 .. 1);
|
Ce code marche et j'obtiens toutes les solutions qui satisfont les équations trigonométriques.
Mon problème arrive lorsque j'essaye d'appliquer cette méthode sur un cas un peu plus complexe 3 équations et 3 inconnues.
Code: |
restart;
eq_liai_e[1] := .5624498772-.1286563022*cos(gamma_e[1])-.6092399112*cos(gamma_e[1])*cos(phi_e[1])*cos(psi_e[1])+.6092399112*cos(phi_e[1])*sin(gamma_e[1])*sin(psi_e[1])+.3651964504*sin(phi_e[1]) = 0;
eq_liai_e[2] := .3371491180-0.7712039876e-1*cos(gamma_e[1])-.3651964504*cos(gamma_e[1])*cos(phi_e[1])*cos(psi_e[1])+.3651964504*cos(phi_e[1])*sin(gamma_e[1])*sin(psi_e[1])-.6092399112*sin(phi_e[1]) = 0;
eq_liai_e[3] := .706007[1]+.15*sin(gamma_e[1])+(.710311*(cos(gamma_e[1])*sin(psi_e[1])+cos(psi_e[1])*sin(gamma_e[1])))*cos(phi_e[1])-.706007 = 0;
sol := solve({seq(eq_liai_e[i],i=1..3)}, {gamma_e[1], psi_e[1],phi_e[1]});
|
La solution que j'obtiens est horrible et contenant pleins de RootOf. Avant même d'appliquer la méthode ci-dessus, j'aurais aimé réussir à simplifier les solutions obtenus.
Qu'en pensez ? Est-il au moins possible d'obtenir une approximation des solutions à 4 chiffres après la virgule. Je n'ai pas besoin d'une grande précision. J'ai essayé d'appliquer evalf mais çà n'a pas fonctionné.
Merci d'avance pour votre aide. |
|
Revenir en haut de page |
|
|
ALS
Inscrit le: 11 Sep 2006 Messages: 647
|
Posté le: 21 Déc 2012 7:08 Sujet du message: |
|
|
Bonjour,
Le système n'étant pas linéaire, ça va être difficile avec solve. J'ai essayé avec fsolve, ça ne marche pas non plus.
Pas d'autre idée, allez poser la question sur mapleprimes.com in english of course.
Bonnes fêtes à vous aussi, je suis en vacances ce soir donc je ne réponds plus aux questions avant la rentrée. |
|
Revenir en haut de page |
|
|
|
|
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum
|
Développé par phpBB © 2001, 2006 phpBB Group
Traduction par : phpBB-fr.com
Apprendre Maple - ©
- Alain Le Stang - Navigation optimisée pour une résolution 1024 x 768.
|