# Difference between revisions of "ASIN"

imported>SMcNeill m (-) |
imported>SMcNeill m (-) |
||

Line 1: | Line 1: | ||

{{DISPLAYTITLE:_ASIN}} | {{DISPLAYTITLE:_ASIN}} | ||

The | The [[_ASIN]] function returns the angle measured in radians based on an input [[SIN]]e value ranging from -1 to 1. | ||

{{PageSyntax}} | {{PageSyntax}} | ||

: {{Parameter|radian_angle!}} = | : {{Parameter|radian_angle!}} = [[_ASIN]]({{Parameter|sine_value!}}) | ||

Line 10: | Line 10: | ||

* The {{Parameter|sine_value!}} must be measured >= -1 and <= 1, or else it will generate a return value of '''-1.#IND''', which is basically QB64's way of telling us that the number doesn't exist. | * The {{Parameter|sine_value!}} must be measured >= -1 and <= 1, or else it will generate a return value of '''-1.#IND''', which is basically QB64's way of telling us that the number doesn't exist. | ||

* ARCSINE is the inverse function of [[SIN]]e, and turns a [[SIN]]e value back into an angle. | * ARCSINE is the inverse function of [[SIN]]e, and turns a [[SIN]]e value back into an angle. | ||

* Note: Due to rounding with floating point math, the | * Note: Due to rounding with floating point math, the [[_ASIN]] may not always give a perfect match for the [[SIN]] angle which generated this. You can reduce the number of rounding errors by increasing the precision of your calculations by using [[DOUBLE]] or [[_FLOAT]] precision variables instead of [[SINGLE]]. | ||

## Revision as of 13:25, 5 September 2017

The _ASIN function returns the angle measured in radians based on an input SINe value ranging from -1 to 1.

## Syntax

*radian_angle!*= _ASIN(*sine_value!*)

## Description

- The
*sine_value!*must be measured >= -1 and <= 1, or else it will generate a return value of**-1.#IND**, which is basically QB64's way of telling us that the number doesn't exist. - ARCSINE is the inverse function of SINe, and turns a SINe value back into an angle.
- Note: Due to rounding with floating point math, the _ASIN may not always give a perfect match for the SIN angle which generated this. You can reduce the number of rounding errors by increasing the precision of your calculations by using DOUBLE or _FLOAT precision variables instead of SINGLE.

## Availability

**Version 1.000 and up**

## Examples

*Example:* Converting a radian angle to its SINe and using that value to find the angle in degrees again using _ASIN:

* *
DEFDBL A-Z
INPUT "Give me an Angle (in Degrees) => "; Angle
PRINT
C = SIN(_D2R(Angle)) '_D2R is the command to convert Degrees to Radians, which is what SIN expects
PRINT "The SINE of the Angle is: "; C
A = _ASIN(C)
PRINT "The ASIN of "; C; " is: "; A
PRINT "Notice, A is the Angle in Radians. If we convert it to degrees, the value is "; _R2D(A) * *

Give me an Angle (in Degrees) => ? 60 The SINE of the Angle is: .8660254037844386 The ACOS of .8660254037844386 is: 1.047197551196598 Notice, A is the Angle in Radians. If we convert it to degrees, we discover the value is 60

## See also

- _D2G (degree to gradient, _D2R (degree to radian)
- _G2D (gradient to degree), _G2R (gradient to degree
- _R2D (radian to degree), _R2G (radian to gradient
- COS (cosine), SIN (sine), TAN (tangent)
- _ACOS (arc cosine), ATN (arc tangent)
- _ACOSH (arc hyperbolic cosine), _ASINH (arc hyperbolic sine), _ATANH (arc hyperbolic tangent)
- _ATAN2 (Compute arc tangent with two parameters)
- _HYPOT (hypotenuse)
- Mathematical Operations
- Derived Mathematical Functions

*Navigation:*