LTspiceモンテカルロ解析の定数分布 その6

一様分布の乱数を二つ加算すると三角分布の乱数が得られることが知られています。
三角分布は、一様分布よりも現実に近い分布の形を持ちながら、得られる乱数の最大値・最小値を保証することの出来る分布です。
今回は、LTspiceで三角分布を用いたモンテカルロ解析を行う方法を書きます。

001_20090520011808.png 002_20090520011808.png 003_20090520011808.png


○分布関数と公称誤差範囲
LTspiceモンテカルロ解析の定数分布 その5では、正規分布関数によるモンテカルロシミュレーションのモデルを定義するに際して、公称誤差範囲が3σとなるモデルを考えました。
このモデルは、分布の形が現実の部品の分布に近い山なりになると言う利点がありますが、一方で、0.26%の確率で現実の部品ではありえない公称誤差範囲外の値をとるという問題点があります。

今回は、分布の形が直線的になる問題点がある一方で、すべての部品定数が公称誤差範囲内になる分布として、三角分布を採用したモンテカルロ解析を行います。

○LTspiceシミュレーションとヒストグラム
一様分布の乱数を加算すると、三角分布となります。
これを利用して、三角関数のモンテカルロ解析関数を定義しました。

.func tmc(val,tol){val+(flat(val*tol/2)-flat(val*tol/2))}

以下にシミュレーション結果とヒストグラムを示します。


001_20090520011808.png
fig.1: 三角分布と正規分布のモンテカルロ解析のスケマティック

002_20090520011808.png
fig.2: 抵抗のばらつき

003_20090520011808.png
fig.3: 三角分布のヒストグラム(赤) 正規分布のヒストグラム(緑) 三角分布の確率密度関数(紫) 正規分布の確率密度関数(青)


三角分布は山の傾斜が直線的であるという欠点を持ちますが、すべての部品定数が公称誤差範囲内に収まることが確認できました。

○関連エントリ


○付録
このエントリで使用したLTspiceのシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。


○フィードバック

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

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


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


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

tag: LTspice モンテカルロ解析 

LTspiceモンテカルロ解析の定数分布 その5

LTspiceでは「.func」を用いて関数の定義が出来ます。
標準のmc関数に倣い、「3σ=公称誤差」となる正規分布のモンテカルロ解析関数gmc(val,tol)を定義し、シミュレーションを行いました。

001_20090519115433.png 003_20090519115433.png


○公称誤差からσを決める
LTspiceモンテカルロ解析の定数分布 その1、その2、その3、その4と現実の部品からモデルを作ってシミュレーションをする方法を書きました。しかし、部品のばらつきの分布を実測することは手間がかかります。また、ある時刻・温度条件で測定した値も経年変化・温度変化に対して変わってしまう値です。

正規分布では、±3σ以内に分布の99.74%が収まると言うことが知られています。
そこで、部品定数の分布の形を正規分布であると仮定し、さらに、公称誤差が3σとなる正規分布のモンテカルロ関数をgmc(val,tol)として定義します。使い方はLTspice標準のmc(val,tol)と同じです。

○関数の定義
LTspiceでは、.funcというSPICE Directiveを利用することで関数を定義できます。

平均μ=val 3σ=val*tol なので σ=val*tol/3

となります。
したがって

