EIGRL (Lanczos 法) と EIGRA (AMSES 法) の違いを説明します。
始めに
ややこしいことに Lanczos 法と AMSES 法は同じとも違うとも言えます。私は残念ながら数式を用いて詳しく説明することはできませんが、何となくイメージをつかんでいますので、それをなんとか分かりやすく説明したいと思います。
原理的には等価?
まず、原理的には両者は同じです。Lanczos 法は剛性行列、質量行列に対して直接的に固有計算を行います。AMSES 法は、いったん剛性行列、質量行列を細かく分けて、それぞれの領域で固有モードを算出し、それらの固有モードの重ね合わせで元の全体の(モード空間内での)剛性行列、質量行列を作り直して、それに対して固有計算を行います。
どんな形のカーブであっても、必ず複数の独立した波の重ね合わせで表現できるというのは皆さんご存じだと思います。いわゆるモード合成法というものですね。AMSES が作り直した行列は、Lanczos が計算していたもともとの行列と、数学的には等価であるということです。つまり、得られる固有モードも(数学、原理の段階では)同じです。
コンピュータ演算プログラム的には別物
しかし、ややこしいのですが、OptiStruct の機能として実装されているものは、Lanczos と AMSES で異なります。なぜなのか説明します。先ほど、実際に描かれたカーブと、独立した波の重ね合わせは等価である、と言いましたが、これには条件があります。波を重ね合わせを等価にするためには、ありとあらゆる波を用意する必要があります。用意した波が少なければ、元のカーブに対する表現力はどうしても落ちます。
実は AMSES はあえて、用意するモードの数を減らしています。微小領域で高周波帯のモードをバッサリ切り捨てます。ですので、モード合成で作り直した全体の剛性行列は Lanczos が使うロスのない行列に比べると表現力が落ちています。ですので、Lanczos の固有計算が正しいとすると、AMSES の固有計算は正しくない、近似的なものと言えます。しかし、AMSES がモード剛性で作り直す行列はぎゅっと小さいので、計算速度は、圧倒的に速くなります。
精度の Lanczos, 速さ の AMSES、どっちを使う?
どっちが良いのか、という私なりの考えを述べる前に、少し脱線します。
ここまでの話から、Lanczos, AMSES の精度、計算速度の話って、直接周波数応答解析と、モーダル周波数応答解析の違いに似ていると思いませんか?私の感覚的には、同じ話だと思います。直接周波数応答は、元の行列を直接解くから時間はかかるけど正確ですが、モーダル周波数応答は、高周波帯のモードを切り捨てるので、計算速度は出ますが、正確ではないです。
つまり、普段から周波数応答解析をモーダル法で行っているのであれば、普段から、高周波帯のモードを切り捨てることによる精度の劣化は受け入れていることになります。ですので、この場合、AMSES の誤差も、普段から受け入れている誤差の一つと考えて良いのではないでしょうか?逆に、AMSES なら Lanczos より短い時間で、より多くのモードを抽出することも可能なので、モード数の面でなら有利にすることもできます。
一方、普段からモード合成法は信用ならん、直接法で正確に周波数応答解析を行っている、というのであれば AMSES を選ぶことはできないでしょう。
もちろんこれは私の感じ方です。何か、考え方の参考になれば幸いですが、最終的な選択は、ユーザーのみなさまご自身の意思で、ご決定ください。