MMS: 2次元弾性体 — トラブルシューティングガイド

カテゴリ: V&V | 2026-02-20
この記事は統合版に移行しました
より充実した内容を mms-elasticity-2d.html でご覧いただけます。
CAE visualization for mms elasticity 2d troubleshoot - technical simulation diagram
MMS: 2次元弾性体 — トラブルシューティングガイド

2次元弾性MMSの構成と壊れどころ

弾性体のMMSは、変位の製造解 \( \mathbf{u}_m(x,y) \) を選び、釣り合い式に代入して体積力ソースを導出します。

$$ \mathbf{b} = -\nabla\cdot\boldsymbol{\sigma}(\mathbf{u}_m), \qquad \boldsymbol{\sigma} = \mathbb{C} : \boldsymbol{\varepsilon}(\mathbf{u}_m) $$

境界条件も製造解から与えます:変位境界には \( \mathbf{u}_m \) を、トラクション境界には \( \mathbf{t} = \boldsymbol{\sigma}(\mathbf{u}_m)\cdot\mathbf{n} \) を。誤差ノルムは変位(\( L^2 \):次数 \( k+1 \))と応力・エネルギーノルム(次数 \( k \))で別々に評価します。熱伝導MMSとの違いは、①ベクトル場ゆえの成分間の取り違え、②弾性定式化の選択肢(平面応力/ひずみ)、③ロッキングという弾性特有の病理——の3点で、トラブルもこの3点に集中します。

症状1: 全体的に次数は出るが値が数%系統的にずれる

🙋

収束次数はきれいに2次なんですが、誤差の絶対値がいつまでも大きいというか、別の解に収束している気がして…。


🎓

「きれいに収束するのに違う答え」は、ソース項導出とソルバーの定式化不一致の典型サインだよ。2次元弾性で最頻出なのは平面応力と平面ひずみの取り違え——構成則の \( \mathbb{C} \) が違うから、SymPyで平面ひずみのσを導出してソルバーは平面応力で解けば、互いに矛盾のない「別の問題」を正確に解いてしまう。ヤング率・ポアソン比の定義(Eとνか、ラメのλとμか)も同じ罠がある。ソルバーのマニュアルにある構成則の式を、導出スクリプトにそのまま書き写すのが唯一の予防策だ。

症状2: トラクション境界を入れると次数が落ちる

切り分けの定石は「全周変位境界」でまず次数を出すこと。そこで合格なら内部の離散化とソース項は無罪で、トラクション境界の実装だけを単離して調べられます(MMS共通の境界切り分け術)。

症状3: ν→0.5で次数・精度が崩壊する(体積ロッキング)

ポアソン比を0.49、0.499と上げると、1次(および標準の低次)要素の変位解が急激に硬く・不正確になります。これはバグではなく非圧縮限界での体積ロッキングという定式化の限界で、MMSはこれを定量的に暴く最良の道具です。対応は2段階です。

  1. 診断として使う — ν=0.3では公称次数、ν=0.499で誤差が桁で悪化するなら、それは標準変位法の想定通りの挙動。「コードは正しい」ことの確認になる
  2. 対策済み定式化を検証する — B-bar・選択的低減積分・混合(u-p)要素・非適合要素などロッキングフリー定式化に切り替え、ν=0.4999でも次数が保たれることをMMSで実証する。これが「非圧縮に耐える」という主張の検証可能な形

同様に、細長い曲げ支配の製造解(薄い梁状領域+曲げ変形)を使うとせん断ロッキングも検出できます。MMSは「正しく解けるか」だけでなく「要素の病理がどの条件で発症するか」の系統試験としても使えるのです。

症状4: 導出は正しいのに次数が0.5〜1次分だけ足りない

体積力 \( \mathbf{b} \) の実装側の精度不足が典型です。①要素荷重の積分次数——空間変化の激しい体積力を既定の積分点数で等価節点力化すると、積分誤差が離散化誤差を上回る(対策:積分次数を上げて感度確認、または製造解の波数を下げる)。②節点集中近似——体積力を「節点値×節点体積」で与える実装は1次精度しかなく、2次要素の次数を汚す。③時間項なし・純弾性のはずが動解析ソルバーで解いて慣性が混入、という設定ミスもまれにあります。ソース項の乱数点照合が合っているのに次数が出ないなら、この「注入経路の精度」を疑ってください。

症状5: 特異行列で解けない・拘束を足したら次数が落ちた

全周トラクション境界の検証では剛体モード(並進2+回転1)が拘束されず特異になります。対処は、①製造解の値で最小限の変位拘束(1点で \( u_x, u_y \)、もう1点で回転を止める1成分——いずれも製造解の厳密値を与える)、②ゼロ固定にしてしまうと製造解と矛盾して境界誤差を注入する点に注意、です。「拘束を足したら精度が落ちた」の原因はほぼ②——拘束点にも \( \mathbf{u}_m \) の値を入れる、を徹底します。

2次元弾性向け製造解の設計メモ

チェックリスト

🙋

熱伝導のMMSはすぐできたのに、弾性は確認事項が多いですね…。


🎓

増えた分はすべて「ベクトル場と定式化の自由度」の分で、逆に言えば弾性MMSを一度通せば、成分・構成則・境界・要素病理のチェック観点が全部手に入る。おすすめは熱伝導→弾性→(必要なら)非圧縮・大変形と段階を上げる順路だ。そして弾性MMSの隠れた価値は要素選定の実証データになること——「うちの標準要素はν=0.499でロッキングする/しない」を自分の環境の数字で言えるのは、教科書の一般論より強い。検証インフラは一度作れば資産、はここでも同じだよ。

関連記事:MMS: 2次元熱伝導のトラブルシュートソース項導出のトラブルシュート収束次数算出のトラブルシュート

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