Scilabで乱数の生成

Scilabで楽しむ確率論(PDF)に倣って乱数を使ったモンテカルロ法を勉強します。


004_2013092414520065a.png
Fig.1: 一様分布のばらつきとヒストグラム。



これまでたくさんの常微分方程式タグの付いたエントリで微分方程式による物理現象のモデル化(PDF)の計算をScilabで行ってきました。
次の章からは統計熱力学を扱うことになるのですが、ねがてぃぶろぐではその前にScilabでの乱数の使い方を勉強するためにScilabで楽しむ確率論(PDF)に行こうと思います。

一様分布の乱数


シミュレーションや数値計算に乱数を使う方法を総じてモンテカルロ法と呼びます。回路シミュレータLTspiceにも乱数を使ったモンテカルロ解析が実装されているのでした(参考:LTspiceでモンテカルロ解析)。
LTspiceモンテカルロ解析の定数分布 その1ではLTspiceのMC関数で使われる乱数の分布を調べました。

Scilabで乱数を使うにはrandを使います。

plot(rand(1,10000));


とすると、乱数がプロットされます。


001_201309241451268ad.png
Fig.2: 横軸が繰り返し番号で縦軸が発生された乱数の値。


グラフより0から1までの値が無秩序に並んでいることが分かります。

次にhistplotを使ってヒストグラムを書きます。LTspiceのときは回りくどい方法を使った記憶がありますが、Scilabでは簡単にプロットできます。

histplot(100,rand(1,10000));



002_20130924145201cc4.png
Fig.3: 一様乱数のヒストグラム


乱数が一様分布であることが一目で分かります。

三角分布の乱数


一様分布を加減算すると三角分布になるのでした。(参考:LTspiceモンテカルロ解析の定数分布 その6)

Scilabでも同じ計算をやってみます。

clear;

// 三角分布の発生
X = 0.5 * (rand(1,10000) + rand(1,10000));

// グラフのプロット
subplot(2,1,1);
plot(X);
// ヒストグラム
subplot(2,1,2);
histplot(100,X);



003_201309241452005d3.png
Fig.4: 三角分布


確かに三角分布が得られました。

関連エントリ




参考URL




付録


このエントリで使用したScilab用のシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。(参考:ねがてぃぶろぐの付録)


参考文献/使用機器




フィードバック



にほんブログ村 その他趣味ブログ 電子工作へ

 ↑ 電子工作ブログランキング参加中です。1クリックお願いします。


コメント・トラックバックも歓迎です。 ↓      


 ↓ この記事が面白かった方は「拍手」をお願いします。


tag: Scilab モンテカルロ解析 乱数 ヒストグラム確率論 

comment

Secret

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoC強磁性OPアンプPICCPAecaljモンテカルロ解析常微分方程式odeトランジスタ状態密度DOSインターフェース定電流PDS5022スイッチング回路半導体シェルスクリプト乱数レベルシフト分散関係HP6632AI2C可変抵抗トランジスタ技術ブレッドボード温度解析R6452A反強磁性確率論バンドギャップセミナー数値積分熱設計非線形方程式ソルババンド構造絶縁偏微分方程式ISO-I2CLM358マフィンティン半径フォトカプラシュミットトリガカオスLED三端子レギュレータGW近似A/Dコンバータ発振回路PC817C直流動作点解析USBTL431数値微分アナログスイッチカレントミラー74HC4053サーボ量子力学単振り子チョッパアンプ補間2ちゃんねる開発環境bzqltyFFT電子負荷LDAイジング模型BSch基本並進ベクトルブラべ格子パラメトリック解析標準ロジックアセンブラ繰り返し六方最密充填構造SMPコバルトewidthFET仮想結晶近似QSGW不規則合金VCAMaximaGGA熱伝導cygwinスレーターポーリング曲線キュリー温度スイッチト・キャパシタ失敗談ランダムウォークgfortran抵抗相対論位相図スピン軌道相互作用VESTA状態方程式TLP621ラプラス方程式TLP552条件分岐NE555LM555TLP521マントル詰め回路MCUテスタFXA-7020ZR三角波過渡解析ガイガー管自動計測QNAPUPSWriter509ダイヤモンドデータロガー格子比熱熱力学起電力awkブラウン運動スーパーセルUbuntu差し込みグラフ第一原理計算フェルミ面fsolveCIFxcrysden最大値最小値ubuntu最適化平均場近似OpenMP井戸型ポテンシャル固有値問題シュレディンガー方程式TeX2SC1815結晶磁気異方性OPA2277フラクタルFSM固定スピンモーメントc/a非線型方程式ソルバgnuplot全エネルギーfcc初期値マンデルブロ集合縮退正規分布interp1ウィグナーザイツ胞L10構造multiplotフィルタ面心立方構造PGAハーフメタル二相共存ZnOウルツ鉱構造BaOSIC重積分磁気モーメント電荷密度化学反応クーロン散乱岩塩構造CapSenseノコギリ波デバイ模型キーボード半金属フォノンquantumESPRESSOルチル構造スワップ領域リジッドバンド模型edelt合金Realforce軸ラベルグラフの分割凡例線種シンボルMAS830LCK1026LMC662PIC16F785トランス関数フィッティングトラックボールPC等価回路モデルヒストグラムパラメータ・モデル不規則局所モーメント最小二乗法TS-112TS-110直流解析ExcelGimp円周率片対数グラフ両対数グラフspecx.f疎行列三次元ifort文字列不純物問題P-10等高線ジバニャン方程式ヒストグラム確率論マテリアルデザイン入出力境界条件陰解法AACircuit熱拡散方程式HiLAPWMBEEAGLE連立一次方程式ナイキスト線図負帰還安定性Crank-Nicolson法日本語

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