第124話 拘束点処理の舞台裏
FEMユーザが対象とする構造解析は、フリーボディの固有振動数を求めるというような特殊なケースを除けば、弾性体の一部で何らかの動きの拘束がされている問題を扱っているわけである。FEM解析の場合、拘束点に該当する節点(厳密には節点自由度)に変位がゼロであるという条件設定を外部から設定することになる。
すなわち、要素剛性マトリックスや荷重ベクトルが集計されてできる剛性方程式(下の式)に何らかの処理をするのである。この連立方程式を元のままで解くことはできない。数学的に言えば、不定方程式や不能方程式なっているのである。これを物理的に言えば、構造物に荷重を掛ければ、その構造物は吹っ飛んでいく現象となる。そこで連立方程式に、拘束点処理に該当する手段を施すことになるが、実際には全体剛性マトリックスに相当する係数マトリックスだけの処理で済む。本話は、その処理方法を紹介するのがテーマである。

以下、初級レベルから上級レベルへと、順を追って解説する。なお、拘束処理するのは、上式の中で変位自由度 U k とする。すなわち、 U k =0 である。
■レベル 1 の方法 A
拘束自由度に該当する K 行、K 列を削除する方法。行を削除するのは、 右辺荷重ベクトルの該当項の値(これが反力値)が不明だから。列を削除するは、初めからUk=0 の情報があるから、これの乗算相手となる係数項との計算は無駄と考えればいい。構造解析に限らず、工学分野の数理問題では、結局は連立一次方程式を解く局面に出くわすことになる。そして、必ずここで言う拘束処理に該当する手立てが必要となる。工学部の学生さんたちが、何らかの数理解析プログラミングをするとなると、この方法を使うのではないかと想像する。
- 長所:
- 削除する行、列 を詰めていくのでマトリックスサイズが小さくなって方程式の解式の計算コスト面で有利。
- 短所:
- 行、列の詰める作業が面倒。
■レベル 2 の方法( B )
対角要素 Skk の位置を除いて、K 行、K 列 の全ての値をゼロにセットする方法。本方法も A と同じく初級プログラマーでは利用されているのではと推測する。
- 長所:
- 操作が楽である。
- 短所:
- 不要行、列を抱えたままなのでマトリックスサイズが大となる。また、元のマトリックス内容が消えてしまう
■レベル 3 の方法( C )
要素剛性マトリックスの全体剛性マトリックスへのアセンブリ処理段階で、拘束自由度に相当する項を除外する方法。
- 長所:
- 最初からサイズが圧縮された無駄のないマトリックスが形成される。
- 短所:
- プログラミングがやや複雑となる。
ついでに、拘束点での反力値(支点反力)を求める方法に関しても追記しておく。
支点反力の計算方法
■1. 求まっている全変位([U])を全体剛性マトリックス([KG])に掛けて求める。

- 注1)
- A と B の支点処理法では、元の全体剛性マトリックスが消滅しているので、再度、それを作成する必要がある。
- 注2)
- このとき、右辺の荷重ベクトル([F])も作成し直す必要がある。
- 注3)
- 本方法では、C の支点処理法では反力は求められない。
■2. 再度、要素剛性マトリックス([KE])を組み立て、それに求まっている要素節点変位([UE])を掛けて弾性 変形が寄与する等価節点力を求めて、支点節点(実際は、拘束自由度)で集計する。このとき、表面荷重、体積力が寄与する等価節点力([Fequ])も加算する必要がある。

- 注1)
- 直接節点に載荷される節点荷重 がある場合、その加算も必要である。
2025年11月記
