EXAMPLE - Trigonometry Arc Functions
This example illustrates how to apply the inverse trigonometric (Arc) functions to your transformations.
Note
These functions are valid over specific ranges.
Arcsine. See ASIN Function.
Arccosine. See ACOS Function
Arctangent. See ATAN Function.
Arccotangent. Computed using ATAN function. See below.
Arcsecant. Computed using ACOS function. See below.
Arccosecant. Computed using ASIN function. See below.
Source:
In the following sample, input values are in radians. In this example, all values are rounded to two decimals for clarity.
Y |
---|
-1.00 |
-0.75 |
-0.50 |
0.00 |
0.50 |
0.75 |
1.00 |
Transformation:
Arcsine:
Valid over the range (-1 <= Y <= 1)
Transformation Name |
|
---|---|
Parameter: Formula type | Single row formula |
Parameter: Formula | round(degrees(asin(Y)), 2) |
Parameter: New column name | 'asinY' |
Arccosine:
Valid over the range (-1 <= Y <= 1)
Transformation Name |
|
---|---|
Parameter: Formula type | Single row formula |
Parameter: Formula | round(degrees(acos(Y)), 2) |
Parameter: New column name | 'acosY' |
Arctangent:
Valid over the range (-1 <= Y <= 1)
Transformation Name |
|
---|---|
Parameter: Formula type | Single row formula |
Parameter: Formula | round(degrees(atan(Y)), 2) |
Parameter: New column name | 'atanY' |
Arccosecant:
This function is valid over a set of ranged inputs, so you can use a conditional column for the computation. For more information, see ASIN Function.
Transformation Name |
|
---|---|
Parameter: Condition type | if...then...else |
Parameter: If | (Y <= -1) || (Y >= 1) |
Parameter: Then | round(degrees(asin(divide(1, Y))), 2) |
Parameter: New column name | 'acscY' |
Arcsecant:
Same set of ranged inputs apply to this function. For more information, see ACOS Function.
Transformation Name |
|
---|---|
Parameter: Condition type | if...then...else |
Parameter: If | (Y <= -1) || (Y >= 1) |
Parameter: Then | round(degrees(acos(divide(1, Y))), 2) |
Parameter: New column name | 'asecY' |
Arccotangent:
For this function, the two different ranges of inputs have different computations, so an else
condition is added to the transformation. For more information, see ATAN Function.
Transformation Name |
|
---|---|
Parameter: Condition type | if...then...else |
Parameter: If | Y > 0 |
Parameter: Then | round(degrees(atan(divide(1, Y))), 2) |
Parameter: Else | round(degrees(atan(divide(1, Y)) + pi()), 2) |
Parameter: New column name | 'acotY' |
Results:
Y | acotY | asecY | acscY | atanY | acosY | asinY |
---|---|---|---|---|---|---|
-1.00 | -41.86 | 180.00 | -90.00 | -45.00 | 180.00 | -90.00 |
-0.75 | -49.99 | null | null | -37.00 | 139.00 | -49.00 |
-0.50 | -60.29 | null | null | -27.00 | 120.00 | -30.00 |
0.00 | null | null | null | 0.00 | 90.00 | 0.00 |
0.50 | 63.44 | null | null | 27.00 | 60.00 | 30.00 |
0.75 | 53.13 | null | null | 37.00 | 41.00 | 49.00 |
1.00 | 45.00 | 0.00 | 90.00 | 45.00 | 0.00 | 90.00 |