FEMINGWAY 〜有限要素法解析など構造設計にまつわる数理エッセイ〜

第41話 タバコの葉に潜む煙

工科系の数学では微積分学と線形代数は両横綱であると、長い間思われてきたことは疑いない。しかし、異論が出るのを覚悟して言えば、コンピュータの出現によって、現在では線形代数こそ王者の位置を確保したのでは、と筆者はひそかに思うのだが、どうであろう。

もはや、高等数学を駆使して微分方程式を解析的に解くという手法に代わって、計算力学や計算幾何学といったように数値解析的なアプローチが主流になってきたからである。その意味では、昔のように抜群の数学センスを持った天才たちしか近づけなかった工学問題にも、われわれ凡人も参画できる時代になったと言えるかもしれない。

数学屋さんには叱られるかも知れないが、線形代数を行列代数と置き換えてみると、そこには大きな2つのテーマがあり、一見独立しているように見える。

1つは係数行列の形が長方形であることも含めた、連立方程式の解法を基本とした理論の輪であり、もう1つは行列の固有値を求めることを基本テーマとする理論の輪である。前者は行列の三角分解へのアプローチが中心であり、後者は行列の直交行列化へのアプローチが中心テーマである。大まかな学習なら、別にお互いの知識を知らなくても、個別のテーマを学習できそうにも思える錯覚に陥る。ある数学者に言わせると、この2つの輪の橋渡しをするのが、行列式という脇役だと言う。昔の線形代数の教科書では、行列式が主役を演じていた時代もあったらしい。

ここでは、固有値解析がテーマである。下にある固有方程式をじっと見てほしい。

41-a

ベクトル X にある作用素 A を働かせると――一般にはベクトルに何らかの作用を働かせるとベクトルの大きさの伸縮と同時にベクトルの方向も変わってしまうものだが――ある特別の場合だけは、方向が自分自身が持っていた方向から変化せず、大きさだけが伸縮するだけとなる。そのときの伸縮を表すのが λ であり、これを“固有値”と呼ぶ。

ところで、この固有値のことを日本では“Eigenvalu”という西欧語でよく呼んでいる。実はこの言葉、不思議な言葉なのである。前半の“Eigen”はドイツ語であり、後半の“Valu”はもちろん英語であるという混成語になっている。この言葉の源泉であるドイツ語での固有値は“Eigenwert”と言うらしい。

混成語は極めて珍しいと思っていたのだが、探せばあるものだ。昔、よく使われていた“バックシャン”という言葉も英語とドイツ語の混成だ。後半のシャンは美人を意味するドイツ語の“Shöne(シェーン)”から来ているらしい。

閑話休題。自分自身の方向を保つという意味では、英語の“Own”が使用されて“Ownvalue”と呼ばれてもよかったはずなのに、そうはならなかった。

Eigenvalu という用語の物語については、九州大学におられる藤野清次教授による非常に興味深い調査文献がある1 。この文献によると、Eigenvalu がよく使用されだしたのは比較的最近のことで、戦後からだという。それまでの英語圏の人たちの間では、固有値を表す用語として、“Characteristic Valu(特性値)”とか“Latent Root(隠れた根)”というのが使用されていたという。この後者の用語につては、面白いエピソードも本文献で紹介されている。

41-b

“行列”という用語を創始した一人だといわれている、姉妹エッセイ、“理系夜話”の第24話にも登場願ったシルベスターが、「行列の固有値とはタバコの葉に潜む煙のようなものだ」と言ったという。たしかに、元の行列をいくら眺めていても固有値がわいてこないから、この表現は言い得て妙である。そういえば、非線形熱伝導問題の中の1つである相変化問題、すなわち、凝固/融解問題での潜熱も英語では“Latent Heat”ということを思い出す。

さて、この固有値を数値的に求めようとする時、われわれ工科系の人間は少したじろぐことになる。連立方程式の解法におけるガウスの消去法のような標準的、安定的手法が固有値解析には見当たらない。プログラムも複雑になるためか、有限要素法をはじめ解析プログラムを自分で開発する人でも、固有値計算に関しては既成の数学ライブラリーを利用しているケースが多々見受けられる。

