Skip to content

Translation status

This page has not yet been translated into English, or its translation is out of date. The current 日本語 version is shown as a fallback.

外力仮想仕事と全体方程式の組立て

内力仮想仕事の離散化で弱形式の左辺を要素内力ベクトル \(\boldsymbol{q}^e\)(UL 法)または \(\boldsymbol{Q}^e\)(TL 法)に集約した.本章では外力仮想仕事から要素節点外力ベクトル \(\boldsymbol{F}^e\) を導入し,要素節点物理量を全体節点番号で並べ替えて集計するアセンブル操作を経て,FrontISTR の非線形構造解析が解くべき節点変位に関する非線形方程式系に到達する.

外力仮想仕事の要素分解

仮想仕事の原理の右辺は,体積力(物体力)と力学的境界における規定表面力からなる外力仮想仕事として要素ごとに分解できる.形状関数と有限要素近似で導入した変位補間を行列形式で書くため,節点 \(\alpha\) の形状関数 \(N_\alpha^e\) を対角に並べた \(d \times d\) ブロック \(\boldsymbol{N}_\alpha\) と,それを横に並べた \(\boldsymbol{N} = [\boldsymbol{N}_1, \ldots, \boldsymbol{N}_{n_e}]\) を用いて \(\delta\boldsymbol{u} = \boldsymbol{N}\, \delta\boldsymbol{u}^e\) とする.これを基準配置で書いた外力仮想仕事に代入すると

\[ \delta W^{\mathrm{ext}} = \sum_e \delta\boldsymbol{u}^{eT} \boldsymbol{F}^e, \qquad \boldsymbol{F}^e_\alpha = \int_{\Omega^e_0} \boldsymbol{N}_\alpha^T \rho_0 \boldsymbol{g}\, dV + \int_{\Gamma^e_{0t}} \boldsymbol{N}_\alpha^T \bar{\boldsymbol{t}}_0\, d\Gamma_0 \]

を得る.ここで要素節点外力ベクトル\(\boldsymbol{F}^e = (\boldsymbol{F}^{eT}_1, \ldots, \boldsymbol{F}^{eT}_{n_e})^T\) と並べた.これにより外力仮想仕事は内力側と同じ「要素節点ベクトル × テスト関数」の形にまとめられる(現配置で書いても \(dV \to dv\)\(\rho_0 \to \rho\)\(\bar{\boldsymbol{t}}_0 \to \bar{\boldsymbol{t}}\) の置換で同形).

要素節点物理量のアセンブル

要素ごとに得られた節点物理量 \(\boldsymbol{Q}^e_\alpha, \boldsymbol{F}^e_\alpha\) を全体節点番号で並べ替えた全体ベクトルへ集計する.要素 \(\Omega^e\) の要素内節点番号 \(\alpha\) に対応する全体節点番号を

\[ \mathrm{gdx}(e, \alpha) = i_g \]

と表すと,要素節点物理量は全体節点物理量の対応成分と一致する(\(\boldsymbol{u}^e_\alpha = \boldsymbol{u}_{i_g}\) など).一般に節点 \(i_g\) は複数の要素で共有されるので,全体節点番号が \(i_g\) となる \((e, \alpha)\) の組を集めた集合

\[ \mathcal{E}(i_g) = \{ (e, \alpha) \mid \mathrm{gdx}(e, \alpha) = i_g \} \]

を用いて \(\sum_e \sum_\alpha = \sum_{i_g} \sum_{(e,\alpha) \in \mathcal{E}(i_g)}\) と総和を書き換えれば,全節点 \(n_g\) にわたる節点内力および全体内力ベクトル

\[ \boldsymbol{Q}_{i_g} = \sum_{(e,\alpha) \in \mathcal{E}(i_g)} \boldsymbol{Q}^e_\alpha, \qquad \boldsymbol{Q} = (\boldsymbol{Q}^T_1, \ldots, \boldsymbol{Q}^T_{n_g})^T \]

が得られる.\(\boldsymbol{Q}_{i_g}\) は節点 \(i_g\) に作用する要素節点内力の合力に相当し,外力が働かず釣り合っているならば \(\boldsymbol{0}\) となる量である.UL 法でも同じ手続きで \(\boldsymbol{q}_{i_g}, \boldsymbol{q}\) が得られ,値としては \(\boldsymbol{q} = \boldsymbol{Q}\) となるため,以降は区別が必要な箇所を除き \(\boldsymbol{Q}\) で統一する.全体外力ベクトル \(\boldsymbol{F}\) も同じ集約で得られる.

実装上は集合 \(\mathcal{E}(i_g)\) を陽に作らず,要素ループの中で対応成分に足し込む.

全体内力ベクトル Q を 0 に初期化:Q_{i_g} = 0  (i_g = 1, ..., n_g)
for e = 1 to (要素数)
    for α = 1 to n_e
        i_g = gdx(e, α)
        Q_{i_g} += Q^e_α
    end for
end for

全体外力ベクトル \(\boldsymbol{F}\) も同手順で構成される.全体節点番号で番号付けされたベクトル・行列に要素節点物理量を加算して格納するこの操作をアセンブル(assemble)と呼ぶ.2 つの節点番号についての 2 階テンソル(剛性行列など)に対しては,集合 \(\mathcal{E}^2(i_g, i_h) = \{ (e, \alpha, \beta) \mid \mathrm{gdx}(e, \alpha) = i_g\ \mathrm{and}\ \mathrm{gdx}(e, \beta) = i_h \}\) を用いて同種のアセンブル操作が得られる(具体的構成は接線剛性行列を参照).

解くべき非線形方程式

内力・外力のアセンブル結果を仮想仕事の原理に代入し,幾何学的境界条件を満たす任意のテスト関数 \(\delta\boldsymbol{u}^n\) に対して成り立つことから

\[ \boldsymbol{Q}(\boldsymbol{u}^n) - \boldsymbol{F}(\boldsymbol{u}^n) = \boldsymbol{0} \]

を得る.増分解析(増分解析の枠組み)の文脈で時刻添字 \(_{n+1}\) を復活させ,全体節点ベクトルを示す上付き添字 \(^n\) を省くと,解くべき方程式は

\[ \boldsymbol{Q}(\boldsymbol{u}_{n+1}) - \boldsymbol{F}(\boldsymbol{u}_{n+1}) = \boldsymbol{0} \]

となる.時刻 \(t_{n+1}\) の節点変位 \(\boldsymbol{u}_{n+1}\) を求める離散化された境界値問題は,この変位に関する非線形方程式を幾何学的境界条件と合わせて解くことに帰着する.方程式の線形化と接線剛性行列の構成は接線剛性行列,反復解法は Newton-Raphson 法に委ねる.

関連項目