StrictMath.Fma メソッド

定義

オーバーロード

Fma(Double, Double, Double)

3 つの引数の乗算加算を返します。つまり、 は、最初の 2 つの引数の正確な積を 3 番目の引数で合計した後、最も近い doubleに 1 回丸めた値を返します。

Fma(Single, Single, Single)

3 つの引数の乗算加算を返します。つまり、 は、最初の 2 つの引数の正確な積を 3 番目の引数で合計した後、最も近い floatに 1 回丸めた値を返します。

Fma(Double, Double, Double)

3 つの引数の乗算加算を返します。つまり、 は、最初の 2 つの引数の正確な積を 3 番目の引数で合計した後、最も近い doubleに 1 回丸めた値を返します。

[Android.Runtime.Register("fma", "(DDD)D", "", ApiSince=33)]
public static double Fma (double a, double b, double c);
[<Android.Runtime.Register("fma", "(DDD)D", "", ApiSince=33)>]
static member Fma : double * double * double -> double

パラメーター

a
Double

b
Double

c
Double

戻り値

(& nbsp;&回; b + c) 無制限の範囲と精度を持つかのように計算され、最も近いdouble値に 1 回丸められます

属性

注釈

3 つの引数の乗算加算を返します。つまり、 は、最初の 2 つの引数の正確な積を 3 番目の引数で合計した後、最も近い doubleに 1 回丸めた値を返します。

丸め処理は、java.math.RoundingMode#HALF_EVEN最も近い偶数丸めモードに丸める方法を使用して行われます。

これに対し、 が通常の浮動小数点式として評価される場合は、2 つの丸めエラーが関係します。1 つ目は乗算演算の場合 a * b + c は 2 つ目、加算演算では 2 番目です。

特殊なケース: <ul><li> 引数が NaN の場合、結果は NaN になります。

<li> 最初の 2 つの引数のいずれかが無限で、もう一方が 0 の場合、結果は NaN になります。

<li> 最初の 2 つの引数の正確な積が無限であり (つまり、引数の少なくとも 1 つが無限で、もう一方がゼロでも NaN でもない)、3 番目の引数が逆符号の無限大である場合、結果は NaN になります。

</ul>

fusedMac(a, 1.0, c) 、(a + c) と同じ結果を返します。 ただし、 fusedMac(a, b, +0.0) em>not</em> は<常に (a * b) fusedMac(-0.0, +0.0, +0.0) と同じ結果を返します。is +0.0 while (-0.0 * +0.0) は であるためfusedMac(a, b, -0.0)、 は -0.0(a * b) と同等です。

9 に追加されました。

java.lang.StrictMath.fma(double, double, double)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象

Fma(Single, Single, Single)

3 つの引数の乗算加算を返します。つまり、 は、最初の 2 つの引数の正確な積を 3 番目の引数で合計した後、最も近い floatに 1 回丸めた値を返します。

[Android.Runtime.Register("fma", "(FFF)F", "", ApiSince=33)]
public static float Fma (float a, float b, float c);
[<Android.Runtime.Register("fma", "(FFF)F", "", ApiSince=33)>]
static member Fma : single * single * single -> single

パラメーター

a
Single

b
Single

c
Single

戻り値

(& nbsp;&回; b + c) 無制限の範囲と精度を持つかのように計算され、最も近いfloat値に 1 回丸められます

属性

注釈

3 つの引数の乗算加算を返します。つまり、 は、最初の 2 つの引数の正確な積を 3 番目の引数で合計した後、最も近い floatに 1 回丸めた値を返します。

丸め処理は、java.math.RoundingMode#HALF_EVEN最も近い偶数丸めモードに丸める方法を使用して行われます。

これに対し、 が通常の浮動小数点式として評価される場合は、2 つの丸めエラーが関係します。1 つ目は乗算演算の場合 a * b + c は 2 つ目、加算演算では 2 番目です。

特殊なケース: <ul><li> 引数が NaN の場合、結果は NaN になります。

<li> 最初の 2 つの引数のいずれかが無限で、もう一方が 0 の場合、結果は NaN になります。

<li> 最初の 2 つの引数の正確な積が無限であり (つまり、引数の少なくとも 1 つが無限で、もう一方がゼロでも NaN でもない)、3 番目の引数が逆符号の無限大である場合、結果は NaN になります。

</ul>

fma(a, 1.0f, c) 、(a + c) と同じ結果を返します。 ただし、 fma(a, b, +0.0f) em>not</em> は<常に (a * b) fma(-0.0f, +0.0f, +0.0f) と同じ結果を返します。is +0.0f while (-0.0f * +0.0f) は であるためfma(a, b, -0.0f)、 は -0.0f(a * b) と同等です。

9 に追加されました。

java.lang.StrictMath.fma(float, float, float)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象