現代數值分析

現代數值分析

《現代數值分析(MATLAB版)》是馬昌鳳編寫,國防工業出版社出版的一部適合數學與套用數學、信息與計算科學、計算機科學與技術以及統計學專業等本科生“數值分析”課程的教材或教學參考書。

前言

科學計算技術是計算機套用的一個重要方面,數值分析主要介紹在計算機上求解數值問題的計算方法的建立、理論及套用。通過教學使學生具備數值分析的基礎知識與技能,為以後進一步從事科學計算方面的學習、研究和套用打下基礎。要求學生牢固掌握基本概念、基本理論和方法建立的原理、掌握科學與工程計算中常用計算方法的構造及誤差分析,討論方發穩定性、複雜性等,並將算法設計與計算機的實現緊密相結合,提高在計算機上角題的技巧與能力。這就要求精選教材內容同時滿足學生實踐創新能力的培養。

本教材堅持以學生為本,知識傳授、能力培養、素質提高、協調發展的教育理念和以能力培養為核心的實驗教學體系,從根本上改變數值計算方法教學偏重於理論教學的傳統觀念,重視實驗教學,充分認識並落實實驗教學在理工科人才培養和實踐教學工作中的地位,形成理論教學與實驗教學既相對獨立又有機結合的教學模式。教材的出版將大力促進數值計算方法的教學改革,充分發揮計算實驗教學在培養學生能力和提高學生素質的重要作用。

目前數學與套用數學專業和信息與計算科學專業學生使用數值計算方法教材存在的主要問題是:教材偏重於理論分析,學生學完本課程後仍然不能動手編程解決一些簡單的數值計算問題。

本書深入淺出地介紹了現代數值計算的基本理論與方法,詳述了各種實用算法的基本原理和Matlab編程實現,實際操作示例多,學習者容易掌握各類問題的數值方法的理論分析和實際套用,以達到學以致用的目的。具體地說:(1)在保持本課程體系完整性的前提下,刪繁就簡,講述數值分析中最重要最基礎的理論與方法(而不是羅列所有的算法),它們是研究各種複雜的數值計算問題的基礎和工具。(2)全書根據給定算法採用當前最流行的數值分析軟體 MATLAB進行編程,所給各算法的通用程式都可以直接套用於實際計算。所有MATLAB程式都在計算機上經過調試和運行,簡潔而不乏準確。(3)本書所給的每一通用程式之後都提供了相應的計算實例。這不僅能幫助學生理解程式里所包含的數值分析理論知識,而且對培養學生處理數值計算問題的能力也大有裨益。(4)全書每章都配備了一定數量的習題,習題分為理論分析題和上機實驗題,以加強學生對所學知識的理解和鞏固。(5)提供與紙質教材配套的多媒體課件和算法程式。

目錄

第1章 現代數值分析引論

1.1 數值分析的研究對象

1.2 數值算法的基本概念

1.3 誤差的基本理論

1.3.1 誤差的來源

1.3.2 絕對誤差和相對誤差

1.3.3 近似數的有效數字

1.4 數值算法設計的若干原則

習題1

第2章 非線性方程的求根方法

2.1 二分法

2.1.1 二分法及其收斂性

2.1.2 二分法的MATLAB程式

2.2 疊代法的基本理論

2.2.1 疊代法的基本思想

2.2.2 收斂性和誤差分析

2.3 疊代法的加速技巧

2.3.1 疊代法加速的基本思想

2.3.2 Aitken加速公式

2.4 牛頓法

2.4.1 牛頓法及其收斂性

2.4.2 牛頓法的MATIAB程式

2.4.3 重根情形的牛頓法加速

2.5 割線法

2.5.1 割線法的疊代公式

2.5.2 割線法的MATLAB程式

2.6 方程求根的MATLAB解法

2.6.1 MATLAB函式fzero

2.6.2 MATLAB函式fsolve

習題2

第3章 線性方程組的直接解法

3.1 高斯消去法

3.1.1 順序高斯消去法及其MATLAB程式

3.1.2 列主元高斯消去法及其MATLAB程式

3.2 Lu分解法

3.2.1 一般LU分解及其MATLAB程式

3.2.2 列主元LU分解及其MATLAB程式

3.3 兩類特殊方程組的解法

3.3.1 對稱正定方程組的喬列斯基法

3.3.2 三對角線性方程組的追趕法

3.4 直接法的捨入誤差分析

3.4.1 向量範數和矩陣範數

3.4.2 捨入誤差對解的影響

3.5 線性方程組的MATIAB解法

3.5.1 利用左除運算符求解線性方程組

3.5.2 利用矩陣求逆函式解線性方程組

3.5.3 利用矩陣LU分解函式解線性方程組

3.5.4 利用喬列斯基分解函式解對稱正定方程組

習題3

第4章 線性方程組的疊代解法

4.1 疊代法的一般理論

4.1.1 疊代公式的構造

4.1.2 疊代法的收斂性和誤差估計

4.2 三種經典疊代法

4.2.1 雅可比疊代法及其MATLAB程式

