計測エンジニアリングシステム株式会社

SUPPORT 技術サポート/FAQ
キーワード・条件で検索

【FAQ】計算エラーが出た時のデバッグ

計算エラーが出た時、どのように対応したらよいでしょうか。エラーメッセージはよくわからないのですが。

計算エラーが出た際に、先ずは以下の所からご確認頂けたらと思います。

①数値モデルの妥当性。
数値モデルはジオメトリ、物理方程式(支配方程式、境界条件及び初期条件、連成関係)、材料物性、メッシュ、ソルバー設定に分解できます。これらの設定項目を順番に検証するほうがよいと思います。経験上、特に境界条件設定の不備によるエラーが多いようで、境界条件などは現実問題の条件を反映しているかどうかを確認したほうがよいです。
例えば、変位や回転自由度の拘束が不足する構造モデルの定常計算や、熱源が設定した発熱体にデフォルトの断熱条件を利用した定常計算など、解が存在しない或は解が一意に決められない、いわゆる不良設定問題(悪条件問題、ill-posed problem)は、計算の収束が難しくなります。

図1 構造拘束不足の自由熱膨張問題:収束エラー

図2 構造に拘束追加した熱膨張問題:計算収束

②数値モデルとして妥当ですが、現実を反映する境界条件や物性値などは計算上厳しい時があります。
例えば構造解析に接触が含まれていることや、非線形構造材料を利用していること、熱流体問題で物性が温度依存になっていること、入力条件が急変化のパルス波形になっていること、非線形性の強い問題は計算の収束性がよくないモデルになります。
このような問題をモデリングする際に、定常問題の場合、補助スイープを利用して非線形項や入力条件を、計算しやすい値から徐々に目的値に変更させながら計算することが考えられます。時間依存問題の場合、収束性を改善する方法として、タイムステップを細かくとることや、ステップ関数を利用して急変化の入力条件をある時間間隔の中で徐々に収束しやすい値から目標値まで変化させながら計算することがあげられます。他にはメッシュを調整することや、ソルバー調整することなども考えられます。

図3 定常ステップの補助スイープ設定

図4 時間依存ソルバーの時間ステッピング設定

関連情報

COMSOLウエブには、計算収束性の改善や時間依存問題のタイムステッピング設定などについてのブログ及びナレッジベースが多数存在していますので、ご参照頂けたらと思います。
COMSOLブログ:https://www.comsol.jp/blogs
COMSOLナレッジベース:https://www.comsol.jp/support/knowledgebase
エラーメッセージに関連するナレッジベース:https://www.comsol.jp/support/knowledgebase/browse/12

キーワードで検索

条件で検索

物理分野

カテゴリ

機能