GMRES法 — CAE用語解説

カテゴリ: 用語集 | 2026-01-15
CAE visualization for gmres - technical simulation diagram

GMRES法

🧑‍🎓

先生、CFDのソルバー設定で「線形ソルバー:GMRES」って出てくるんですけど、CG法と何が違うんですか?

定義

🧑‍🎓

GMRESの正式名称と、どういうアルゴリズムなのか教えてください。

🎓

Generalized Minimal RESidual法の略で、非対称行列にも使えるKrylov部分空間法の反復ソルバーだよ。CG法は対称正定値行列にしか使えないけど、GMRESはそういう制約がない。CFDのNavier-Stokes方程式を離散化すると非対称行列が出てくるから、GMRESの出番が多いんだ。

🧑‍🎓

なるほど、非対称でもOKなのが強みなんですね。でも反復数が増えると遅くならないんですか?

🎓

いいところに気づいたね。GMRESは反復ごとにKrylov基底を蓄積するからメモリがどんどん増えるんだ。そこでrestart(m)といって、m回反復したら基底をリセットする手法が標準的に使われてる。OpenFOAMだとGMRES(30)とかGMRES(50)みたいに設定するでしょ。

数値解法における役割

🧑‍🎓

restartの回数を増やせば必ず収束が良くなるんですか?

🎓

理論上はそうだけど、実際にはメモリが足りなくなるし、計算コストも増える。実務ではrestart数を増やすより前処理(プリコンディショナー)を工夫した方が効果が大きいことが多いよ。ILU前処理とGMRESの組み合わせはCFDの定番だね。

🧑‍🎓

前処理が大事なんですね。収束しないときはまず前処理を見直せってことですか?

🎓

その通り。あとは行列の条件数が悪いケースだとGMRES単体では苦戦するから、メッシュ品質やスキームの見直しも含めてトータルで考えるのが実務のコツだよ。

関連用語

🧑‍🎓

GMRES法の周辺で知っておくべき用語を教えてください。

🎓

このあたりは押さえておきたいね。

  • LU分解
  • Cholesky分解
  • CG法
  • CG法
  • 前処理
  • 🧑‍🎓

    CG法との使い分けがクリアになりました。まずはOpenFOAMの設定で前処理を変えて収束の違いを試してみます。

    🎓

    いいね。残差の収束履歴をログで確認しながらやると、ソルバーの挙動が手に取るようにわかるようになるよ。

    CAE用語の正確な理解は、チーム内のコミュニケーションの基盤です。 — Project NovaSolverは実務者の学習支援も視野に入れています。

    GMRES法の実務で感じる課題を教えてください

    Project NovaSolverは、CAEエンジニアが日々直面する課題——セットアップの煩雑さ、計算コスト、結果の解釈——の解決を目指しています。あなたの実務経験が、より良いツール開発の原動力になります。

    お問い合わせ(準備中)
    この記事の評価
    ご回答ありがとうございます!
    参考に
    なった
    もっと
    詳しく
    誤りを
    報告
    参考になった
    0
    もっと詳しく
    0
    誤りを報告
    0
    Written by NovaSolver Contributors
    Anonymous Engineers & AI — サイトマップ
    プロフィールを見る