第69話 FEMユーザーに数学は必要か
実務現場で有限要素法(FEM)を勉強されている人の中から、ときおり数学の話題を耳にする。「数学が苦手で、有限要素法が理解しづらい」と聞くと、なぜだろうと思ってしまう。FEMプログラムを開発する立場の人では、たしかに相応の数学知識を必要とするけれど、FEMの利用者の立場では、そんなに悩むほどの数学は必要ないと私は思うが、どうだろうか。
日本でFEMが輸入されていた1960年代以降、FEM参考書の出版が続いたが、当然そのほとんどは訳書であった。その後、日本人の手になる解説書も登場してきたが、伝統的に開発者向けの書籍が続いていたように思う。FEMが大衆化して、解析のプロたちだけのものでなくなった現在でも、どういうわけか、出版されるFEM参考書といえば、相変わらず理論的解説に偏った内容の本が多い。
市販ソフトを利用するFEMユーザーが、ブラックボックス的利用に飽き足らず、少しはFEMのことを勉強しようと思い、参考書を買ってきて勉強しようにも、手にする本が上で言ったような書籍では、その中で使用されている数学に戸惑ってしまうというところだろうか。
標準的なFEM参考書では、FEM理論の拠り所とする基本原理の解説箇所で変分学やベクトル解析が使われるのに始まり、多項式の数学、多次元の積分、行列代数と多くの数学が登場する。数学を避けたく思っているFEMユーザーが、こんな本を手にすれば、最初に登場してくる基本原理の章で退いてしまいかねない。しかし、FEMユーザーが、こんな数学を深く知る必要はない、と私は思う。
ユーザーの立場であっても、FEMで使われている数学について知っておくことは、たしかにFEMの理解を深めるだろうし、解析トラブル時の手助けになることは間違いない。ただ、それらの数学知識はサマリーを理解しておけばいいのであって、ディーテイルまで知る必要はないと思う。すなわち、FEMユーザーに必要な数学は公式的理解で済むはずである。
それでも、あえて推奨しておきたい数学があるとすれば、それは二つある。一つは、要素剛性マトリックスの積分に使われている積分の数学です。これは、そんなに難しく思う内容ではないはずだ。もう一つは、連立方程式の解法の数学である。係数マトリックスの対角項が最初からゼロになっていることは、どういうことを意味するのか、また、消去途中で対角項がゼロになるとは、何を意味するのかを考えてみることである(本エッセイ第36話参照)。
先に、FEM開発者では数学が必要と言ってしまったが、実は弾性力学の分野において、FEMの出現が研究者、開発者を随分と数学の負担から解放してくれた現実もあるのである。19世紀前半、ナヴィエ、コーシーに始まる数理弾性学は20世紀中葉まで延々と続いてきた。歴史に名を残すような数理工学の天才たちの数学センスを活かした活躍の累積が、現在、我々がみることのできる弾性学なのである。その世界は、数学センスを持ち合わせない凡人が近寄ることを拒絶するような雰囲気すら感じることもある。
20世紀後半、FEMが登場するや、標準的手続きをマスターさえすれば、昔、偉大な先人たちが挑戦していた弾性学の問題を、貧弱な数学力しか持たない凡人にも参画できるようになったともいえるのである。シェル要素や非線形問題では、たしかに難しい数学が待ち受けているが、現在、設計者の多くが利用している標準的なFEMでは、開発者サイドでも、そんなに高度な数学は必要としていない。
以下、数学が得意でもないのに、どういうわけか数学物語が好きな筆者ゆえ、数学のことを話しだすと、ちょっと止まらないので、数学の雑談を続けることにする。
数学には、大きく分けて二つあるというのが筆者の持論である。そんなことを言えば、読者は、すぐ“純粋数学”と“応用数学”のことだろう、と思われるでしょうが、そうではない。
その一つとは、どう挑もうが、どう足掻こうが、全く歯が立たない数学のことだ。持って生まれたセンスがものをいうこの数学を“センス型数学”と呼んでみたい。もう一つは、努力と根気で勉強を続けていけば、いずれなんとか理解できる範囲の数学のことである。こちらは“努力型数学”と呼んでみる。純粋数学、応用数学の絡みで言えば、センス型数学は、整数論を代表とする純粋数学や抽象数学の分野のことである。また、応用数学の大部分もそれに該当するのではと思う。努力型数学は、応用数学の一部だ。工学系の人間が教育現場でトレーニングさせられるのは後者の数学と思っている。
話の都合上、努力型数学を別名、そのレベルの高低差により、昔懐かしい“数Ⅰ”、“数Ⅱ”の名称を借用して呼んでみることにする。すると、センス型数学は“数Ⅲ”になるかな。本エッセイの多くの読者が工学系であることを推測して、数Ⅲは神棚に祀り上げておく。
筆者は、FEMユーザーがFEMを勉強するのに、それほど数学の知識は必要ないと言った。だが、そのFEMが適用対象としている弾性体の力学を本格的に勉強するには、―ユーザーの立場では、実際には弾性学の成果を公式的に理解するだけで済むが―数学の知識が必要だ。
読者の中には、これから弾性力学を学習しようとしている学生さんもおられるだろうから、ここで、ちょっと、筆者の独断と偏見で、弾性力学の勉強と数学の関係をガイドしてみることにする。
弾性力学の中でも、梁構造の力学が中心の標準的材料力学では、定数係数の微分方程式の解法を扱う数Ⅰレベルの数学で済むだろう。2次元、3次元の連続体の弾性力学を勉強するには、変数係数の微分方程式の数学から生まれた、ベッセル関数、ルジャンドル関数といった高等関数の知識も必要となる局面もあり、これは数Ⅱあるいは数ⅡBレベルの数学だと思う。そのつもりで勉学に励んでほしい。
2009年10月記