$asinh (agregação)
Nesta página
$asinh
Retorna o seno hiperbólico inverso (seno do arco hiperbólico) de um valor.
$asinh
tem a seguinte sintaxe:{ $asinh: <expression> } $asinh
usa qualquerexpressão válida que resolva para um número.$asinh
retorna valores em radianos. Utilize o operador$radiansToDegrees
para converter o valor de saída de radianos para graus.Por padrão,
$asinh
retorna valores comodouble
.$asinh
também pode retornar valores como um decimal de 128 bits, desde que o<expression>
resolva para um valor decimal de 128 bits.Para mais informações sobre expressões, consulte Expressões.
Comportamento
null
, NaN
e +/- Infinity
Se o argumento for resolvido para um valor de null
ou se referir a um campo ausente, $asinh
retornará null
. Se o argumento se resolve em NaN
, $asinh
retorna NaN
. Se o argumento resolver para infinito negativo ou positivo, $asinh
retornará infinito negativo ou positivo respectivamente.
Exemplo | Resultados |
---|---|
{ $asinh: NaN } | NaN |
{ $asinh: null } | null |
{ $asinh : Infinity} | Infinity |
{ $asinh : -Infinity } | -Infinity |
Exemplo
A coleção trigonometry
contém um documento que armazena um valor ao longo do eixo x
de um gráfico 2-D:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : NumberDecimal("1") }
A operação de agregação a seguir usa a expressão $asinh
para calcular o seno hiperbólico inverso de x-coordinate
e adicioná-lo ao documento de entrada usando o estágio de pipeline $addFields
.
db.trigonometry.aggregate([ { $addFields : { "y-coordinate" : { $radiansToDegrees : { $asinh : "$x-coordinate" } } } } ])
A expressão $radiansToDegrees
converte o valor radianos retornado por $asinh
para o valor equivalente em graus.
O comando retorna a seguinte saída:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : NumberDecimal("1"), "y-coordinate" : NumberDecimal("50.49898671052621144221476300417157") }
Como x-coordinate
é armazenado como um decimal128bits, a saída de $asinh
é um decimal 128bits.
A coleção trigonometry
contém um documento que armazena um valor ao longo do eixo x
de um gráfico 2-D:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : NumberDecimal("1") }
A operação de agregação a seguir usa a expressão $asinh
para calcular o seno hiperbólico inverso de x-coordinate
e adicioná-lo ao documento de entrada usando o estágio de pipeline $addFields
.
db.trigonometry.aggregate([ { $addFields : { "y-coordinate" : { $asinh : "$x-coordinate" } } } ])
O comando retorna a seguinte saída:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : NumberDecimal("1"), "y-coordinate" : NumberDecimal("1.818446459232066823483698963560709") }
Como x-coordinate
é armazenado como um decimal128bits, a saída de $asinh
é um decimal 128bits.