$tanhラジアンで測定された値の双曲線タンジェントを返します。
$tanhの構文は次のとおりです。{ $tanh: <expression> } $tanhは、ラジアンで測定された数値に変換される任意の有効な式を受け入れます。式が値を度単位で返す場合は、$degreesToRadians演算子を使用して値をラジアンに変換します。デフォルトでは、
$tanhdouble$tanh128は値を<expression>128 として返します。 では、 が ビットの 10 進数値に解決される場合は、 ビットの 10 進数として値を返すこともできます。式の詳細については、「式 」を参照してください。
動作
null、NaN 、+/- Infinity
null$tanhnull入力引数がNaN の値に解決されるか、欠落しているフィールドを参照する場合、 は$tanh を返します。引数が に解決されると、 はNaN を返します。引数が負の または正のInfinity $tanh-1に解決される場合、1 はそれぞれ または を返します。
例 | 結果 |
|---|---|
|
|
|
|
|
|
|
|
例
次のtrigonometryコレクションには、度単位で測定されたangle値を保存するドキュメントが含まれています。
db.trigonometry.insertOne( { "_id" : ObjectId( "5c50782193f833234ba90d45" ), "angle" : Decimal128( "53.1301023541559787031443874490659" ) } )
次の集計操作では、 式を使用して$tanh の双曲線タンジェントを計算し、それをangle $addFieldsパイプラインステージを使用して入力ドキュメントに追加します。
db.trigonometry.aggregate( [ { $addFields : { "tanh_output" : { $tanh : { $degreesToRadians : "$angle" } } } } ] )
$degreesToRadians式は、 angleを度単位でラジアンに変換します。
出力例:
{ "_id" : ObjectId("5c50782193f833234ba90d45"), "angle" : Decimal128("53.1301023541559787031443874490659"), "tanh_output" : Decimal128("0.7293303448445332820512777329448416") }
は angle128ビットの$tanh 10 進数として保存されるため、 の出力も128 ビットの 10 進数になります。
次のtrigonometryコレクションには、ラジアンで測定されたangle値を保存するドキュメントが含まれています。
db.trigonometry.insertOne( { "_id" : ObjectId( "5c50782193f833234ba90d55" ), "angle" : Decimal128( "1.6301023541559787031443874490659" ) } )
次の集計操作では、 式を使用して$tanh の双曲線タンジェントを計算し、それをangle $addFieldsパイプラインステージを使用して入力ドキュメントに追加します。
db.trigonometry.aggregate( [ { $addFields : { "tanh_output" : { $tanh : "$angle" } } } ] )
出力例:
{ "_id" : ObjectId("5c50782193f833234ba90d55"), "angle" : Decimal128("1.6301023541559787031443874490659"), "tanh_output" : Decimal128("0.9260761562750713360156803177935379") }
は angle128ビットの$tanh 10 進数として保存されるため、 の出力も128 ビットの 10 進数になります。