[C++] Librairie de math sous linux ? - C++ - Programmation
Marsh Posté le 07-05-2005 à 19:22:17
2ème degré ? t'es bien fatigué !
<math.h>
-lm
double sqrt(double);
et voilà, au boulot !
Marsh Posté le 07-05-2005 à 19:49:47
On ne sait résoudre correctement qu'un seul type de systèmes, ce sont ceux qui sont linéaires.
Sinon, il y a des méthodes de minimisation. Il faut voir si ton système peut se mettre sous la forme xA(tX) + b(tX) = 0 , avec A SDP (si j'ai bonne mémoire)...
Marsh Posté le 07-05-2005 à 20:48:07
C'est simplement parce que j'ai besoin de calculer les points d'intersections de différents cercles, afin d'intégrer des fonctions de localisation de points d'accés wifi à Kismet grâce à la triangulation.
En clair j'aurais deux équations de 2e degré de 2 inconnues qui sont en fait des équations de cercles pour lesquels je dois calculer l'intersection. Une troisième équation qui me permettra de choisir entre les deux points précédement découverts. Je vais utiliser une technique simple utilisée en sismologie pour localiser un épicentre qui sera ici un point d'accés wifi
Sinon pour ma recherche de librairie je pense que la libmatheval me permettrait de résoudre des équations sans trop me pencher sur cela. Vous l'avez déja utilisée ?
http://www.gnu.org/software/libmat [...] heval.html
Marsh Posté le 08-05-2005 à 10:14:41
Finalement la librairie précédement trouvée ne permet pas la résolution d'équations mais leur simple évaluation
Marsh Posté le 08-05-2005 à 10:20:40
Heu pourquoi tu n'integres pas tout simplement ça dans une matrice que tu resous?
Marsh Posté le 08-05-2005 à 10:38:05
Ça marcherait avec ce genre d'équations ?
x²+2x+y²-y=5
x²-8x+y²-6y=0
Marsh Posté le 08-05-2005 à 11:11:47
oui biensur
Marsh Posté le 08-05-2005 à 11:29:06
Tu as des exemples de cette méthode ?
Marsh Posté le 08-05-2005 à 11:35:26
Ce genre de systeme engendrera plusieurs réponses, que tu peux trouver en resolvant la matrice...
Marsh Posté le 08-05-2005 à 11:40:20
esox_ch a écrit : Ce genre de systeme engendrera plusieurs réponses, que tu peux trouver en resolvant la matrice... |
C'est pas un système linéaire hein ?
Marsh Posté le 08-05-2005 à 11:51:02
++fab a écrit : On ne sait résoudre correctement qu'un seul type de systèmes, ce sont ceux qui sont linéaires. |
C'est pas un système linéaire mais celui-ci est solvable aussi. On a fait plus compliqué que de trouver les points d'intersections de 2 cercles Et les polynomes du second degrée aussi ça se résoud.
Marsh Posté le 08-05-2005 à 11:59:55
Pas dans le cas général.
A la mimine, pas de probleme.
Je vois 2 méthodes, celle dont j'ai parlé et la méthode de Newton qui fait intervenir des dérivées.
Marsh Posté le 08-05-2005 à 12:55:26
++fab a écrit : Pas dans le cas général. |
Newton est juste une "optimisation" pour accelerer l'approximation des solutions.
Mais bon, c'est vrai que le sujet est mal posé car ses équations sont celles de cercles et donc il n'est pas dans le cas général.
Marsh Posté le 08-05-2005 à 13:25:20
Je vais m'intéresser à la méthode de Newton alors, j'ai juste besoin d'approximations dans mon cas
Marsh Posté le 08-05-2005 à 13:29:45
et tu fais bien !
parce que je me suis vautré pour l'autre méthode ... Elle sert à résoudre des systèmes linéaires (comme d'hab) lorsque la matrice est hermitienne définie positive.
Marsh Posté le 08-05-2005 à 13:43:36
Kristoph a écrit : Newton est juste une "optimisation" pour accelerer l'approximation des solutions. |
Citation : Mais bon, c'est vrai que le sujet est mal posé car ses équations sont celles de cercles et donc il n'est pas dans le cas général. |
Si, il est dans le cas le plus général, celui de l'algèbre non linéaire
Marsh Posté le 07-05-2005 à 19:11:41
Je cherche à résoudre des systèmes d'équations du deuxième degrés sous linux. Existe t'il des libraires que je pourrais utililer afin de résoudre ce problème ?
Merci de votre aide
---------------
Et toi, tu crois que les ours polaires vont chier dans les bois ?