.func gmc(val,tol){val+gauss(tol*val/3)

と定義しました。

○LTspiceシミュレーションとヒストグラム
以下にLTspiceでのシミュレーションとヒストグラムを示します。
抵抗は10kΩ±5%を想定し、モンテカルロシミュレーションの繰り返し回数は1000回としました。


001_20090519115433.png
fig.1: スケマティック

002_20090519115455.png
fig.2: 緑がgmc関数、青がmc関数によるモンテカルロシミュレーション

003_20090519115433.png
fig.3: 赤がgmc関数、緑がmc関数のヒストグラム。青は正規分布の確率密度関数の曲線。


○問題点
3σを公称誤差とあわせたモデルは、温度変化・経年変化を含む現実の定数のばらつきに対して、かなり現実に近いだろうと予想されるシミュレーションを行うことが出来ます。
しかしながら、3σ以内に99.74%が収まると言うことは、逆に0.26%は公称誤差範囲内に収まらないと言うことでもあります。


004_20090519115455.png
fig.4: 紫の円で囲ったものは公称誤差範囲外


今回の1000回の繰り返しでも、公称誤差範囲内に収まらない値が3点見られました。
fig.4の紫の円で囲った点です。

○関連エントリ


○付録
このエントリで使用したLTspiceのシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。


○電子工作ブログランキング参加中
にほんブログ村 その他趣味ブログ 電子工作へ
1クリックお願いします。

tag: LTspice モンテカルロ解析 

LM324/2902がたくさん出てきた・・・

部屋の掃除のついでに買い込んでおきながら使っていない電子部品の整理を始めました。
あっちこっちに散らばっている導電性スポンジに、あるわあるわLM324・・・

001_20090514013305.jpg



001_20090514013305.jpg


LM324は4回路入りのOPアンプICで、秋月電子通商では4個パック100円という低価格で売っています。

電源電圧も3Vから動作する単電源OPアンプである一方で、普通の両電源OPアンプと同等の耐圧を持っているのであらゆる用途に使いやすいです。その分、他の直流特性・交流特性はたいした事ないのですが、別にたいしたことなくても困らない用途がほとんどだというのが現状です。

そんなわけで、秋月に行くとなんとなく買ってしまうのですが、なかなか消費が追いつかず、たまってしまいました。
ちなみに、LM358やLM339も同様にたくさん出てきたことは秘密です。

○関連エントリ


○電子工作ブログランキング参加中
にほんブログ村 その他趣味ブログ 電子工作へ
1クリックお願いします。

tag: LM358 

LTspiceモンテカルロ解析の定数分布 その4

前回までにモデル化した秋月抵抗袋の誤差5%の10kΩ炭素皮膜抵抗のばらつきをLTspiceでモンテカルロ解析でシミュレーションしたV-I変換回路の歩留まりの見積もりに利用し、一様分布のシミュレーション結果と比較しました。

001_20090512010035.png 002_20090512010035.png


○シミュレーションと歩留まり
「LTspiceモンテカルロ解析の定数分布」というタイトルでこれまで3回エントリを書きました。一連のエントリを通じて取り組んできたテーマは、「現実の部品のばらつきに近い分布を持つモンテカルロ解析」です。それぞれの内容は以下のとおりでした。

その1:LTspice標準のモンテカルロ解析の分布をしらべる(一様分布)
その2:現実の抵抗の分布をしらべる(正規分布)
その3:LTspiceでの正規分布シミュレーション法(gauss関数)

今回は、その3で試したgauss関数でのモンテカルロ解析をLTspiceでモンテカルロ解析でシミュレーションしたインダクタンス計用のV-I変換回路に適用しました。

○V-I変換回路の歩留まり
LTspiceでモンテカルロ解析では秋月電子通商のデジタルインダクタンスメータキットの電圧電流変換回路のシミュレーションを行いました。抵抗値に関してモンテカルロ解析を行った結果、誤差5%品では組み合わせによって発振に至ることが分かりました。

今回は、これと同じ形式の回路に対してモンテカルロシミュレーションによって、歩留まりを見積もり、LTspice標準の一様分布モンテカルロ解析とガウス関数を用いた正規分布モンテカルロ解析で結果がどの程度異なるかを比較しました。


001_20090512010035.png
fig.1: MC関数(上) gauss関数(下)をそれぞれ用いたモンテカルロ解析のスケマティック

002_20090512010035.png
fig.2: 同グラフ


MC関数を使ったモンテカルロ解析では100回のうち4回発振していますが、gauss関数のほうは100回の繰り返しでは1回も発振していません。おそらく現実の回路もMC関数ほど悲観的な結果にはならないだろうと思います。

○関連エントリ


○参考URL


○付録
このエントリで使用したLTspiceのシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。


○電子工作ブログランキング参加中
にほんブログ村 その他趣味ブログ 電子工作へ
1クリックお願いします。

tag: LTspice モンテカルロ解析 

LTspiceモンテカルロ解析の定数分布 その3

LTspiceモンテカルロ解析の定数分布 その1その2を通じて、「現実の部品定数は正規分布であること」「LTspice標準のMC関数は一様分布であること」がわかりました。
今回は、LTspiceのモンテカルロシミュレーションをより現実の部品のばらつきに近づけるためにLTspice標準のガウス関数をもちいた正規分布のモンテカルロ解析を行い、得られたヒストグラムが現実のばらつきに近いものであることを確認しました。

001_20090506222543.png 002_20090506222543.png 003_20090506222543.png


○LTspiceで正規分布モンテカルロ解析
LTspiceモンテカルロ解析の定数分布 その1その2を通じて、「現実の部品定数は正規分布であること」「LTspice標準のMC関数は一様分布であること」がわかりました。
今回は、現実の部品の実測から求められた平均μと標準偏差σをgauss関数に適用して正規分布のモンテカルロ解析を行うこととします。

○LTspiceのgauss関数
LTspiceには標準でgauss関数が用意されています。引数はひとつで、標準偏差σです。
平均μ=0の正規分布関数です。

gauss(x)
Random number from Gaussian distribution with sigma of x.


_eq_001_20090506222553.png


LTspiceモンテカルロ解析の定数分布 その2で、秋月の10kΩ誤差5%カーボン皮膜抵抗98本の抵抗値の平均と標準偏差を測定しました。

μ=9903.27
σ=32.48

これらを代入すると、抵抗値は以下のようになります。


9903.27+gauss(32.48)


○LTspiceシミュレーション
上記のガウス関数を用いて、抵抗のばらつきのシミュレーションをしました。


001_20090506222543.png
fig.1: 抵抗のばらつきを調べるためのスケマティック

002_20090506222543.png
fig.2: 抵抗のばらつき


○ヒストグラム
OpenOffice.orgとgnuplotをもちいてLTspiceの結果からヒストグラムを描きました。


003_20090506222543.png
fig.3: 実測(赤) 正規分布関数(緑) LTspiceモンテカルロシミュレーション(青)


LTspiceモンテカルロ解析の定数分布 その2でかいた赤のラインと緑のラインに加えて、今回のLTspiceシミュレーションの結果を青のラインとして描画しました。

現実の抵抗のばらつき(赤)よりもシミュレーション(青)のほうが、きもちきれいな(?)形をしていますが、およそ現実の分布に近いモデル化が出来ているといえるでしょう。

○関連エントリ


○付録
このエントリで使用したLTspiceのシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。
gauss.txtはヒストグラムを描くためのデータです。一列目がLTspiceの出力データ、2列目と3列目が階級と度数です。



○電子工作ブログランキング参加中
にほんブログ村 その他趣味ブログ 電子工作へ
1クリックお願いします。

tag: LTspice モンテカルロ解析 

よくあるクリック募金

Happy Rice

よくあるクリック募金なんですけど、漢字の読み書きに関する選択問題が出て、正解したらお米が寄付されるというところが少し変わってます。

これ、最初は5級とかから始まって、とっても簡単なんですが、準1級あたりから即答できない問題が出てきて、1級で急に難しくなるという・・・。
寄付とか関係なく案外面白いです。

LTspiceモンテカルロ解析の定数分布 その2

LTspiceモンテカルロ解析の定数分布 その1では、LTspice標準のMC関数が一様分布のシミュレーションを行っているということを確認しました。
一方で、現実の抵抗などの定数分布は、一般に正規分布になっていることが知られています。今回は、10kΩの抵抗98本に対して抵抗値測定を行い、抵抗値のばらつきが正規分布に従っていることを確認しました。

001_20090506142046.png


○現実の部品の定数分布
LTspiceモンテカルロ解析の定数分布 その1では、LTspice標準のMC関数が一様分布のシミュレーションを行っているということを確認しました。
モンテカルロ解析は、部品定数のばらつきに起因する製品の歩留まりの見積もりなどに利用されます。この見積もりの精度を高めるためには、現実の部品定数の分布に近い分布関数を用いたシミュレーションが必要になります。

○測定
そこで、現実の抵抗器の抵抗値を測定し、その分布を調べました。

抵抗は秋月電子通商で購入したカーボン抵抗(炭素皮膜抵抗)1/4W 10KΩ(100本入)誤差5%を98本つかいました。(すでに2本使ってしまっていたので)

抵抗値測定には、MASTECH MAS830Lを20kΩレンジで行いました。
(Resolution:10Ω Accuracy:±0.8% of rdg ± 3 digits)

○結果
測定結果をOpenOffice.org Calcでヒストグラム化し、gnuplotでグラフ化しました。(fig.1)
横軸が階級で、縦軸が度数です。階級の幅はMAS830Lの分解能の10Ωとしました。


001_20090506142046.png
fig.1: 測定結果のヒストグラム(赤)と正規分布関数(緑)


グラフから以下のようなことが読み取れます。

  • 分布が山なりの形を成している
  • 山なりの中心が10kΩからずれている
  • 測定したすべての抵抗値が5%よりはるかによい誤差範囲に収まっている


○正規分布
結果から、分布が平坦な一様分布ではなく、山なりの形をしていることが分かりました。
一般的に、抵抗などの工業製品の部品定数は正規分布に従うとされています。

正規分布は以下の確率密度関数の形を持つ分布です。

_eq001.png


ここで、μが平均、σが標準偏差をあらわします。

翻って測定データについても、OpenOffice.orgをもちいて平均と標準偏差を求めました。AVERAGE関数で平均が、STDEVP関数で標準偏差がそれぞれ求められます。

μ=9903.27
σ=32.48

求められた平均と標準偏差から、測定した抵抗の分布関数を求めfig.1の緑のラインとして描画しました。グラフの高さは、赤の面積と緑の面積が等しくなるように規格化しました。

二つのグラフの比較から、秋月の抵抗袋の抵抗は、正規分布にそっていることが分かります。

○関連エントリ


○参考URL


○使用機器



○付録
このエントリで使用したLTspiceのシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。

実測した抵抗値データを添付します。1列目が抵抗値の生データ、2列目と3列目が階級の幅と度数です。


○電子工作ブログランキング参加中
にほんブログ村 その他趣味ブログ 電子工作へ
1クリックお願いします。

tag: LTspice モンテカルロ解析 

LTspiceモンテカルロ解析の定数分布 その1

LTspiceは標準でモンテカルロ解析を行うためのMC関数を持っています。製品の歩留まりなどを予測する場合、モンテカルロシミュレーションに使われる乱数の分布が結果に大きく影響します。
今回は、LTspiceのMC関数が一様分布であることをOpenOffice.orggnuplotをもちいて確認しました。

【2009/05/06】抵抗値を1kΩから10kΩに変更しました。

001_20090505021526.png 002_20090505021527.png 003_20090505021527.png


○モンテカルロ解析と分布関数
LTspiecはモンテカルロシミュレーションを行うためのMC関数を持っています。
SPICEにおけるモンテカルロ解析は「部品のばらつきによる特性変化や歩留まりなどがどのようになるか予測する」ために用いられます。

たとえば抵抗値に関して5%のものと1%のもので、回路の挙動がどのように変化するかを調べたりすることが出来ます。(例:LTspiceでモンテカルロ解析)

具体的には、その部品定数を、誤差範囲に収まるように乱数を用いてばらつかせるということを繰り返し行っています。
実際の部品は何らかの分布に基づいたばらつきを持っています。これに対してLTspiceのMC関数では、ばらつき方として一様分布を採用しているとされています。

MC(x,y)
A random number between x*(1+y) and x*(1-y) with uniform distribution.


今回は、LTspiceのMC関数が本当に一様分布であることをOpenOffice.orggnuplotをもちいて確認しました。

○LTspiceでのモンテカルロシミュレーション
10kΩの抵抗に対して誤差5%をわりふるモンテカルロ解析を1万回繰り返しました。
回路自体に意味はありません。


001_20090505021526.png
fig.1: スケマティック

002_20090505021527.png
fig.2: 横軸がX(繰り返し番号)、縦軸が抵抗値


グラフの横軸がステップの番号で、縦軸がその試行での抵抗値です。9.5-10.5kΩのあいだでばらついていることは読み取れますが、どのような分布であるかまではよく分かりません。

○OpenOffice.orgとgnuplotでグラフ化
前述のLTspiceシミュレーションのグラフがアクティブな状態で[File]→[Export]→[OK]とやれば、選択されたTraceがエクスポートされます。
このデータをOpenOffice.orgのFREQUENCY関数で処理した後、gnuplotでグラフ化しました。


003_20090505021527.png
fig.3: MC関数の乱数分布を示すヒストグラム


確かに一様分布になっていることが確認できます。

○関連エントリ


○参考URL


○付録
このエントリで使用したLTspiceのシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。


○電子工作ブログランキング参加中
にほんブログ村 その他趣味ブログ 電子工作へ
1クリックお願いします。

tag: LTspice モンテカルロ解析 

リンク集作りました

電子工作関連のリンク集をサイドバーの一番下に追加しました。
本当は紹介したいページがもっとたくさんあるのですが・・・

とりあえず「電子工作メイン」で「ブログ」で「更新頻度が高く」て「私がよく行く」ところだけ。

ブログに限定したのは、そうしないと数があまりにも増えすぎてしまうからです。
まあ、必要なリンクはエントリの中でエントリに対して行うということで。
FC2カウンター
カテゴリ
ユーザータグ

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

最新コメント
リンク

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