補間 — CAE用語解説
補間
先生、FEMで補間ってどういう役割を果たしているんですか?
理論と物理
補間の基本概念
CAEでよく出てくる「補間」って、具体的に何をしているんですか? 単に点と点を滑らかにつなぐだけなら、グラフ描画ソフトでもできますよね。
本質的な違いは、物理量の「保存性」にあります。例えば、有限要素法で要素内の変位
形状関数の次数(1次、2次)で何が変わるんですか? 高次にすれば常に精度が上がるんですか?
必ずしもそうではありません。1次要素(線形補間)はひずみが要素内で一定になります。一方、2次要素はひずみを線形に変化させられます。しかし、応力集中部で急激な変化がある場合、高次要素を使っても十分な節点密度がなければギブス現象(振動)が発生し、精度が悪化することがあります。実務では、塑性変形のような大変形解析では1次要素の方が収束性が良い場合も多く、AbaqusのExplicitソルバーではデフォルトで1次要素が推奨されます。
「アイソパラメトリック要素」という言葉を聞きます。これは補間とどう関係しているんですか?
これがCAEにおける補間の核心的な応用です。要素の「幾何形状(座標)」と「求めたい物理量(変位など)」を「同じ」形状関数で補間する要素を指します。数式で書くと、座標
数値解法と実装
FEMにおける離散化と補間
要素の積分(ガウス積分)を行う時、なぜわざわざ「自然座標系」に変換して計算するんですか? そのまま実座標で積分すればいいのでは?
形状関数を定義し、積分を簡単にするためです。例えば2次元4節点四角形要素の場合、自然座標
その「ヤコビアン」は補間の精度に影響するんですか?
大きく影響します。ヤコビアンは自然座標から実座標への変換の「伸び縮み」を表します。要素が極端に歪んでいると(アスペクト比が100以上など)、ヤコビアンの行列式が極端に大きくなったり小さくなったりします。これにより、数値積分の精度が著しく低下し、剛性マトリクスの計算誤差につながります。このため、メッシャーは要素の歪みをチェックする指標として、ヤコビアンの値を監視します。Ansysのメッシュ品質チェックでは「Jacobian Ratio」が警告項目の一つです。
CFDではFEMとは違う補間が出てくると聞きました。例えば「風上差分」とは?
これは有限体積法(FVM)における、セル界面での物理量の補間スキームです。中心差分(線形補間)では、流速が高いと数値振動が発生します。風上差分は、流れの「上流」側のセル中心値を使って界面値を補間する方法です。例えば、界面eでの値
実践ガイド
メッシュと補間のワークフロー
実際の解析で「ここはメッシュを細かく」と判断する基準は、補間の観点から言うと何ですか?
「物理量の勾配が急激に変化する領域」です。補間関数(形状関数)は多項式なので、急激な変化を追従する能力に限界があります。具体的には、応力集中部(穴の縁、角部)、衝撃波の前面(CFD)、熱源近傍(熱伝導)などです。一つの指標は、隣接要素間の結果(応力など)の差が大きいかどうかです。Ansys Workbenchでは「Solution」→「Worksheet」で要素解の最大最小差を確認できます。差が20%以上ある領域は、メッシュを細分化する候補です。
メッシュを細かくすると計算時間が増えます。要素次数を上げるのと、どちらが効率的ですか?
問題の性質によります。滑らかな解が期待できる領域(遠方場、一様応力場)では、要素次数を上げる(h-refinementよりp-refinement)方が、少ない自由度で指数関数的に誤差を減らせます。しかし、特異点(き裂先端など)近傍では、次数を上げても誤差収束率は改善せず、メッシュを細かくする(h-refinement)方が有効です。実務ではハイブリッドもあり、Abaqusではき裂先端に特異要素(中間節点を1/4点に移動させた要素)を使い、その周囲を2次要素でモデル化します。
異なるメッシュサイズのパーツを接合する時、「接触」と「剛体結合」では補間の扱いがどう違うんですか?
根本的に異なります。「剛体結合(RBE2やMPC)」は、従属節点の変位を主節点の変位で「厳密に」補間(多点拘束)します。メッシュが一致していなくても強制的に変位を一致させますが、局所的に不自然な応力が発生することがあります。一方「接触」は、面同士が離れる・貫通するを許さない「条件」を課すだけで、変位の補間関係は定義しません。従って、接触面のメッシュサイズが大きく異なると、細かいメッシュ側の節点が粗いメッシュの要素面に「めり込む」ことを防げず、接触圧力の計算が不正確になることがあります。このため、接触面のメッシュサイズはある程度揃えるのがベストプラクティスです。
ソフトウェア比較
各ソルバーにおける補間の特徴
Ansys、Abaqus、COMSOLで、補間関数(要素タイプ)の選択肢や呼び方に違いはありますか?
大きな違いがあります。Ansys Mechanicalでは「Solid186」は3次元20節点2次要素、「Solid185」は8節点1次要素です。Abaqusでは「C3D20R」が20節点2次要素(Rは低減積分)、「C3D8R」が8節点1次要素です。COMSOLは「物理場に最適化された要素」を標榜しており、ユーザーが形状関数の次数を直接選ぶのではなく、「要素次数:二次」「幾何次数:二次」などの形で、物理量と幾何の補間次数を別々に設定できます。これは、電磁界解析などで特に効果的です。
「低減積分要素」というのをよく見ます。補間には関係ないんですか?
補間関数そのものは同じですが、その関数を「どの精度で積分するか」が関係します。完全積分要素は、剛性マトリクスを計算する際、必要な積分点の数を全て使います。一方、低減積分要素はそれより少ない積分点を使います。例えばAbaqusのC3D8(1次完全積分)は2x2x2=8点、C3D8R(1次低減積分)は1点だけです。これにより計算コストは下がりますが、要素が変形しない「アワーモード」というゼロエネルギー変形が発生するリスクがあります。この対策として、AnsysやAbaqusは「アワーモード制御」を自動で追加します。
CFDソフトでは、Ansys FluentとSTAR-CCM+で補間スキームの扱いは違いますか?
基本的な考え方は同じFVMですが、設定の哲学が異なります。Fluentでは、ユーザーが対流項、拡散項などに対して、1次風上、2次風上、QUICK、MUSCLなど多数のスキームから明示的に選択します。デフォルトは「2次風上」が多いです。一方、STAR-CCM+は「多項式補間」を基本とし、その次数(1次、2次)を選択する方式です。また、STAR-CCM+は「ブレンドファクター」という、1次精度と2次精度を混合するパラメータを自動調整する機能があり、計算の安定性と精度のバランスを取りやすい設計になっています。
トラブルシューティング
補間に関連するよくあるエラー
解析を実行したら「Jacobian is negative or zero」というエラーが出ました。補間とどう関係しているんですか?
これは、アイソパラメトリック補間の根幹を揺るがすエラーです。要素の歪みが極端で、自然座標から実座標への写像が「折り返し」を起こしている状態です。数式的にはヤコビアンの行列式が0以下になっています。具体的には、メッシュ生成時に要素が「くの字」に折れ曲がっていたり、大変形解析で要素が過度に変形して「つぶれた」場合に発生します。対策は、最初のメッシュ品質を改善する(アスペクト比を5以下に)、大変形解析では要素タイプを1次要素や減積分要素に変える、あるいはAbaqus/Explicitのようなラグランジュ・オイラー式ソルバーを使うことです。
応力のコンター図が要素内で「まだら」や「段差」になってしまいます。これは補間の問題ですか?
はい、典型的な「要素解」と「節点解」の違いによる現象です。有限要素法では、応力やひずみは積分点でまず計算されます(要素解)。これを節点まで「平滑化」して表示するのが節点解です。まだら模様は、低減積分要素(積分点が少ない)で特に顕著です。Ansysでは「AVPRIN」コマンド、Abaqusでは「平均化」オプションで制御できます。しかし、材料不連続部や幾何的不連続部では、無理に平滑化すると物理的に誤った結果を見ることになるので注意が必要です。実務では、積分点での生の応力値を確認することを勧めます。
CFDで「発散しました」となる原因の一つに「補間スキーム」とあります。なぜ風上差分より高次スキームの方が発散しやすいんですか?
高次スキーム(2次風上、中心差分など)は、補間に隣接するより遠いセルの値を使うため、「数値振動」を起こしやすいからです。これは、補間多項式の次数が上がると発生する「ルンゲ現象」に似ています。特に、流速や圧力の勾配が非常に大きい領域(衝撃波、せん断層)で、物理的に非現実的なオーバーシュートやアンダーシュートが生じ、それがソルバーの収束を妨げます。対策は、初期計算や複雑な流れでは1次風上で安定化させ、収束に近づいたらスキームを高次に切り替える「多重グリッド法」や、高次スキームに「フラックスリミッタ」を組み込んで振動を抑制する方法です。Fluentの「Bounded Second Order Upwind」はその一例です。
関連トピック
なった
詳しく
報告