$atanhRetorna a tangente hiperbólica inversa (tangente do arco hiperbólico) de um valor.
$atanhtem a seguinte sintaxe:{ $atanh: <expression> } $atanhpega qualquer expressão válida que resolva para um número entre-1e, por1-1 <= value <= 1exemplo,.$atanhretorna valores em radianos. Utilize o operador para converter o valor de saída de radianos para$radiansToDegreesgraus.Por padrão , retorna
$atanhvaloresdoublecomo. também pode$atanh128retornar valores como um decimal de bits, desde que o seja<expression>resolvido para um 128valor decimal de 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, $atanh nullretornará. Se o argumento se resolve NaN em, $atanh NaNretorna. Se o argumento resolver para infinito negativo ou positivo, lançará um erro. Se o argumento se$atanh resolve +1 em -1 ou, $atanh retornará Infinity e -Infinity respectivamente.
Exemplo | Resultados | |||
|---|---|---|---|---|
|
| |||
|
| |||
|
| |||
|
| |||
ou
| 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("0.5") }
A seguinte operação de agregação utiliza a $atanh expressão para calcular a tangente hiperbólica inversa de x-coordinate e adicioná-la ao documento de entrada utilizando o estágio de pipeline.$addFields
db.trigonometry.aggregate([ { $addFields : { "y-coordinate" : { $radiansToDegrees : { $atanh : "$x-coordinate" } } } } ])
A expressão converte o $radiansToDegrees $atanh valor radianos retornado por para o valor equivalente em graus.
O comando retorna a seguinte saída:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("0.5"), "y-coordinate" : Decimal128("31.47292373094538001977241539068589") }
Como x-coordinate é armazenado como um 128decimal de bits, a saída de é $atanh um 128decimal de bits.
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("0.5") }
A seguinte operação de agregação utiliza a $atanh expressão para calcular a tangente hiperbólica inversa de x-coordinate e adicioná-la ao documento de entrada utilizando o estágio de pipeline.$addFields
db.trigonometry.aggregate([ { $addFields : { "y-coordinate" : { $atanh : "$x-coordinate" } } } ])
O comando retorna a seguinte saída:
{ "_id" : ObjectId("5c50782193f833234ba90d85"), "x-coordinate" : Decimal128("0.5"), "y-coordinate" : Decimal128("0.5493061443340548456976226184612628") }
Como x-coordinate é armazenado como um 128decimal de bits, a saída de é $asin um 128decimal de bits.