Docs Menu
Docs Home
/ /
Operadores de tuberías de agregación

$acosh (operador de expresión)

$acosh

Devuelve el coseno hiperbólico inverso (arcocoseno hiperbólico) de un valor.

$acosh tiene la siguiente sintaxis:

{ $acosh: <expression> }

$acosh toma cualquier válido expresión que se resuelve en un número entre 1 y, por +Infinity 1 <= value <= +Infinityejemplo.

$acosh devuelve valores en radianes. Utilice el operador para convertir el valor de salida de radianes a $radiansToDegrees grados.

De forma predeterminada, devuelve $acosh valores double como. también puede$acosh 128devolver 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.

Si el argumento se resuelve en un valor de null o hace referencia a un campo que falta, $acosh nulldevuelve. Si el argumento se resuelve NaN en, $acosh NaNdevuelve. Si el argumento se resuelve en menos infinito, genera un error. Si el argumento se resuelve$acosh en,Infinity $acosh Infinitydevuelve. Si el argumento se resuelve en un valor fuera de los límites de [-1, Infinity] inclusive, genera un$acosh error.

Ejemplo
Resultados

{ $acosh: NaN }

NaN

{ $acosh: null }

null

{ $acosh : Infinity}

Infinity

{ $acosh : 0 }

Lanza un mensaje de error similar a la siguiente salida formateada:

"errmsg" :
"Failed to optimize pipeline :: caused by :: cannot
apply $acosh to -inf, value must in (1,inf)"

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("3")
}

La siguiente operación de agregación utiliza la expresión para calcular el coseno hiperbólico inverso $acosh de x-coordinate y agregarlo al documento $addFields de entrada utilizando la etapa de canalización.

db.trigonometry.aggregate([
{
$addFields : {
"y-coordinate" : {
$radiansToDegrees : { $acosh : "$x-coordinate" }
}
}
}
])

La expresión convierte $radiansToDegrees $acosh el valor en radianes devuelto por al valor equivalente en grados.

El comando devuelve la siguiente salida:

{
"_id" : ObjectId("5c50782193f833234ba90d85"),
"x-coordinate" : Decimal128("3"),
"y-coordinate" : Decimal128("100.9979734210524228844295260083432")
}

Dado que x-coordinate se almacena como un 128decimal de bits, la salida de es $acosh 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("3")
}

La siguiente operación de agregación utiliza la expresión para calcular el coseno hiperbólico inverso $acosh de x-coordinate y agregarlo al documento $addFields de entrada utilizando la etapa de canalización.

db.trigonometry.aggregate([
{
$addFields : {
"y-coordinate" : {
$acosh : "$x-coordinate"
}
}
}
])

El comando devuelve la siguiente salida:

{
"_id" : ObjectId("5c50782193f833234ba90d85"),
"x-coordinate" : Decimal128("3"),
"y-coordinate" : Decimal128("1.762747174039086050465218649959585")
}

Dado que x-coordinate se almacena como un 128decimal de bits, la salida de es $acosh un 128decimal de bits.

Volver

$acos

En esta página