$acos (aggregation)
$acos
New in version 4.2.
Returns the inverse cosine (arc cosine) of a value.
$acos
has the following syntax:{ $acos: <expression> }
$acos
takes any valid expression that resolves to a number between-1
and1
, e.g.-1 <= value <= 1
.$acos
returns values in radians. Use$radiansToDegrees
operator to convert the output value from radians to degrees.By default
$acos
returns values as adouble
.$acos
can also return values as a 128-bit decimal as long as the<expression>
resolves to a 128-bit decimal value.For more information on expressions, see Expressions.
Behavior
If the argument resolves to a value of null
or refers to a field that is missing, $acos
returns null
. If the argument resolves to NaN
, $acos
returns NaN
. If the argument resolves to a value outside the bounds of [-1, 1]
inclusive, $acos
throws an error.
Example | Results |
---|---|
{ $acos: NaN } | NaN |
{ $acos: null } | null |
{ $acos : Infinity} or { $acos : -Infinity }
| Throws an error message resembling the following formatted output:
"errmsg" : "Failed to optimize pipeline :: caused by :: cannot apply $acos to -inf, value must in [-1,1]" |