筆者自身の経験でも、固有値解析の数学ライブラリーを探していて、ベクトル反復法、逆反復法、ヤコビ法、QR 法、QL 法、ギブンズ法、ハウスホルダー法…と、うんざりするほどのサブルーチンが用意されているのを知り、一体どれを使用したらいいのかと、迷った学生時代のことを思い出す。この多さが、固有値解析が一筋縄でいかないことを物語っている。結局、解析対象の問題の物理的内容に応じて選択するしかないわけである。

構造解析分野で固有値解析が必要な場面は、特殊な局面での利用を除けば通常、次の3つがある。

  • 主応力計算
  • 固有振動解析
  • 線形座屈解析

1の主応力計算は2次元問題では特に問題ないが、3次元の場合、固有方程式が3次方程式になり、まともに方程式を解こうとすると、結構厄介である。幸い、この場合、三角関数の公式を利用したうまい方法があって助かる。問題は次元が大きいマトリックスを対象とする2と3の場合である。

有限要素法を使用した、一般的な構造解析では何万元、何十万元のマトリックスを対象とする。こんな大次元マトリックスの固有値解析を完璧にこなす解法なんて、この世の中には存在しない。また、その必要もない。一般に、工学問題では、最小固有値から必要な数の高次固有値を求めれば充分であることが多いからである。こうした物理的背景を利用した解法も開発されている。

大型マトリックスの固有値解析ではサブスペース法とランチョス法が代表的数値解法として知られている。両者とも元のモデル規模である N 次元空間から部分空間に次元を落としてから固有値を求める手法である。

ところで、数値解析の分野でも流行があるみたいである。連立方程式の解法で反復法が復活すると、ICCG 法(不完全コレスキー分解前処理付共役勾配法)がやたらと使用されるし、固有値解析でも最近は、ランチョス法の採用が多い。

面白いことに、以前は乗算の多さで誤差が出現しやすい、ということで共役勾配法が敬遠されていたのに対をなすかのように、ランチョス法も丸め誤差のため計算途中で直交ベクトルの直交性が崩れやすいことが指摘されていた。

そんなことで、構造解析分野でも大型の問題を対象とするプログラムではサブスペース法が多く採用されていたが、近年は、再直交化処理を組み込んで復活を図ったランチョス法が多くなっている。たしかに、サブスペース法が多数の初期ベクトルを用意する必要があるのに対して、ランチョス法は1本の初期ベクトルの準備で済む利点があるが、それよりも最大の原因は計算の収束速度が早いという最近の報告があるからかもしれない。

以下は余談。

筆者はランチョス(Lanczos Korne;牙1893-1974)という名を知ったとき、呼び名からてっきりロシアあたりの数学者かと思っていたが、ハンガリー出身だった。またもやハンガリー!(理系夜話、第18話参考)。

この人、数学的才能がすばらしく、一時はアインシュタインの助手を勤めた経歴も持っている。当時の先端物理学の方面にも大いに関心を持ち、量子力学における有名な“シュレーディンガーの波動方程式”も、その先駆を成す考えを公表していたという。また、今では“ディラックの δ 関数”と呼ばれている数学もディラックに先駆けて使用していたそうだ。

ヨーロッパ大陸でのユダヤ人迫害を避けてランチョスはアメリカに渡るが、1930年代当時のアメリカでは純粋数学や物理学で生計を立てていくことは困難であった。そこで彼は応用数学方面に活路を見出すことになる。ボーイング社に入社して航空機の設計に必要な数値解析での効率化アルゴリズムを生産していくことになる。固有値解析でのランチョス原理もその一部である。後世のわれわれは、このときのランチョスの応用数学での成功に恩恵を蒙っているわけだが、彼自身の性向は数理物理学にあったようだ。

2006年11月記

  1. 「ドイツ語“eigen”を含む混種語“Eigenvalu”に関する究明」藤野清次著 []

Advertisement

コメントを残す

ページ上部へ