6

std <random>を使用して、さまざまな確率分布の乱数を生成できることは素晴らしいことです...さて、標準ライブラリを使用して、分布とそのパラメータが与えられた一連の数値の確率を計算する方法はありますか?

私は自分で確率密度関数と質量関数をコーディングできることを認識していますが (単一の確率変数については以下の例を参照)、できれば標準ライブラリを使用したいと思います。

long double exponential_pdf(long double x, long double rate) {

    if ( x < 0.0 ) {
        return 0.0;
    }
    if ( rate < 0.0 ) {
        return NOT_A_NUMBER;
    }
    auto    pdf = rate * exp( - rate * x);
    return  pdf;
}
4

3 に答える 3

-1

@dudu

どのコンパイラを使用しているかはわかりませんが、Microsoft Visual C++ コンパイラは long double プリミティブ型をサポートしていないことに注意してください。このようなサポートにより、コンパイラは x87 浮動小数点コードを発行するように強制されます。

于 2015-09-15T15:52:56.683 に答える