Approximation cos sin tan ...

Signaler
Messages postés
241
Date d'inscription
dimanche 10 août 2003
Statut
Membre
Dernière intervention
16 juin 2010
-
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015
-
salut je cherche des algorithmes pr calculer cos , sin , tan et leur inverse . Si vous en connaissez simple ou compliqués tt m'interesse.
si vs avez 1 algo pr calculer les puissance decimal comme 2^2.5 ou 5^8.05 .

merci

6 réponses

Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
3
On ne parle pas de DL mais de séries entières c pas tt à fait la meme chose...
Optimiser, c'est bien, déboguer c'est mieux
Messages postés
206
Date d'inscription
mercredi 30 janvier 2002
Statut
Membre
Dernière intervention
4 décembre 2007

Utilise les développements limités :

sin x = x + x^3 / 3! ....

cos x = 1 + x^2/2! ....

tan x = sin x / cos x

Pour les puissances :

ln (2^2.5) = 2.5 * ln (2)
et 2^2.5 = exp (ln(2^2.5))

Essaye ça pour voir, merci les cours de math spé !
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015

1) Les cours de maths de sup suffisent amplement, je crois même que ça se fait à la fac en 1ère année....

2) tu m'expliques comment tu te retrouves avec cos(x) > 1 ???
le DL de cos(x) en 0 est:
1 - x^2/2! + x^4/4! - ...

3) Les dévelopements limités se font en 1 point.....
Pour les fonctions cos ou sin c'est effectivement ce qu'il faut faire mais ça n'est pas tout.
Par exemple pour cos:

tu te fixes une limite de précision par exemple 0.0001
si ton argument est + grand tu utilise la trigo : cos(2x) = 2*cos²(x) - 1
Pour calculer cos(x) :

fonction cos(x)
{
....si x<0
........retourne cos(-x)
....sinon
....{
........si x<0.0001
............retourne 1-x^2/2 + x^4/24
........sinon
............retourne 2*cos(x/2) -1
....}
}

Avec ça tu as un cosinus super précis (une trentaine de chiffres après la virgule) et sit uveux + précis tu réduis .0001 et tu fais un DL plus loin.
Pour le sinus c'est le même principe : tu ne travail que sur le nombres positifs puis tu utilises la trigo pour diviser ton argument par 2 tant qu'il est trop grand, et quand il est suffisament petit tu fais un développement limité en 0.
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015

Petit rigolo va, les séries entières c'est grosso-modo un DL à l'infini...depuis quand l'infini est une notion informatisable ???
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
20
garslouche, ton post aurait ete mieux sans la partie precedent la virgule.
Courtoisiiiiiiiiiiiiiiiiiiiiie, svp.
BruNews, ciao...
Messages postés
584
Date d'inscription
mardi 26 novembre 2002
Statut
Membre
Dernière intervention
29 mai 2015

Ok autant pour moi, c'est vrai que ça pouvais être mal pris. C'était plus dans le sens de petit canaillou ou qqc comme ça.

Toutes mes excuses à GoldenEye si ça l'a blessé.

PS : dans l'algo que j'ai mis au dessus j'ai écrit

retourner 2*cos(x/2)-1

au lieu de

c = cos(x/2)
retourner 2*c*c-1