C/C++数値計算アルゴリズムブック
(ディスク付)

ナミール・シャンマ 著
鈴木治郎(信州大学医療技術短期大学部助教授) 訳
B5・328頁・定価(本体4,600円+税)
ISBN4-303-72530-7
初版1997年4月発行/第2版2001年11月発行

amazonの紹介ページへbk1の紹介ページへ

 概 要
この本の特徴の一つは何といっても数値計算に関するC++ソースコードを多くとりあげていることです。だからといってこの本で述べてあるすべてのプログラムがC++で書かれているわけではありません。賢明なる読者はこの一言でこの本の美点に気づいていただけたと思います。

そうです。C++の有するオブジェクト化の技術は、アプリケーションにとって不要な点を隠すことにおいてその力をおおいに発揮します。ところが数値計算の多くはアルゴリズム的展開をプログラミング言語上に実現しているわけで、C++で表したからといって必ずしも利便性は発揮できないのです。その点について、この本の著者はメリットのあるプログラムについてのみC++ソースコードを述べるという良識ある態度を示しているのです。

もう一つのこの本の特徴をあげると、それはほとんどの数値計算アルゴリズムに対して擬似コードをあげていることです。「擬似コード」というと馴染みのない読者も多いかも知れませんが、特別なプログラミング言語に依存することなくアルゴリズムの本質的な点を説明したい、そうした目的に用いられるのが本書に書かれた擬似コードです。この擬似コードによる説明によって、読者のみなさんが各種のC/C++ソースコードがどのように働いているのか、という点を明快に理解することを助けることでしょう。

数学の苦手な読者の多くが直面する問題、つまり数式で書かれた計算したい事柄とそれを表すソースコードとのギャップを埋める問題、これを可能にするのが本書を通じて書かれている擬似コードであり、本書を学習されることで読者は「数式をプログラムに変えるにはこうすればいいのか!」といった感覚を身に着けることができるでしょう。(「訳者まえがき」より)

なお、添付ディスクには本書に掲載されている全ソースコードが収録されている。
 
 目 次
Chapter 1 同次線形方程式
      1.1 GLOBAL.Hファイル
      1.2 一般のベクトルと行列
      1.3 ガウス(Gauss-Jordan)の消去法
      1.4 ガウス-ザイデル(Gauss-Seidel)法
      1.5 LU分解法
      1.6 Cソースコード
      1.7 C++ソースコード
      1.8 Cテストプログラム
      1.9 C++テストプログラム

Chapter 2 非線形方程式の解法
      2.1 二分法
      2.2 ニュートン法
      2.3 リッチモンド法
      2.4 複合解法
      2.5 複数解を与えるニュートン法
      2.6 減次多項式法
      2.7 ベアストウ-ヒッチコック法
      2.8 複数の非線形方程式を解く
      2.9 複数の方程式のためのニュートン法
      2.10 C関数

Chapter 3 補間法
      3.1 ラグランジュ補間法
      3.2 加重平均補間法
      3.3 ニュートン補間法
      3.4 等間隔値ニュートン差分法
      3.5 三次スプライン補間法
      3.6 Cソースコード

Chapter 4 数値微分法
      4.1 前進/後退差分法
      4.2 中心差分法
      4.3 拡張された中心差分法
      4.4 Cソースコード

Chapter 5 数値積分
      5.1 シンプソン公式
      5.2 ガウス型積分公式
      5.3 ガウス-ルジャンドル積分公式
      5.4 ガウス-ラゲール積分公式
      5.5 ガウス-エルミート積分公式
      5.6 ガウス-チェブシェフ積分公式
      5.7 ロンバーグ法
      5.8 Cソースコード

Chapter 6 常微分方程式を解く
      6.1 ルンゲ-クッタ法
      6.2 ルンゲ-クッタ-ギル法
      6.3 ルンゲ-クッタ-フェルバーグ法
      6.4 Cソースコード

Chapter 7 最適化
      7.1 二分法
      7.2 ニュートン法
      7.3 黄金分割探索法
      7.4 二次補間法
      7.5 三次補間法
      7.6 シンプレックス法
      7.7 繰り返し最適化のニュートン法
      7.8 Cソースコード
      7.9 テストプログラム

Chapter 8 基礎統計学
      8.1 平均値と標準偏差
      8.2 信頼区間
      8.3 四次までのモーメント
      8.4 標本平均値の検定
      8.5 Cソースコード
      8.6 C++ソースコード
      8.7 Cテストプログラム
      8.8 C++テストプログラム

Chapter 9 分散分析(ANOVA)
      9.1 一元配置分散分析
      9.2 二元配置分散分析
      9.3 繰り返しを持つ二元配置分散分析
      9.4 ラテン方格分散分析
      9.5 共分散分析
      9.6 Cソースコード
      9.7 C++ソースコード

Chapter 10 線形回帰
      10.1 基本的線形回帰
      10.2 線形回帰
      10.3 予測値に対する信頼区間
      10.4 回帰係数に対する信頼区間
      10.5 回帰を与えるアルゴリズム
      10.6 自動最適化
      10.7 Cソースコード
      10.8 C++ソースコード

Chapter 11 重回帰と多項式回帰
      11.1 重回帰
      11.2 Cソースコード
      11.3 C++ソースコード
      11.4 Cテストプログラム
      11.5 C++テストプログラム
      11.6 多項式回帰分析
      11.7 Cソースコード
      11.8 C++ソースコード
      11.9 Cテストプログラム
      11.10 C++テストプログラム

Chapter 12 関数ライブラリ
      12.1 STATLIBライブラリ
      12.2 正規分布
      12.3 逆正規分布
      12.4 スチューデントt分布
      12.5 逆スチューデントt分布
      12.6 F分布
      12.7 逆F分布
      12.8 数学関数ライブラリ
      12.9 組み合わせと順列関数
      12.10 ガンマ関数とベータ関数
      12.11 誤差関数
      12.12 サイン積分とコサイン積分関数
      12.13 ラゲール、エルミートとチェビシェフ多項式
      12.14 ベッセル関数


情報(プログラミング)のページへ
トップページ
弊社へ直接ご注文の場合はこちらから