書評
菊地文雄 著 『数値計算の誤差と精度』(丸善出版,2022)
2023年06月29日
及川 一誠
おいかわ いっせい
筑波大学
本書は,数値計算法の動作原理や根底にある考え方を説明することを目的とした解説書である.読者が数値計算法の実際の挙動や精度を理解できるように,様々な数値計算例が示されている.ただし,誤差評価の証明などの数学的にテクニカルな話題は省略されている.
第1章から第6章まではNewton法やRunge-Kutta法などの基礎的な数値計算法を扱い,残りの第7章から第9章においては有限要素法を中心とした偏微分方程式の数値計算を取り上げている.これらの中からいくつか章をピックアップして紹介する.
第1章 数の表現と計算機誤差
本書では浮動小数点数に関する丸め誤差や桁落ちなどの誤差を総称して「計算機誤差」と呼んでいる.第1章ではこの計算機誤差への対処法について,概要が述べられている.通常の数値計算では単精度あるいは倍精度浮動小数点数が用いられることほとんどであるが,本書では4倍精度も積極的に使われているのが特徴的である.
第2章 反復法
本章では,非線形方程式に対する反復法として主にNewton法について解説されている.Newton法は方程式の解の十分近くでは非常に速く収束することが理論的に示されているが,解から離れたところでの大域的挙動は複雑で,実際に計算してみないとわからない.発散することもあるし,収束するにしても大きく振動したりして,予想外に多くの反復回数を要することもある.そのようなことが数値例として示されている.
第3章 連立1次方程式
連立1次方程式の数値解法としてGaussの消去法とCG法(共役勾配法)が取り上げられている.同一の例題に対して,Gaussの消去とCG法を用いて実際に数値計算した結果が示されている.計算機誤差の数値解への影響は複雑であり,理論的に正確に調べることは難しいが,浮動小数点数の精度を単精度,倍精度,4倍精度と変えながら数値実験をすることである程度の傾向が見えてくる.
第7章 差分法と有限要素法の基礎
1階および2階の偏微分方程式に対して,差分法と有限要素法による数値計算法の説明と数値例が示されている.Poisson方程式に対する数値計算例では,固定された1点における誤差に関して,メッシュサイズに関する対数因子が関係していることが示されていて興味深い.本書にも書かれているとおり,有限要素解の最大値ノルムに関する誤差評価式として対数因子が含まれるものが知られている.このような理論的な結果を知らずに誤差を見ただけでは対数因子の存在に気づくことは難しい.数値計算結果を注意深く慎重に観察することの大切さを再認識させられる.
第8章 有限要素法における各種の話題
質量行列の集中化やロッキング,次数低減積分など,有限要素法の数値計算を実行する際に重要となる項目について解説が行われている.本章の後半では2次元Poisson方程式の軸対称問題も取り上げられていて,極座標変換により1次元の有限要素法で解くことができることが説明されている.この軸対称問題でも,第7章で現れた対数因子が原点における誤差において観測されている.
このように,本書は全体を通して,数値計算法に関する本質的かつ実用的な知見が数値例とともに詳しく記述されている.結果として,本書は数値計算ユーザーに幅広くおすすめできる内容になっている.理論的な詳細は本書の性格上省略されてはいるものの,根底にあるのは数値計算法への理論的関心であることは明らかで,理論家にとっても興味深く読めるのではないかと考える.