rStats.js v1.3.0
    検索インデックスを準備しています...

    Function besselI

    • 第 1 種変形ベッセル関数です。R の besselI(x, nu, expon.scaled = FALSE) と同等です。単一の数値を受け取ります。

      Parameters

      • x: number

        x >= 0 の引数です (負の x では NaN)。

      • nu: number

        次数で、任意の実数です。nu < 0 の場合、I(x, -nu) = I(x, nu) + 2/pi sin(pi nu) K(x, nu) となります (A&S 9.6.2、R と同じく)。

      • options: BesselOptions = {}

        exponScaled (BesselOptions を参照)。

      戻り値 number

      I_nu(x)。exponScaled の場合は exp(-x) I_nu(x) です。

      次数が 1000 を超える場合、倍精度の範囲を大きく外れる結果はただちに返されます (Infinity または 0 で、その対数の境界によって決まります)。それ以外では、時間は次数とともに増えます (約 nu 手順の漸化式)。nu = 1e8 では数秒かかります。2^28 手順を超える場合、および besselI で連分数が収束しない場合 (x が約 5e10 を超える場合) には、Debye の一様漸近展開を使います。RangeError は、指数 nu eta - x が 2^26 を超える項から作られ、かつ結果が範囲内にある場合 (x = 0.66 nu 付近で、指数スケールなし) に限って投げられます。

      besselI(1, 0);                             // 1.2660658777520086
      besselI(1000, 2, { exponScaled: true }); // 0.012592018595377398