ASIN |
ArcSinus |
|---|---|
Perl |
POSIX |
Syntaxe
| sub POSIX::asin($expression); |
Paramètres
| Nom | Description |
|---|---|
| $expression | Ce paramètre permet d'indiquer l'expression contenant le nombre à traiter |
Description
Cette fonction trigonométrique retourne l'«ArcSinus».
Algorithme
|
MODULE ABS(valeur) SI valeur < 0 ALORS RETOURNE - valeur SINON RETOURNE valeur FIN SI MODULE SQRT(X) SI X = 0.0 ALORS RETOURNE 0.0 SINON M ← 1.0 XN ← X BOUCLE FAIRE TANT QUE XN >= 2.0 XN ← 0.25 x XN M ← 2.0 x M FIN BOUCLE FAIRE TANT QUE BOUCLE FAIRE TANT QUE XN < 0.5 XN ← 4.0 x XN M ← 0.5 x M FIN BOUCLE FAIRE TANT QUE A ← XN B ← 1.0 - XN BOUCLE REPETER A ← A x (1.0 + 0.5 x B) B ← 0.25 x (3.0 + B) x B x B FIN BOUCLE JUSQU'A B ← 1.0E - 15 RETOURNE A x M FIN SI MODULE ARCTAN(X) A ← 1.0 / SQRT(1.0 + (X x X)) B ← 1.0 BOUCLE POUR N ← 1 JUSQU'A 11 A ← (A + B) / 2.0 B ← SQRT(A x B) FIN BOUCLE POUR RETOURNE X / (SQRT(1.0 + (X x X)) x A) MODULE POSIX::ASIN(a) PI ← 3.141592653589793 SI ABS(a) = 1.0 ALORS RETOURNE PI / 2.0 SINON RETOURNE ARCTAN(a / SQRT(1 - a*a)) FIN SI |
Remarques
- Retourne l'angle dont le sinus est donné : La fonction POSIX::asin($x) permet de calculer l'arc sinus (ou sinus inverse) d'une valeur numérique comprise entre -1 et 1. Elle retourne un angle en radians dont le sinus est égal à l'expression fournie en paramètre.
- Valeur de retour toujours comprise entre -π/2 et +π/2 : Le résultat renvoyé par asin est un angle compris entre -π/2 et +π/2 radians (soit entre -90° et +90°). Cela reflète la définition mathématique de l'arc sinus, qui est bornée dans cet intervalle pour conserver l'unicité du résultat.
- Le paramètre doit appartenir à l'intervalle [-1, 1] : La fonction n'est définie que pour des valeurs entre -1 et 1 inclus. Si une valeur hors de cet intervalle est fournie, la fonction peut retourner NaN (Not a Number), générer une erreur ou provoquer un comportement non défini selon l'environnement.
- Le résultat est en radians, pas en degrés : Comme toutes les fonctions trigonométriques du module POSIX, asin retourne une valeur en radians. Il faut utiliser une conversion manuelle ($angle_degre = $angle_radian * 180 / pi) si on souhaite un résultat en degrés pour affichage ou traitement.
- Utilisable dans des calculs géométriques ou physiques : asin est souvent utilisée dans les calculs d'angles en trigonométrie, notamment pour retrouver une inclinaison ou un angle à partir d'un rapport trigonométrique connu. Elle est très courante en géométrie analytique, robotique et physique vectorielle.
- Fonction accessible via le module POSIX : Perl ne propose pas les fonctions trigonométriques inverses dans son noyau de base. Il faut importer asin explicitement avec :
- use POSIX qw(asin);
- Peut être utilisée avec des valeurs issues de sin : Pour illustrer l'inversabilité, on peut combiner asin(sin($x)) et obtenir une valeur proche de $x, dans la limite du domaine défini (-π/2 à +π/2). Cela permet d'implémenter des fonctions inverses de transformation angulaire dans les calculs numériques.
- Utile en complément de atan2 et acos : asin complète l'ensemble des fonctions d'analyse trigonométrique inverse avec acos (arc cosinus) et atan2 (arc tangente avec deux paramètres). Ensemble, elles permettent de reconstruire des angles à partir de coordonnées ou de vecteurs, essentiels dans les applications 2D/3D.
Cette dépendance est légère et ne nécessite pas d'installation externe.
Exemple
Voici un exemple classique de tests de valeurs :
on obtiendra le résultat suivant :
ASin(-1.5)=-1.5707963267949ASin(0.5)=0.523598775598299
Voir également
Langage de programmation - Fonction C pour Linux - asin
Dernière mise à jour : Dimanche, le 18 octobre 2015