4.2.2 高斯一賽德爾疊代法及其MATLAB程式

4.2.3 逐次超鬆弛疊代法及其MATLAB程式

4.2.4 三種經典疊代法的收斂條件

4.3 現代變分疊代法

4.3.1 最速下降法及其MATLAB程式

4.3.2 共軛梯度法及其MATLAB程式

4.3.3 廣義極小殘量法及其MATIAB程式

4.3.4 預處理技術及預處理共軛梯度法

習題4

第5章 插值法與最小二乘擬合

5.1 插值法的基本理論

5.1.1 插值多項式的概念

5.1.2 插值基函式

5.1.3 插值多項式的截斷誤差

5.2 拉格朗日插值法

5.2.1 拉格朗日插值基函式

5.2.2 拉格朗日插值及其MATLAB程式

5.3 牛頓插值法

5.3.1 差商及其性質

5.3.2 牛頓插值公式

5.3.3 牛頓插值法的MATLAB程式

5.4 厄爾米特插值及分段插值

5.4.1 兩點三次厄爾米特插值

5.4.2 高階插值的Runge現象

5.4.3 分段線性插值及其MATLAB程式

5.4.4 分段三次厄爾米特插值

5.5 三次樣條插值法

5.5.1 三次樣條插值函式

5.5.2 三次樣條插值的MATLAB程式

5.6 曲線擬合的最小二乘法

5.6.1 最小二乘法

5.6.2 法方程組

5.6.3 多項式擬合的MATLAB程式

5.6.4 正交最小二乘擬合

5.7 插值和擬合的MATLAB解法

5.7.1 數據插值的MATLAB函式

5.7.2 曲線擬合的MATLAB函式

習題5

第6章 數值積分和數值微分

6.1 幾個常用的求積公式

6.1.1 插值型求積公式

6.1.2 代數精度

6.1.3 幾個常用的求積公式

6.2 復化求積公式

6.2.1 復化中點公式及其MATLAB程式

6.2.2 復化梯形公式及其MATLAB程式

6.2.3 復化辛普森公式及其MATLAB程式

6.3 外推加速技術與龍貝格求積公式

6.3.1 變步長梯形算法及其MATLAB程式

6.3.2 外推法與龍貝格求積公式

6.3.3 龍貝格加速公式的MATLAB程式

6.4 高斯型求積公式及其MATLAB實現

6.4.1 高斯型求積公式

6.4.2 高斯公式的MATLAB程式

6.5 數值微分法

6.5.1 插值型求導公式

6.5.2 兩點公式和三點公式

6.6 數值微積分的MATIAB解法

6.6.1 數值積分的MATLAB函式

6.6.2 數值微分的MATLAB函式

習題6

第7章 矩陣特徵值問題的數值方法

7.1 矩陣的有關理論

7.2 乘冪法

7.2.1 乘冪法及其MATLAB程式

7.2.2 乘冪法的加速技術

7.2.3 反冪法及其MATLAB程式

7.3 雅可比方法

7.3.1 實對稱矩陣的旋轉正交相似變換

7.3.2 雅可比方法及其收斂性

7.3.3 雅可比方法的MATIJAB實現

7.4 QR方法

7.4.1 Householder變換

7.4.2 化一般矩陣為上Hessenberg矩陣

7.4.3 上Hessenberg矩陣的QR分解

7.4.4 基本QR方法及其MATIAB程式

7.5 特徵值問題的MATLAB解法

習題7

第8章 常微分方程的數值解法

8.1 歐拉方法及其改進

8.1.1 歐拉公式和隱式歐拉公式

8.1.2 歐拉公式的改進

8.1.3 改進歐拉公式的MATLAB程式

8.2 龍格一庫塔公式

8.2.1 龍格一庫塔法的基本思想

8.2.2 龍格一庫塔公式

8.2.3 龍格一庫塔法的MATI.AB程式

8.3 收斂性與穩定性

8.3.1 收斂性分析

8.3.2 絕對穩定性

8.4 亞當斯方法

8.4.1 幾個常用亞當斯公式的推導

8.4.2 四階亞當斯公式的MATLAB程式

8.5 一階微分方程組和高階微分方程

8.5.1 一階常微分方程組

8.5.2 高階常微分方程

8.6 常微分方程的MATIAB解法

習題8

第9章 蒙特卡洛方法簡介

9.1 蒙特卡洛方法的基本原理

9.1.1 蒙特卡洛方法與隨機模擬實驗

9.1.2 機率論的相關基礎理論

9.1.3 蒙特卡洛方法的基本特徵

9.2 隨機數與隨機變數的抽樣

9.3 蒙特卡洛方法的套用實例

9.3.1 用蒙特卡洛方法求解非線性方程組

9.3.2 用蒙特卡洛方法求解非線性規劃

9.3.3 用蒙特卡洛方法計算定積分和重積分

習題9

附錄A 數值實驗

A.1 數值實驗報告的格式

A.2 數值實驗

附錄B 習題參考答案及提示

參考文獻

相關詞條

熱門詞條

聯絡我們