$acoshRetorna o cosseno hiperbólico inverso (arco cosseno hiperbólico) de um valor.
$acoshtem a seguinte sintaxe:{ $acosh: <expression> } $acoshpega qualquerexpressão válida que resolva para um número entre1e+Infinity, por exemplo1 <= value <= +Infinity.$acoshretorna valores em radianos. Utilize o operador$radiansToDegreespara converter o valor de saída de radianos para graus.Por padrão,
$acoshretorna valores comodouble.$acoshtambé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 resultar em um valor de null ou se referir a um campo ausente, $acosh retornará null. Se o argumento resultar em NaN, $acosh retornará NaN. Se o argumento resolver para infinito negativo, $acosh lançará um erro. Se o argumento se resolve em Infinity, $acosh retorna Infinity. Se o argumento resultar em um valor fora dos limites de [-1, Infinity] inclusive, $acosh lançará um erro.
Exemplo | Resultados | |||
|---|---|---|---|---|
|
| |||
|
| |||
|
| |||
| Lança uma mensagem de erro semelhante à seguinte saída formatada: |
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" : Decimal128("3") }
A operação de agregação a seguir usa a expressão $acosh para calcular o cosseno 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 : { $acosh : "$x-coordinate" } } } } ])
A expressão $radiansToDegrees converte o valor radianos retornado por $acosh para o valor equivalente em graus.
O comando retorna a seguinte saída:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("3"), "y-coordinate" : Decimal128("100.9979734210524228844295260083432") }
Como x-coordinate é armazenado como um decimal128bits, a saída de $acosh é 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" : Decimal128("3") }
A operação de agregação a seguir usa a expressão $acosh para calcular o cosseno 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" : { $acosh : "$x-coordinate" } } } ])
O comando retorna a seguinte saída:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("3"), "y-coordinate" : Decimal128("1.762747174039086050465218649959585") }
Como x-coordinate é armazenado como um decimal128bits, a saída de $acosh é um decimal 128bits.