前回に引き続き同署の批評を始める。
1.2節については見開きにできなかったのかという疑問がわく。何故かというと、この節は2ページあるが、図1.2はページをめくらないと見えないのである。関係ない話だが、J.S.バッハの「フーガの技法」では、ページめくりをするときには片手だけで演奏できるように配慮されていたという。実際印刷されたものはその配慮が台無しになっていたというが、この本を見るとそういう配慮の欠如が見て取れる。
ここでプリプロセッサー・ソルバー・ポストプロセッサーの説明があるが、これも正確さに欠ける。実務をやってる人から見たらこれらは別のプログラムであり、ソルバー内部の処理を指すことはない。吹き出し迄使っているが、なら初めからその用語を使えと言いたい。
どういう説明をしているか引用すると次のようになっている。
プリプロセッサは節点番号、節点座標、要素を構成する節点、材料物性値、拘束条件、荷重条件などのデータを読み込み、各種のベクトルやマトリックスの生成を行う。
実質的に買いを計算するのはソルバーである、式(1.13)に相当する行列方程式を解く。
ポストプロセッサでは方程式を解いて得られた解としての変位から、ひずみ、応力等を計算し、必要に応じて出力を行う。
普通こんな言い方はしません。プログラムを組む方の立場からしたら、これらはそれぞれ前処理、計算部分、後処理というものである。非線形解析では計算部分と後処理を繰り返し行う。用語の説明ですら正確にできてない時点で、こいつら何やっていたのと言うしかなくなる。
ちなみに、「要素を構成する節点(のリスト)」を通常コネクティビティと称している。コネクティビティは要素を構成する節点のリストだが、リストの位置は実際の形状に依存しており、ソルバーごとに決められている。線要素と三角形や四角形の一次要素の場合、どのソルバーも同じと思われるが、それ以外の要素はソルバーのマニュアルを見たほうがわかりやすい。
そしてページをめくらないと見えない図1.2だが、これも線形静解析でなければ成り立たない。つまり荷重や強制変位をかけて一発計算したら終わりならばこの図は正しい。逆に言うと、境界条件を分割してかけただけでもこの図の説明は破綻する。
1.3節はDマトリックスの説明になるのだが、文章が冗長である。宣く、
本書で述べる有限要素法プログラミングは二次元問題であり、構造問題を扱う。本節ではそのプログラミングで必要となる、主なマトリックス(Dマトリックス、Bマトリックス、要素剛性マトリックス)について記述する。
これを直すと次のようになる。
本書では、二次元応力解析のためのFEMプログラムを作成する上で必要となるDマトリックス、Bマトリックス、要素剛性マトリックスなどについて説明する。
この節では何故か等方性物体などについての説明がない。節初めの引っ張り成分だけのマトリックス表示をするくらいなら、等方性物体の説明をすればいいだろう。
等方性というのは物質の性質で、この場合はいかなる方向から荷重や変位を作用させた場合、どこもかしこも同じ応答をすることを言う。中心を拘束した球体を考えればいいだろう。等方性であれば、球体を回転させないようにするため、どこからでも中心に向けて同じ荷重を作用させれば同じ変形をする。結果、応力やひずみも荷重の向きに依存しない。荷重の向きによる依存性がというなら、座標変換を行えば、上記の条件では皆同じ結果が得られる。
現実にはそんな理想的な物質は存在しないが、巨視的に見ればそういう性質を持っているということと、当然扱いがしやすいので金属材料などではこの等方性がよく使われる。
例えば圧延鋼板では圧延方向と面内の直角方向では機械的性質が異なる。どれくらい異なるかは知らないのだが、等方性でやってよいということになっているので大した差がないというのが現実なのだろう。
現実にはCFRPなどでは機械的性質は方向によって変わるので本文中のような式にはならない。このような性質を異方性というが、たいていは直交異方性と言われるものが使われる。初心者に説明しないのは急いで説明する必要性があまりないという程度の理由である。金属材料の場合、滅多に出てきそうにないという現実も影響している。
実は、2次元の微小ひずみ状態の線形解析程度であれば、Dマトリックスを置き換えるだけで直交異方性の計算プログラムが出来上がる。これが大変形やシェルなどでは複雑になるが、初心者にそんなものを教えて混乱させても意味がない。従って、初心者に伝える内容であれば、取り敢えず取り扱いが容易な等方性で計算します、でいいだろう、
さて2次元応力解析であるが、3次元応力解析を行うまでもなく、2次元近似を行えれば、計算量が減るのは明らかである。このため平面応力・平面ひずみ・軸対称問題がある。
どれも本文で説明があるが、正確を期したと言い難い。教科書的な説明は次のとおりである。
平面応力:薄い板の引っ張り。この状態であれば厚さ方向の応力$\sigma_z$は無視でき、また、$\tau_{xz},\tau_{yz}$も0と置くことが出来る。この二つのせん断応力を面外応力という。同様に$\sigma_z$を面外応力という。この場合、面外に生じるひずみ$\epsilon_z$は非零になる。また、せん断応力同様、面外せん断ひずみ$\tau_{xz}$と$\tau_{yz}$も0になる。
平面ひずみ:無限に延長された一様な断面を持つ棒に、これもまた長手方向に一様な荷重がかかったような状態である。この場合、断面を取ると、この断面の面外に生じるひずみ$\epsilon_z$は0と置くことが出来るが対応する応力$\sigma_z$は0にならない。面外せん断応力とひずみについては平面応力同様0と置く。
軸対称問題:回転体に終方向に一様な荷重がかかった状態を考える。例えば一様な内圧を受けるパイプがそうである。このような物体で中心軸を通る断面を考えると、どこで切断してもその断面に生じる応力やひずみは同じになる。上二つと異なり応力とひずみ成分はともに4つとなる。
軸対称問題は他の平面問題と異なり、円筒座標系を使用するので、$x-y$座標ではなく、$r-z$座標系を用いるが、プログラム上では座標系を読み替えて作成することが可能である。
成分が増えているのは周(角度)方向にも応力とひずみが生じるためである。
もう一つの簡易化が構造要素と呼ばれるもので、どちらか問う言うと材料力学的知見を応用してデーターの簡易化を図ったもので、シェルや梁がそれにあたる。実際FEMの初期には梁組構造物の計算方法としてマトリックス法というのがあった。
シェルは平面で表され、梁は線分となる。シェルも梁も曲げの効果を考慮するため、自由度に回転が追加されている。曲げを考慮しない場合、これらは膜・トラスになる。回転というと難しそうに見えるが、梁のモーメントを考えればいいだろう。2次元の梁はは材料力学を学んだものなら誰でも知っている通り、モーメントが考慮される。3次元梁の場合は、モーメントが2方向に増え、捩りが追加される。
梁の計算には材料力学で学ぶEuler=Bernoulliによる定式化と、Timoshenkoによる定式化の2種類がある。
シェルの場合、曲げの効果を考慮しなければならないが、これが2方向ある。ただ梁と異なり、面に垂直な回転は考慮されない、というかできない。剛体回転になるからである。
シェルの場合、古くはKirchhoff=Loveのシェル理論による定式化がされてきたが、要素の定式化が困難(何しろ重調和方程式を離散化しないといけない)なため、70年代からはReissner=Mindlinの定式化によるシェルに切り替わった。現在のソルバーで使われているのはこのシェルを基本としたもであるはずである。現在一番信頼性が高いとされているMITC要素はこのシェルの発展版ということが出来る。Kirchhoff=Loveのシェル理論によるシェル要素は古いソルバー(例えばMARC)で見ることが出来るだろう。
話が長くなったが、まず書くべき内容をよく検討した後、推敲するべきだろう。それと誰をターゲットにしているか分からないものを書くべきではない。
修正履歴
20190907:平面応力問題の面外せん断ひずみの説明を修正