シミュレーション精度の基礎<br>適切なモデル精度とは

シミュレーション精度の基礎
適切なモデル精度とは

はじめに

「モデルは細かければ細かいほど良い」

「半導体メーカの素子モデルを使えば間違いない」

本当でしょうか?
回路シミュレーションを始めたばかりのエンジニアの多くが、この考え方に引きずられます。

寄生容量も細かいインダクタンスも、並列接続された回路図通りのたくさんのコンデンサも、
「全部入れた方が正確だろう」と思い込んでしまいがちです。

しかし、細かさは“正確さ”を保証しません。
全部入りのモデルは目的を見失うこともあるのです。

一方で、精度を目的に合わせて適切なレベルにできると、状況は大きく変わります。

重要なのは、「解析する目的に合わせて、モデルの精度を最適なレベルに設定すること」です。

適切な精度を理解していれば、
必要な現象だけを表現し、不要な複雑さを排除した“ちょうどよいモデル”
を作れるようになります。

モデル精度とは

モデル精度とは、“解析目的に対して適切な抽象度で作られているかどうか”です。
モデルを細かくしすぎても、粗すぎても意味のある結果にはなりません。

まずは例として、目的別で大まかにモデルの精度を示します。

目的含めたい要素省略できる要素コメント
回路動作確認
制御確認


・基本的な回路要素
・理想スイッチングの動作、ダイオードの動作
・遅れ要素
・高周波寄生成分
・スイッチング非線形性・応答に影響しない微小寄生

・制御応答・過渡の大枠を見るのが目的。
・詳細な寄生は不要で、むしろ計算を遅くするだけ。理想素子が有効。


EMC
スパイク
リンギング評価




・配線寄生L、パッケージ寄生
・素子の容量(Coss, Crss, Cossの電圧依存)
・接地インピーダンス・浮遊容量、寄生結合

・制御機能(条件による)
・スイッチング非線形性(条件による)




・高周波現象を見るため、寄生は必須。
・理想スイッチの場合、すべての高周波成分を含むため、条件によっては非線形な詳細スイッチは省略できることも。




損失解析
(特にスイッチング損)



・Cossの非線形性
・Ciss, Crssの非線形性
・立ち上がり/立ち下がりの非線形モデル
・配線寄生(場合による)
・高周波EMC寄生(損失目的では不要なことも)
・制御機能(条件による)


・損失はエネルギーの積分なので、スイッチング過渡の形がそのまま結果に直結。
・非線形・時間依存モデルが必須。



このように、目的に応じたモデルの粒度があり、細かければよいというわけではありません。
例えば、

  • 制御確認なのに寄生を全部入れる → 不要、シミュレーション速度低下
  • EMC評価なのに寄生なし → 意味がない
  • 損失解析なのに理想スイッチ → スイッチング損失が出ない

ということになります。

全部入りモデルを作らないということが、モデリングではとても大切です。

目的別のモデルを作成し、目的の波形の部分だけをシミュレーションすることで、実務的に効率的なシミュレーション環境を構築することが可能です。

解析時間との関係

モデル精度はシミュレーション精度を決める重要な要素であると同時に、解析時間(シミュレーション速度)にも強い相関があります。

実務では、モデルを目的以上に詳細にしてしまうと、

  • シミュレーションが極端に遅くなる
  • 計算が収束せず停止する
  • 高周波現象が目的外なのにソルバが追跡し続ける
  • モデルが複雑化し、数値的に不安定になる

といった典型的な問題が発生します。

結論として、
モデル精度を上げるほど、回路要素数・非線形性・高周波成分が増え、
それに応じて解析時間も確実に増える。

このトレードオフを理解しておかないと、
「正しくモデリングしたつもりなのに時間だけかかる」という状況に陥ります。

結果が正しく表示されない

実務の現場では、
モデル精度を上げたのに、解析結果がおかしいということが起こります。

シミュレーションが思い通りに動かない、結果が不自然、波形が実機と合わない——。

こうしたトラブルは、モデルやパラメータの設定ミスだけでなく、 “モデル精度と計算精度の不整合” が原因で起こることが非常に多くあります。

これはとても気づきにくいうえに、解決がとても難しい問題です。

一般的なシミュレータでは「解析条件設定」がボトルネックになる

一般的なシミュレータでは、多くの場合

  • 最大刻み幅
  • 収束条件
  • 積分法 

といった数値計算パラメータをユーザーが自分で調整する必要があります。

しかし、これらは 高度な数値解析知識と回路知識の両方 を要求します。
結果として、

  • 遅い
  • 止まる
  • 動いても正しくない
  • そもそも“何が原因か分からない”

という典型的な実務トラブルが起こります。

Scideam は「モデル精度に応じた計算精度」を自動で最適化する

ユーザーは、モデルやパラメータを変更した場合、
計算精度(ステップ幅・積分法・収束条件)も調整すべきです。

しかしながら、現実的にはその作業が追いつきません。

Scideam では、

  • 回路構造
  • 含まれる寄生
  • スイッチング速度

などなどを、内部アルゴリズムが解析し、
モデル精度に応じた計算精度を自動決定します。

そのためユーザーは、

  • モデル精度
  • パラメータ

に集中するだけでよく、最も難しい計算精度のチューニングを意識する必要がありません。

是非、以下のブログも参考にしてください。

まとめ

シミュレーションを正しく、効率よく進めるために最も重要なのは、“目的に応じて適切なモデル精度を選ぶ” という考え方です。
モデル精度は「細かさ」ではなく、
その解析目的に対して適切な抽象度になっているかどうか で決まります。

  • 動作確認であれば、理想モデルや簡易モデルで十分
  • 損失解析であれば、非線形性や電圧依存性が必要
  • EMI解析では、高周波寄生やレイアウト起因の要素まで必要

このように、解析したい目的に応じて、モデル精度は変わるべき ものです。

また、モデルやパラメータを変更すると、
計算精度も同時に調整する必要があり、ここがシミュレーションの難しさの原因になります。

目的を明確にし、その目的に適したモデル精度を選ぶこと。

この考え方を身につけることで、
シミュレーションは「難しい作業」から「設計を支援する強力なツール」へと変わります。

今回紹介した “目的に応じたモデル精度の設定” を、ぜひ実際のシミュレーションでも試してみてください。

Scideamは無償版、フルパッケージの試用版を用意しております。

▼ 関連投稿 ーシミュレーション精度の基礎ー

投稿者:

中村 創一郎