タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

randomとcに関するnilabのブックマーク (2)

  • 2010 November 24

    正規乱数を発生させるための手法の一つ。 なんでボックスミューラー使うの?普通の方法じゃダメなの? 1つの正規乱数あたり12回もの一様乱数生成を要するこの方法より、1つの正規乱数あたり1回の一様乱数生成で済むボックス=ミューラー法を用いた方が、一般的によく知られた多くの擬似乱数生成器との組み合わせにおいては高速である。 - Wikipedia「乱数列」より だそうです。 以下,(自分にとって分かりやすく実用的な)C言語プログラム ・必要なライブラリ stdio.h, stdlib.h, math.h, time.h ・ソースコード(関数) 以下の入力から正規乱数を返す. mean:平均 sigma:分散 ちなみに標準正規分布であれば平均0,分散1 double Box_Muller(double mean, double sigma) { double x1,x2; double pi =

    nilab
    nilab 2011/10/26
    ボックスミューラー法 (Box Muller Method) : シンプルなサンプル
  • C言語(サンプルプログラム)

    正規乱数の発生・統計・度数分布 目次 正規乱数の発生(ボックスミュラー法) generate.c 統計(平均・分散・標準偏差・サンプル数) stat.c 度数分布(*によるプロット) splot.c 正規乱数の発生(ボックスミュラー法) generate.c /* Box-Muller method */ #include #include #include #define PI 3.141592653589793 int main( int argc, char *argv[] ) { int i; int n = 0; double m = 0.0; double s = 0.0; double u1 = 0.0; double u2 = 0.0; double g1 = 0.0; double g2 = 0.0; double r1; double r2; if( argc

    nilab
    nilab 2011/10/26
    C言語(サンプルプログラム) : 正規乱数の発生・統計・度数分布 : 正規乱数の発生(ボックスミュラー法) : 統計(平均・分散・標準偏差・サンプル数) : 度数分布(*によるプロット)
  • 1