Bonjour,
j'avais déja posté un post sur le sujet d'un algo pour trouver un arctan, on en avait conclut l'algorithm de Padé, cependant j'aimerais juste relancer le sujet sur l'algorithme de Cordic.
J'ai fais pas mal de recherche dessus j'ai l'impression que avec cette algo on peut calculer un atan :
j'ai trouver ca :
Je ne comprend pas déja pourquoi pour calculer un atan, dans l'algo il font appel a la fonction "atan" [da=atan(d2)]; (Si on fait un algo pour calculer cette fonction, ca suppose que l'on ne la possede pas).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 I = 0; x = 4; // Coordonnée x initiale y = 4; // Coordonnée y initiale a = 0; d2 = 2; // Diviseur for(i=0; i<15; i++) { d2/= 2; // Multiple de 2-i dx=x*d2; dy=y*d2; da=atan(d2); da=180*da/PI; // Pour une valeur en degré if(y<0) { x -= dy; y += dx; a -= da; } else { x += dy; y -= dx; a += da; //La variable 'a' tend vers le résultat de l'arctan } }
Deuxiement je travail sous matlab/simulink pour l'instant, exist-il une toolbox, ou un script déja fait réalisant l'algo de Cordic pour arctan.
(le but final de mon application est sur un FPGA, et je suis amener a coder atan dans mon FPGA).
Merci pour votre aide
Partager