- Reference >
- Operators >
- Aggregation Pipeline Operators >
- $tanh (aggregation)
$tanh (aggregation)¶
-
$tanh
¶ New in version 4.2.
Returns the hyperbolic tangent of a value that is measured in radians.
$tanh
has the following syntax:$tanh
takes any valid expression that resolves to a number, measured in radians. If the expression returns a value in degrees, use the$degreesToRadians
operator to convert the value to radians.By default
$tanh
returns values as adouble
.$tanh
can also return values as a 128-bit decimal if the<expression>
resolves to a 128-bit decimal value.For more information on expressions, see Expressions.
Behavior¶
null
, NaN
, and +/- Infinity
¶
If the input argument resolves to a value of null
or refers to a
field that is missing, $tanh
returns null
. If the
argument resolves to NaN
, $tanh
returns NaN
. If
the argument resolves to negative or positive Infinity
,
$tanh
returns -1
or 1
respectively.
Example | Results |
---|---|
{ $tanh: NaN } |
NaN |
{ $tanh: null } |
null |
{ $tanh: -Infinity } |
-1 |
{ $tanh: Infinity } |
1 |
Example¶
- Hyperbolic Tangent in Degrees
- Hyperbolic Tangent in Radians
The following trigonometry
collection contains a document
that stores an angle
value measured in degrees:
The following aggregation operation uses the
$tanh
expression to calculate the hyperbolic
tangent of angle
and adds it to the input document using
the $addFields
pipeline stage:
The $degreesToRadians
expression converts the
angle
in degrees to radians.
Example output:
Because angle
is stored as a 128-bit decimal, the $tanh
output is also a
128-bit decimal.
The following trigonometry
collection contains a document
that stores an angle
value measured in radians:
The following aggregation operation uses the
$tanh
expression to calculate the hyperbolic
tangent of angle
and adds it to the input document using
the $addFields
pipeline stage:
Example output:
Because angle
is stored as a 128-bit decimal, the $tanh
output is also
a 128-bit decimal.