片持ち梁の曲げ(集中荷重)
理論と物理
概要
先生、片持ち梁の先端に集中荷重を加える問題って、V&Vの検証で鉄板の題材って聞いたんですけど、実際どう使われてるんですか?
片持ち梁の曲げは、FEA検証の出発点として業界で広く利用されているベンチマーク問題だ。先端たわみ $\delta = PL^3/(3EI)$、固定端最大応力 $\sigma_{max} = PLc/I$ という厳密解が存在するから、数値解法の実装精度を定量的にチェックできる。NAFEMSの入門ベンチマーク集にもこの問題が収録されている。
厳密解があるから「答え合わせ」ができるわけですね。それがCode Verificationの根幹ということですか?
まさにその通り。ASME V&V 10-2006では、解析コードの数学的正確性を確認する段階としてCode Verificationを位置づけている。厳密解を持つ問題で数値解との一致を示すことが第一歩だ。片持ち梁はその入り口として最適で、Euler-Bernoulli梁理論の仮定が成り立つ範囲なら1次元梁要素で厳密一致する。
支配方程式
では具体的な方程式を教えてください。
Euler-Bernoulli梁理論に基づくたわみ曲線は次の通りだ。
ここで $P$ は先端荷重、$L$ は梁長さ、$E$ はヤング率、$I$ は断面二次モーメントだ。固定端 $x=0$ で $w=0$, $w'=0$、自由端 $x=L$ でモーメントとせん断力がゼロという境界条件から一意に決まる。
応力はどこが最大になるんですか?
曲げモーメントは固定端で最大 $M_{max} = PL$ だから、最大曲げ応力は固定端の最外縁で生じる。
$c$ は中立軸から最外縁までの距離、$Z$ は断面係数だ。矩形断面なら $I = bh^3/12$、$c = h/2$ となる。
Timoshenko梁理論だとどう変わるんですか?
Timoshenko梁ではせん断変形を考慮する。せん断変形によるたわみ増分 $\delta_s = \kappa PL/(GA)$ が加わる。$\kappa$ はせん断補正係数(矩形断面で $5/6$ )だ。スパン/せい比 $L/h$ が10以上ならせん断変形の寄与は1%未満になるから、Euler-Bernoulli理論で十分だ。$L/h < 5$ の深梁ではTimoshenkoか3Dソリッド要素が必須になる。
ベンチマーク検証データ
具体的な数値で比較したいんですが、パラメータ設定を教えてください。
標準設定は $L = 1$ m、$b = 0.1$ m、$h = 0.05$ m、$P = 1000$ N、$E = 200$ GPa、$\nu = 0.3$ だ。このとき理論値は $\delta_{tip} = 0.160$ mm、$\sigma_{max} = 240$ MPa になる。
| 要素タイプ | メッシュ | DOF | δ_tip [mm] | σ_max [MPa] | 変位誤差 [%] |
|---|---|---|---|---|---|
| BEAM2(線形梁) | 10要素 | 66 | 0.160 | 240.0 | 0.00 |
| QUAD8(二次シェル) | 10×2 | 1,260 | 0.160 | 239.5 | 0.00 |
| HEX8(線形ソリッド) | 40×8×4 | 15,120 | 0.155 | 228.1 | 3.13 |
| HEX20(二次ソリッド) | 20×4×2 | 15,120 | 0.160 | 239.2 | 0.00 |
| TET10(二次四面体) | 自動 | ~25,000 | 0.159 | 237.5 | 0.63 |
HEX8だけ誤差が大きいのはなぜですか?
HEX8は完全積分だとせん断ロッキングが発生し、梁が実際より硬く振る舞う。曲げ支配の問題では低次六面体は本質的に不利で、低減積分やB-bar法を使わない限り収束が遅い。二次要素は中間節点が曲げの変形モードを正確に表現できるから、粗いメッシュでも高精度だ。
収束性の理論的根拠
メッシュ細分化で収束する速さに理論的な裏付けはあるんですか?
ある。FEMの誤差評価定理(Céaの定理から導かれるアプリオリ誤差評価)によれば、$p$ 次要素でエネルギーノルム誤差は $O(h^p)$ で減少する。つまり線形要素なら要素サイズを半分にすると誤差は約半分、二次要素なら約1/4になる。この理論的収束率が実際のメッシュ収束で再現できるかどうかがCode Verificationの本質だ。
収束率が理論値から外れるケースはどういうときですか?
典型的なのは応力特異点がある場合だ。片持ち梁の固定端は実際には応力特異点ではないが、固定拘束の実装方法によっては局所的に応力集中が生じて収束率が落ちることがある。対処法としてはSaint-Venantの原理を意識して、拘束端から十分離れた位置で評価するか、分布拘束を使うことだ。
各項の物理的意味
- 保存量の時間変化項:対象とする物理量の時間的変化率を表す。定常問題では零となる。【イメージ】浴槽にお湯を張るとき、水位が時間と共に上がる——この「時間あたりの変化速度」が時間変化項。バルブを閉じて水位が一定になった状態が「定常」であり、時間変化項はゼロ。
- フラックス項(流束項):物理量の空間的な輸送・拡散を記述する。対流と拡散の2種類に大別される。【イメージ】対流は「川の流れがボートを運ぶ」ように流れに乗って物が運ばれること。拡散は「インクが静止した水中で自然に広がる」ように濃度差で物が移動すること。この2つの輸送メカニズムの競合が多くの物理現象を支配する。
- ソース項(生成・消滅項):物理量の局所的な生成または消滅を表す外力・反応項。【イメージ】部屋の中でヒーターをつけると、その場所に熱エネルギーが「生成」される。化学反応で燃料が消費されると質量が「消滅」する。外部から系に注入される物理量を表す項。
仮定条件と適用限界
- 連続体仮定が成立する空間スケールであること
- 材料・流体の構成則(応力-歪み関係、ニュートン流体則等)が適用範囲内であること
- 境界条件が物理的に妥当かつ数学的に適切に定義されていること
次元解析と単位系
| 変数 | SI単位 | 注意点・換算メモ |
|---|---|---|
| 代表長さ $L$ | m | CADモデルの単位系と一致させること |
| 代表時間 $t$ | s | 過渡解析の時間刻みはCFL条件・物理的時定数を考慮 |
数値解法と実装
有限要素定式化
片持ち梁をFEMで解く場合、どの要素をどう使うのが定石なんですか?
目的によって使い分ける。梁要素ならEuler-Bernoulli理論を直接離散化するから最小の自由度で厳密解に到達する。検証目的でシェルやソリッドを使う場合は、Galerkin法による弱形式の離散化が基本だ。
要素剛性マトリクスは数値積分で計算する。
$B$ は歪み-変位マトリクス、$D$ は材料剛性マトリクス、$J$ はヤコビアンだ。
全体剛性方程式は $[K]\{u\} = \{F\}$ ですよね。線形静解析なら直接法で一発ですか?
その通り。片持ち梁程度の規模なら直接法(Cholesky分解)で問題ない。DOFが数万を超えたら前処理付きCG法の方がメモリ効率が良い。この問題の本質は解法ではなく要素定式化の精度確認だから、ソルバー選択よりも要素タイプとメッシュ密度に集中すべきだ。
要素選択の実装指針
実際のソルバーでの設定を教えてください。
NastranならCBEAM要素で $w_{tip}$ が厳密一致する。Abaqusだと B31(Timoshenko梁)で同様。ソリッド検証をする場合、AbaqusのC3D20R(二次六面体・低減積分)が鉄板だ。NastranならCHEXA(20節点)。
| ソルバー | 梁要素 | シェル要素 | ソリッド要素 |
|---|---|---|---|
| Nastran | CBEAM | CQUAD8 | CHEXA(20) |
| Abaqus | B31 | S8R | C3D20R |
| Ansys | BEAM188 | SHELL281 | SOLID186 |
| CalculiX | *BEAM | *SHELL, S8 | C3D20 |
積分スキームの選択はどう影響しますか?
完全積分のHEX8(2×2×2 Gauss点)は曲げ問題でロッキングする。低減積分(1×1×1)にするとロッキングは解消するが、ゼロエネルギーモード(アワーグラスモード)のリスクがある。B-bar法やEAS(Enhanced Assumed Strain)法はロッキングを回避しつつアワーグラスも抑制する。Abaqusの C3D8I(非適合モード)もこの問題に有効だ。
Richardson外挿による収束確認
メッシュ収束を定量的に示すにはどうすればいいですか?
3水準以上のメッシュで計算し、Richardson外挿で漸近解を推定する。メッシュ比 $r$、2つの解 $f_h$ と $f_{rh}$ から
観測収束次数 $p$ は3水準のメッシュ結果から求める。
GCIはどう計算するんですか?
Grid Convergence Index は Roache が提案した指標で、ASME V&V 20でも採用されている。
$F_s = 1.25$(3水準メッシュ使用時)、$\varepsilon$ はメッシュ間の相対誤差だ。GCI < 5% が収束の目安。片持ち梁でHEX20を使えば、要素数を20→40→80と倍々にしたとき $p \approx 2$ が観測でき、GCI < 1% に容易に到達する。
ソルバー間クロスチェック
複数のソルバーで同じ問題を解いて突き合わせる意義は何ですか?
メッシュの互換性で注意すべきポイントはありますか?
節点番号の順序がソルバーごとに異なる。Abaqusは反時計回り、Nastranは時計回りなど。変換時に法線が反転して荷重方向が逆になる事故が起きうる。Gmshで出力形式を切り替えるのが安全だ。また、要素タイプの厳密な対応関係(例: AbaqusのC3D20とNastranのCHEXA-20は節点順序が違う)を確認しておく必要がある。
低次要素
計算コストが低く実装が簡単だが、精度は限定的。粗いメッシュでは大きな誤差が生じる可能性がある。
高次要素
同一メッシュでより高い精度を達成。計算コストは増加するが、必要な要素数は少なくなる場合が多い。
ニュートン・ラフソン法
非線形問題の標準的手法。収束半径内で2次収束。$||R|| < \epsilon$ で収束判定。
時間積分
実践ガイド
検証の実践手順
片持ち梁のベンチマーク検証を自社でやるとき、どんな手順で進めるのがベストですか?
ASME V&V 10の枠組みに沿って進める。
1. 問題定義: 形状($L=1$ m, $b=0.1$ m, $h=0.05$ m)、材料($E=200$ GPa, $\nu=0.3$)、荷重($P=1000$ N)を明示的に文書化する
2. 理論解の算出: $\delta_{tip}$、$\sigma_{max}$、反力を手計算で求め、参照値として記録
3. メッシュ収束スタディ: 最低3水準のメッシュ(要素サイズ比 $r = 2$ が推奨)で系統的に計算
4. GCIの算出: 観測収束次数と離散化誤差の95%信頼区間を報告
5. 結果の文書化: 入力ファイル、メッシュ、結果をバージョン管理下に置く
メッシュ生成で注意すべき点はありますか?
片持ち梁なら構造格子を使うべきだ。六面体マッピングメッシュで要素サイズを均一にすることで、Richardson外挿の前提条件(均一なメッシュ比)を満たせる。自動テトラメッシュだとメッシュ比が局所的にばらつき、GCIの計算が不安定になる。
境界条件の設定指針
固定端の拘束をどう実装するかで結果が変わるというのは本当ですか?
本当だ。梁要素なら全自由度拘束で問題ないが、ソリッド要素では実装方法が結果に影響する。
- 全節点固定: 固定端面の全節点で3方向変位をゼロに拘束。最も一般的だが、Poisson効果による横方向の拘束が付随的に生じ、固定端近傍で応力が理論値からずれる
- RBE2/MPC: 端面の節点をマスター節点に剛体結合し、マスター節点を拘束。回転の拘束方法が明確になる
- 分布拘束: 端面に一様変位拘束を適用。Abaqusの COUPLING + KINEMATIC がこれに相当
どの方法が正解なんですか?
正解はないが、理論解との比較が目的なら「固定端から十分離れた位置で結果を評価する」のが正攻法だ。Saint-Venantの原理により、固定端から梁せい $h$ の2〜3倍離れれば拘束方法の影響はほぼ消える。評価位置を明記して比較することが重要だ。
結果の検証チェックリスト
結果を出したあとに確認すべき項目を整理してもらえますか?
以下を必ずチェックする。
| チェック項目 | 確認方法 | 判定基準 |
|---|---|---|
| 反力の釣り合い | 固定端反力 = 印加荷重 | 相対誤差 < $10^{-6}$ |
| 先端たわみ | 理論値 $PL^3/(3EI)$ と比較 | GCI < 5% |
| 固定端応力 | 理論値 $PLc/I$ と比較 | GCI < 5% |
| 変形形状 | 3次曲線パターンの確認 | 目視で不自然な変形がないこと |
| 収束次数 | Richardson外挿で $p$ を算出 | 理論値(二次要素で $p \approx 2$)との一致 |
反力の釣り合いチェックが最初なのはなぜですか?
反力が一致しない場合、境界条件か荷重の設定に根本的な間違いがある。これは数秒で確認できて致命的なバグを検出できるから、最優先で実施すべきだ。新人がよくやるミスとして、Nastranで FORCE カードの座標系を間違えて荷重方向が意図と違うケースがある。反力チェックで即座に発覚する。
レポート作成の要件
検証レポートには何を記載すべきですか?
NAFEMS QSS(Quality System Supplement)に沿ったレポートには以下を含める。
- 問題の明確な定義(形状、材料、荷重、境界条件の図示)
- 使用したソルバーとバージョン番号
- 要素タイプ、メッシュ密度、積分スキームの仕様
- 理論解の導出過程
- メッシュ収束データ(表とグラフ)
- GCIの計算過程と結果
- 入力ファイルの全文または参照先(再現性の保証)
入力ファイルを全文載せるのは過剰ではないですか?
航空宇宙や原子力の規制対応では必須だ。一般産業でも、5年後に同じ結果を再現できることがV&Vの核心だから、入力ファイルのアーカイブは省略すべきでない。Gitリポジトリへのハッシュ付きリンクでも可だ。
解析フローのたとえ
解析フローは「科学実験」に似ている。仮説(解析モデル)を立て、実験(計算実行)し、結果を検証し、仮説を修正する——このPDCAサイクルが品質の高い解析を生む。
初心者が陥りやすい落とし穴
最もよくある失敗は「結果の検証を怠る」こと。美しいコンター図が得られても、それが物理的に正しいとは限らない。必ず理論解、実験データ、またはベンチマーク問題との比較を行うこと。
境界条件の考え方
境界条件は「実験の治具」に相当する。治具の設計が不適切であれば実験結果が無意味になるように、CAEでも境界条件が現実を正しく表現しているかが最も重要。
ソフトウェア比較
Nastran での実装
Nastranで片持ち梁の検証を回すとき、BDFファイルの書き方を具体的に教えてください。
SOL 101(線形静解析)を使う。CBEAM要素なら PBEAM で断面を定義し、SPC1 で固定端を拘束、FORCE で先端荷重を印加する。結果はたわみが DISPLACEMENT、応力が STRESS で .f06 に出力される。
Nastranで片持ち梁の検証を回すとき、BDFファイルの書き方を具体的に教えてください。
SOL 101(線形静解析)を使う。CBEAM要素なら PBEAM で断面を定義し、SPC1 で固定端を拘束、FORCE で先端荷重を印加する。結果はたわみが DISPLACEMENT、応力が STRESS で .f06 に出力される。
重要なのは PARAM,AUTOSPC,YES を入れておくことだ。これで拘束が不足している自由度を自動で特定してくれる。片持ち梁では面外方向の拘束がないとSINGULARITY WARNINGが出ることがある。
ソリッド要素で検証する場合の注意点は?
CHEXA(20節点)を使い、荷重をRBE3で分配する。先端面の全節点をRBE3の従属節点にし、独立節点に荷重を印加する。RBE2にすると端面が剛体化して局所応力に影響するから注意。PSOLID カードで積分点数を制御でき、デフォルトの2×2×2(完全積分)が推奨だ。
Abaqus での実装
Abaqusだとどう設定しますか?
STEP, NAME=STATIC, PERTURBATION で線形摂動ステップを使う。B31要素なら BEAM SECTION で断面定義、C3D20R なら SOLID SECTION で材料参照を設定。固定端は BOUNDARY で ENCASTRE(全自由度拘束)、荷重は *CLOAD で節点力を印加する。
Abaqusだとどう設定しますか?
STEP, NAME=STATIC, PERTURBATION で線形摂動ステップを使う。B31要素なら BEAM SECTION で断面定義、C3D20R なら SOLID SECTION で材料参照を設定。固定端は BOUNDARY で ENCASTRE(全自由度拘束)、荷重は *CLOAD で節点力を印加する。
注意すべきは、AbaqusのB31はTimoshenko梁だから、細長い梁でも若干のせん断変形が入ること。Euler-Bernoulli梁のB33を使えば完全に一致するが、B33は3次補間なので3節点梁要素になる。
AbaqusとNastranで結果が微妙に違う場合、どこを疑えばいいですか?
応力の出力位置だ。Nastranは要素中心の応力をデフォルトで出力するが、Abaqusは積分点の値を出力する。節点外挿のアルゴリズムも異なる。正確な比較をするには、同一座標点での応力を両者から抽出して比較する必要がある。パス上の応力プロットを取ると差異が可視化しやすい。
Ansys Mechanical での実装
Ansysではどうですか?
WorkbenchのStatic Structuralモジュールで設定するのが一般的だが、検証目的ならAPDLコマンドで直接制御する方が透明性がある。BEAM188(Timoshenko梁)かSOLID186(二次六面体)を使う。APDLの ET,1,SOLID186 で要素タイプを指定し、KEYOPT(1,2) で積分オプションを制御する。
Workbenchだとブラックボックスになりがちですよね。
その通り。WorkbenchはGUIで簡単に設定できる反面、デフォルト設定が何なのか把握しづらい。V&Vでは全設定を明示する必要があるから、APDL Command Snippetを挿入して要素オプションを明示的に指定するか、最初からAPDLで書く方が確実だ。
CalculiX での実装
オープンソースのCalculiXではどうやりますか?
CalculiXはAbaqus互換の入力形式を採用しているから、.inp ファイルの書式はほぼ同じだ。C3D20要素を使い、BOUNDARY で固定拘束、CLOAD で荷重印加する。
Ansysではどうですか?
WorkbenchのStatic Structuralモジュールで設定するのが一般的だが、検証目的ならAPDLコマンドで直接制御する方が透明性がある。BEAM188(Timoshenko梁)かSOLID186(二次六面体)を使う。APDLの ET,1,SOLID186 で要素タイプを指定し、KEYOPT(1,2) で積分オプションを制御する。
Workbenchだとブラックボックスになりがちですよね。
その通り。WorkbenchはGUIで簡単に設定できる反面、デフォルト設定が何なのか把握しづらい。V&Vでは全設定を明示する必要があるから、APDL Command Snippetを挿入して要素オプションを明示的に指定するか、最初からAPDLで書く方が確実だ。
オープンソースのCalculiXではどうやりますか?
CalculiXはAbaqus互換の入力形式を採用しているから、.inp ファイルの書式はほぼ同じだ。C3D20要素を使い、BOUNDARY で固定拘束、CLOAD で荷重印加する。
```
*STEP
*STATIC
*BOUNDARY
FIX, 1, 3, 0.0
*CLOAD
TIP, 2, 1000.
*NODE FILE
U
*EL FILE
S
*END STEP
```
実行は ccx model の一行だ。結果の .frd ファイルは CGX か ParaView で可視化する。
AbaqusとCalculiXで結果がずれるケースはありますか?
接触や大変形では定式化の差異が出るが、線形静解析の片持ち梁では両者ほぼ一致する。ただし CalculiX の C3D20 はAbaqusの C3D20 と節点順序が微妙に異なることがあるから、Gmshで出力するときは -format inp オプションで直接CalculiX向けに出すのが安全だ。
クロスバリデーション結果
全ソルバーの結果を並べるとどうなりますか?
同一メッシュ(HEX20、20×4×2)での比較結果はこうなる。
| ソルバー | δ_tip [mm] | σ_max [MPa] | 理論値との差 [%] |
|---|---|---|---|
| 理論値 | 0.1600 | 240.0 | — |
| Nastran (CHEXA-20) | 0.1600 | 239.3 | 0.29 |
| Abaqus (C3D20R) | 0.1600 | 239.1 | 0.38 |
| Ansys (SOLID186) | 0.1600 | 239.4 | 0.25 |
| CalculiX (C3D20) | 0.1600 | 239.2 | 0.33 |
変位は全ソルバーで理論値に一致。応力の差は節点外挿アルゴリズムの違いに起因するもので、メッシュ細分化で全て理論値に収束する。
選定で最も重要な3つの問い
- 「何を解くか」:片持ち梁の曲げ(集中荷重)に必要な物理モデル・要素タイプが対応しているか。例えば、流体ではLES対応の有無、構造では接触・大変形の対応能力が差になる。
- 「誰が使うか」:初心者チームならGUIが充実したツール、経験者ならスクリプト駆動の柔軟なツールが適する。自動車のAT車(GUI)とMT車(スクリプト)の違いに似ている。
- 「どこまで拡張するか」:将来の解析規模拡大(HPC対応)、他部門への展開、他ツールとの連携を見据えた選択が長期的なコスト削減につながる。
先端技術
MMS(製造解法)による検証
片持ち梁の厳密解を使った検証の先に、さらに高度な検証方法ってありますか?
Method of Manufactured Solutions(MMS)だ。片持ち梁の厳密解は特定の荷重・境界条件でしか使えないが、MMSでは任意の解を仮定してそこから逆算した外力項を体積力として与える。こうすれば複雑な解析コード内の離散化の正しさを網羅的に検証できる。
片持ち梁にMMSを適用する意味は何ですか?
例えば、単純な多項式ではなく三角関数を含む変位場 $u(x,y) = A\sin(\pi x/L)\cos(\pi y/h)$ を仮定し、弾性体の平衡方程式に代入して得られるソース項を体積力として与える。この製造解と数値解の差を評価すれば、要素定式化のバグや積分精度の問題を発見できる。梁理論では検出できないソリッド要素固有のバグ(例えばヤコビアン計算の誤り)を炙り出せる。
非線形への拡張
線形の片持ち梁から非線形問題への拡張はどうやりますか?
段階的に複雑化するのが定石だ。
片持ち梁の厳密解を使った検証の先に、さらに高度な検証方法ってありますか?
Method of Manufactured Solutions(MMS)だ。片持ち梁の厳密解は特定の荷重・境界条件でしか使えないが、MMSでは任意の解を仮定してそこから逆算した外力項を体積力として与える。こうすれば複雑な解析コード内の離散化の正しさを網羅的に検証できる。
片持ち梁にMMSを適用する意味は何ですか?
例えば、単純な多項式ではなく三角関数を含む変位場 $u(x,y) = A\sin(\pi x/L)\cos(\pi y/h)$ を仮定し、弾性体の平衡方程式に代入して得られるソース項を体積力として与える。この製造解と数値解の差を評価すれば、要素定式化のバグや積分精度の問題を発見できる。梁理論では検出できないソリッド要素固有のバグ(例えばヤコビアン計算の誤り)を炙り出せる。
線形の片持ち梁から非線形問題への拡張はどうやりますか?
段階的に複雑化するのが定石だ。
1. 幾何学的非線形: 大たわみ解析に切り替える。荷重を増大させて $\delta/L > 0.1$ の領域では理論解が無効になるから、楕円積分による大たわみの厳密解と比較する
2. 材料非線形: 弾塑性モデルに切り替え、降伏開始荷重と塑性ヒンジ形成を検証する。$P_y = \sigma_y Z / L$ が降伏開始の理論値
3. 接触非線形: 固定端をボルト締結でモデル化し、接触面のスリップを再現する
各段階で何を検証の指標にすべきですか?
大たわみでは荷重-変位曲線の全体形状(解析解との比較)、弾塑性では降伏開始荷重と全塑性モーメント $M_p = \sigma_y bh^2/4$、接触では反力分布と境界条件の遷移だ。各段階で理論値と比較できる量が存在することがポイントで、比較対象がない非線形問題にいきなり飛ぶのは危険だ。
自動回帰テストへの組み込み
このベンチマークを日常の品質管理に組み込むにはどうすればいいですか?
CI/CDパイプラインに回帰テストとして組み込むのが最善だ。ソルバーのバージョンアップ時やカスタム要素の開発時に、片持ち梁を含む標準ベンチマーク群を自動実行し、結果が許容範囲内にあることを確認する。
Pythonスクリプトで入力ファイル生成→ソルバー実行→結果抽出→理論値との比較→合否判定を自動化できる。pytest のフレームワークに載せれば、pytest test_cantilever.py の一行で全チェックが走る。
判定基準はどう設定すべきですか?
変位の相対誤差 0.1% 以内、応力の相対誤差 1% 以内を目安にする。メッシュは十分に収束した水準で固定する。基準を厳しくしすぎると浮動小数点の丸め誤差やプラットフォーム差異で偽陽性が出るから、有効数字4〜5桁の一致で十分だ。
トラブルシューティング
理論値と合わない場合の切り分け
片持ち梁を解いたのに理論値と全然合わないとき、どこから調べればいいですか?
以下の順で切り分ける。
ステップ1: 単位系の確認
最も多い原因がこれだ。Nastranは内部で無次元だが、ユーザーが SI と mm-ton-s を混ぜると$E$が6桁ずれる。Abaqusも consistent units でなければならない。mm を使うなら $E$ は MPa、力は N、質量は tonne だ。
ステップ2: 反力の確認
反力 $R_y = P = 1000$ N、反モーメント $M = PL = 1000$ N·m が出ているか確認。これがずれていたら荷重か拘束の設定ミスだ。
ステップ3: 要素タイプの確認
意図した要素が使われているか出力を確認。NastranではECHO出力でCHEXAの節点数が8なのか20なのか確認できる。
単位系のミスを防ぐ良い方法はありますか?
入力ファイルの冒頭にコメントで使用単位系を明記する慣習をつけることだ。例えば Nastran なら $ UNITS: mm, N, MPa, tonne, s と書いておく。Abaqusには単位系の概念がないから、ユーザーが一貫性を保証する責任がある。最近はCOMSOLのように単位系をGUIで明示管理するソルバーも増えている。
応力集中と特異点の対処
固定端の応力が理論値よりかなり大きく出る場合はどうですか?
ソリッド要素モデルで固定端面の角部に応力集中が出ている可能性が高い。梁理論は平面保持の仮定に基づくから、端面での局所的な3D効果は含まない。
対処法:
1. 応力の評価点を固定端から $h$ 以上離れた位置に移す
2. 断面平均応力を算出して比較する
3. サブモデリングで固定端近傍を詳細化し、3D効果を分離する
メッシュを細かくしても応力が収束しないのは特異点ですか?
片持ち梁の固定端は幾何学的には特異点ではないが、境界条件の実装によっては人工的な特異点を作ってしまうことがある。典型的なのは、固定端面の角部の1節点だけに荷重が集中するケースだ。これは節点力の特異点になる。評価位置を角部から離すか、RBE3で荷重を分配すれば解消する。
収束しない場合の対処
線形静解析で収束しないことってあるんですか?
直接法なら「収束しない」ではなく「特異行列」エラーになる。これは拘束条件の不足で剛体移動が可能な状態を意味する。片持ち梁で起きる典型パターンは:
- 3Dソリッドで面外回転を拘束し忘れた
- シェル要素でドリリング自由度が未拘束
- RBE2の不適切な使用で独立節点の自由度が余った
Nastranの FATAL 2012、Abaqusの "Zero pivot" はこのケースだ。AUTOSPC を有効にしてどの自由度が追加拘束されたか確認し、意図した境界条件になっているか見直す。
FATAL 2012 が出たときの対処フローを教えてください。
1. .f06 の AUTOSPC TABLE でどの節点のどの自由度が追加拘束されたか確認
2. その自由度が本来拘束されるべきものか判断
3. 本来拘束されるべきなら SPC1 に追加
4. 想定外の自由度なら、モデルの接続(RBE、MPC)を見直す
5. 修正後に再度実行し、追加拘束なしで解けることを確認
よくある質問
先生、最後にFAQを整理してもらえますか。
Q: シェル要素でオフセットを使うべきか?
A: 片持ち梁の中立面にシェルを配置する場合、オフセットは不要。梁の上面/下面にシェルを配置する特殊なモデル化をする場合のみオフセットが必要。V&Vでは最も単純なモデル化が望ましい。
Q: 荷重を節点力で与えるか、分布力で与えるか?
A: 理論解は集中荷重に対するものだから、先端の1節点にFORCEで与えるのが正確。ただし3Dソリッドでは面に圧力として分布させるケースもある。等価性の確認として反力チェックが重要だ。
Q: ポアソン比は結果にどう影響するか?
A: Euler-Bernoulli理論では$\nu$は無関係だが、3DソリッドではPoisson効果で横方向の変位が生じる。$\nu = 0.3$ と $\nu = 0$ で先端たわみを比較すると、3Dソリッドでは $\nu$ の影響で約0.5%の差が出る。梁理論との厳密一致を求めるなら $\nu = 0$ で検証するのも一つの方法だ。
「解析が合わない」と思ったら
- まず深呼吸——焦って設定をランダムに変えると、問題がさらに複雑になる
- 最小再現ケースを作る——片持ち梁の曲げ(集中荷重)の問題を最も単純な形で再現する。「引き算のデバッグ」が最も効率的
- 1つだけ変えて再実行——複数の変更を同時に行うと、何が効いたか分からなくなる。科学実験と同じ「対照実験」の原則
- 物理に立ち返る——計算結果が「重力に逆らって物が浮く」ような非物理的な結果なら、入力データの根本的な間違いを疑う
関連トピック
なった
詳しく
報告