$atanhDevuelve la tangente hiperbólica inversa (arco tangente hiperbólico) de un valor.
$atanhtiene la siguiente sintaxis:{ $atanh: <expression> } $atanhtoma cualquier válido expresión que se resuelve en un número entre-1y, por1-1 <= value <= 1ejemplo.$atanhdevuelve valores en radianes. Utilice el operador para convertir el valor de salida de radianes a$radiansToDegreesgrados.De forma predeterminada, devuelve
$atanhvaloresdoublecomo. también puede$atanh128devolver valores como un decimal de bits siempre que se<expression>resuelva en un 128valor decimal de bits.Para obtener más información sobre las expresiones, consulta Expresiones.
Comportamiento
null, NaN y +/- Infinity
Si el argumento se resuelve en un valor de null o hace referencia a un campo que falta, $atanh nulldevuelve. Si se resuelve NaN en, $atanh NaNdevuelve. Si se resuelve en infinito negativo o positivo, genera un error. Si se resuelve$atanh en +1 -1o, $atanh devuelve Infinity y -Infinity respectivamente.
Ejemplo | Resultados | |||
|---|---|---|---|---|
|
| |||
|
| |||
|
| |||
|
| |||
or
| Lanza un mensaje de error similar a la siguiente salida formateada: |
Ejemplo
La colección trigonometry contiene un documento que almacena un valor a lo largo del eje x de un gráfico 2-D:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("0.5") }
La siguiente operación de agregación utiliza la $atanh expresión para calcular la tangente hiperbólica inversa de x-coordinate y agregarla al documento $addFields de entrada utilizando la etapa de canalización.
db.trigonometry.aggregate([ { $addFields : { "y-coordinate" : { $radiansToDegrees : { $atanh : "$x-coordinate" } } } } ])
La expresión convierte $radiansToDegrees $atanh el valor en radianes devuelto por al valor equivalente en grados.
El comando devuelve la siguiente salida:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("0.5"), "y-coordinate" : Decimal128("31.47292373094538001977241539068589") }
Dado que x-coordinate se almacena como un 128decimal de bits, la salida de es $atanh un 128decimal de bits.
La colección trigonometry contiene un documento que almacena un valor a lo largo del eje x de un gráfico 2-D:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("0.5") }
La siguiente operación de agregación utiliza la $atanh expresión para calcular la tangente hiperbólica inversa de x-coordinate y agregarla al documento $addFields de entrada utilizando la etapa de canalización.
db.trigonometry.aggregate([ { $addFields : { "y-coordinate" : { $atanh : "$x-coordinate" } } } ])
El comando devuelve la siguiente salida:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("0.5"), "y-coordinate" : Decimal128("0.5493061443340548456976226184612628") }
Dado que x-coordinate se almacena como un 128decimal de bits, la salida de es $asin un 128decimal de bits.