工程與科學數值方法的 MATLAB 實現, 4/e (Applied Numerical Methods with MATLAB for Engineers and Scientists, 4/e)

[美] Steven C. Chapra 著 林賜 譯

  • 工程與科學數值方法的 MATLAB 實現, 4/e (Applied Numerical Methods with MATLAB for Engineers and Scientists, 4/e)-preview-1
  • 工程與科學數值方法的 MATLAB 實現, 4/e (Applied Numerical Methods with MATLAB for Engineers and Scientists, 4/e)-preview-2
  • 工程與科學數值方法的 MATLAB 實現, 4/e (Applied Numerical Methods with MATLAB for Engineers and Scientists, 4/e)-preview-3
工程與科學數值方法的 MATLAB 實現, 4/e (Applied Numerical Methods with MATLAB for Engineers and Scientists, 4/e)-preview-1

買這商品的人也買了...

商品描述

全書共分6大部分。第1部分介紹數值方法的背景知識、MATLAB的軟件環境和編程模式,後5部分集中介紹數值方法的主要應用領域,具體包括求根與最大化、線性代數方程組的求解、曲線擬合、數值積分與微分以及常微分方程數值解。本書不但介紹各類數值方法的基本原理和基於MATLAB的實現,而且非常註重實際應用和計算能力的訓練,除了針對基本內容給出相應的典型實例外,還在每章的末尾提供大量實用的習題,有助於讀者進一步鞏固所學的知識。 ◆ 以關鍵概念(如泰勒級數、收斂、條件數等)闡述理論 ◆ 使用MATLAB的M文件表示算法,插圖與表格清晰而準確 ◆ 廣泛使用實例演示以及工程和科學應用案例,使學生清楚地把握數值計算的每個步驟 ◆ 各章末尾的習題豐富而實用,最新版新增了一些更具挑戰性的習題

目錄大綱

目  錄

第Ⅰ部分  建模、電腦與誤差分析

第1章  數學建模、數值方法與問題

求解   3

提出問題   3

1.1  一個簡單的數學模型   4

1.2  工程與科學中的守恆律   10

1.3  本書中涉及的數值方法   13

1.4  案例研究   15

1.5  習題   17

第2章  MATLAB基礎   29

提出問題   29

2.1  MATLAB環境   30

2.2  賦值   31

2.2.1  標量   31

2.2.2  數組、向量和矩陣   33

2.2.3  冒號操作符   35

2.2.4  linspace和logspace函數   36

2.2.5  字符串   36

2.3  數學運算   38

2.4  使用內置函數   42

2.5  繪圖   45

2.6  其他資源   49

2.7  案例研究:探索性數據

分析   49

2.8  習題   51

第3章  編寫MATLAB程序   59

提出問題   59

3.1  M文件   60

3.1.1  腳本文件   60

3.1.2  函數文件   61

3.1.3  變量的作用域   63

3.1.4  全局變量   64

3.1.5  子函數   66

3.2  輸入/輸出   67

3.3  結構化編程   71

3.3.1  決策   71

3.3.2  循環   79

3.3.3  動畫   83

3.4  嵌套與縮進   85

3.5  將函數傳入M文件   88

3.5.1  匿名函數   88

3.5.2  函數函數   89

3.5.3  傳遞參數   92

3.6  案例研究:蹦極運動員的速度   93

3.7  習題   97

第4章  舍入與截斷誤差   111

提出問題   111

4.1  誤差   112

4.1.1  準確度與精度   112

4.1.2  誤差定義   113

4.1.3  迭代計算的電腦算法   116

4.2  舍入誤差   118

4.2.1  電腦中數的表示   118

4.2.2  電腦中數的算術運算   123

4.3  截斷誤差   125

4.3.1  泰勒級數   125

4.3.2  泰勒級數展開的餘項   129

4.3.3  用泰勒級數估計截斷誤差   131

4.3.4  數值差分   132

4.4  總數值誤差   136

4.4.1  數值微分的誤差分析   137

4.4.2  數值誤差的控制   139

4.5  粗差、模型誤差和數據不確定性   140

4.5.1  粗差   140

4.5.2  模型誤差   141

4.5.3  數據不確定性   141

4.6  習題   141

第Ⅱ部分  求根與最優化

第5章  求根:劃界法   149

提出問題   149

5.1  工程和科學領域中的求根問題   150

5.2  圖形法   151

5.3  劃界法與初始猜測值   153

5.4  二分法   157

5.5  試位法   163

5.6  案例研究:溫室氣體與雨水   166

5.7  習題   169

第6章  方程求根:開方法   177

6.1  簡單不動點迭代   178

6.2  牛頓-拉弗森方法   182

6.3  割線法   187

6.4  布倫特法   189

6.4.1  逆二次插值   189

6.4.2  布倫特法算法   191

6.5  MATLAB函數:fzero   193

6.6  多項式   195

6.7  案例研究:管道摩擦力   198

6.8  習題   202

第7章  最優化   213

提出問題   213

7.1  簡介與背景   214

7.2  一維最優化   216

7.2.1  黃金分割搜索   217

7.2.2  拋物線插值   222

7.2.3  MATLAB函數:fminbnd   224

7.3  多維最優化   225

7.4  案例研究:平衡與

極小勢能   227

7.5  習題   229

第Ⅲ部分  線性方程組

第8章  線性代數方程和矩陣   245

提出問題   245

8.1  矩陣代數概述   247

8.1.1  矩陣符號   247

8.1.2  矩陣的運算規則   249

8.1.3  將線性代數方程組表示成矩陣形式   256

8.2  用MATLAB求解線性代數方程組   257

8.3  案例研究:電路中的電流和電壓   258

8.4  習題   262

第9章  高斯消元法   269

9.1  求解小型方程組   270

9.1.1  繪圖法   270

9.1.2  行列式和克拉默法則   271

9.1.3  未知數消元法   274

9.2  樸素高斯消元法   275

9.2.1  MATLAB M文件:GaussNaive   278

9.2.2  運算次數   279

9.3  選主元   281

9.3.1  MATLAB M文件:GaussPivot   283

9.3.2  用高斯消元法計算行列式   284

9.4  三對角方程組   285

9.5  案例研究:熱桿模型   287

9.6  習題   290

第10章  LU分解   297

10.1  LU分解概述   298

10.2  高斯消元法與LU分解   299

10.2.1  使用選主元的LU分解   302

10.2.2  MATLAB函數:lu   304

10.3  楚列斯基分解   305

10.4  MATLAB的左除運算   308

10.5  習題   308

第11章  矩陣求逆和條件數   311

11.1  矩陣的逆   311

11.1.1  逆矩陣的計算   311

11.1.2  激勵-響應計算   313

11.2  誤差分析和方程組的條件數   315

11.2.1  向量和矩陣範數   316

11.2.2  矩陣條件數   317

11.2.3  用MATLAB計算範數和條件數   319

11.3  案例研究:室內空氣污染   320

11.4  習題   323

第12章  迭代法   329

12.1  線性方程組:高斯-賽德爾   329

12.1.1  收斂性與對角占優   332

12.1.2  MATLAB M文件:GaussSeidel   332

12.1.3  鬆弛法   333

12.2  非線性方程組   335

12.2.1  逐次代換法   336

12.2.2  牛頓-拉弗森方法   337

12.2.3  MATLAB函數:

fsolve   342

12.3  案例研究:化學反應   343

12.4  習題   345

第13章  特徵值   351

提出問題   351

13.1  數學背景   352

13.2  物理背景   356

13.3  冪方法   358

13.4  MATLAB函數:eig   360

13.5  案例研究:特徵值與

地震   362

13.6  習題   364

第Ⅳ部分  曲線擬合

第14章  線性回歸   373

提出問題   373

14.1  統計學回顧   374

14.1.1  描述統計學   375

14.1.2  正態分佈   377

14.1.3  用MATLAB計算描述統計學量   378

14.2  隨機數和模擬   380

14.2.1  MATLAB函數:rand   380

14.2.2  MATLAB函數:randn   383

14.3  線性最小二乘回歸   384

14.3.1  “最佳”擬合條件   385

14.3.2  直線的最小二乘擬合   386

14.3.3  線性回歸誤差的量化   388

14.4  非線性關系的線性化   392

14.5  電腦應用   396

14.5.1  MATLAB M文件:linregr   396

14.5.2  MATLAB函數:polyfit和polyval   398

14.6  案例研究:酶動力學   398

14.7  習題   402

 

第15章  一般線性最小二乘回歸和

非線性回歸   413

15.1  多項式回歸   413

15.2  多重線性回歸   416

15.3  一般線性最小二乘回歸   419

15.4  QR分解與反斜桿運算符   421

15.5  非線性回歸   422

15.6  案例研究:實驗數據擬合   424

15.7  習題   427

第16章  傅里葉分析   435

提出問題   435

16.1  使用正弦函數進行曲線擬合   436

16.2  連續傅里葉級數   442

16.3  頻域和時域   444

16.4  傅里葉積分和變換   447

16.5  離散傅里葉變換(DFT)   447

16.5.1  快速傅里葉變換(FFT)   449

16.5.2  MATLAB函數:fft   450

16.6  功率譜   452

16.7  案例研究:太陽黑子   453

16.8  習題   455

第17章  多項式插值   459

提出問題   459

17.1  插值法導論   460

17.1.1  確定多項式的系數   461

17.1.2  MATLAB函數:polyfit和polyval   462

17.2  牛頓插值多項式   463

17.2.1  線性插值   463

17.2.2  二次插值   465

17.2.3  牛頓插值多項式的一般形式   466

17.2.4  MATLAB M文件:

Newtint   469

17.3  拉格朗日插值多項式   470

17.4  逆插值   473

17.5  外插值和振盪   474

17.5.1  外插值   474

17.5.2  振盪   476

17.6  習題   478

第18章  樣條和分段插值   485

18.1  樣條導論   485

18.2  線性樣條   487

18.3  二次樣條   490

18.4  三次樣條   493

18.4.1  三次樣條的推導   494

18.4.2  邊界條件   497

18.5  MATLAB中的分段線性

插值   498

18.5.1  MATLAB函數:

spline   499

18.5.2  MAYTLAB函數:

interp1   500

18.6  多維插值   502

18.6.1  雙線性插值   503

18.6.2  MATLAB中的多維插值   504

18.7  案例研究:傳熱   505

18.8  習題   508

第Ⅴ部分  積分與微分

第19章  數值積分公式   519

提出問題   519

19.1  導論和背景   520

19.1.1  什麽是積分   520

19.1.2  工程和科學中的積分   521

19.2  牛頓-科特斯公式   523

19.3  梯形法則   524

19.3.1  梯形法則的誤差   525

19.3.2  復合梯形法則   527

19.3.3  MATLAB M文件:trap   529

19.4  辛普森法則   530

19.4.1  辛普森1/3法則   531

19.4.2  復合辛普森1/3法則   532

19.4.3  辛普森3/8法則   534

19.5  高階牛頓-科特斯公式   536

19.6  非等距積分   537

19.6.1  MATLAB M文件:trapuneq   537

19.6.2  MATLAB函數:trapz和cumtrapz   538

19.7  開型方法   540

19.8  多重積分   541

19.9  案例研究:用數值積分計算功   543

19.10  習題   546

第20章  函數的數值積分   555

20.1  導論   555

20.2  龍貝格積分   556

20.2.1  理查森外推法   556

20.2.2  龍貝格積分公式   558

20.3  高斯求積   561

20.3.1  待定系數法   562

20.3.2  兩點高斯-勒讓德公式的推導   563

20.3.3  更多點的公式   566

20.4  自適應求積分   567

20.4.1  MATLAB的 M文件:quadadapt   567

20.4.2  MATLAB函數:integral   570

20.5  案例研究:均方根電流   570

20.6  習題   574

第21章  數值微分   581

提出問題   581

21.1  導論和背景   582

21.1.1  什麽是微分   582

21.1.2  工程和科學中的微分   583

21.2  高精度微分公式   585

21.3  理查森外推法   588

21.4  不等距數據的導數   589

21.5  含誤差數據的導數與

積分   590

21.6  偏導數   591

21.7  用MATLAB計算數值

微分   592

21.7.1  MATLAB函數:diff   592

21.7.2  MATLAB函數:

gradient   594

21.8  案例研究:向量場的

可視化   596

21.9  習題   597

第Ⅵ部分  常微分方程

第22章  初值問題   613

提出問題   613

22.1  概述   614

22.2  歐拉法   615

22.2.1  歐拉法的誤差分析   617

22.2.2  歐拉法的穩定性   618

22.2.3  MATLAB的M文件函數:eulode   619

22.3  歐拉法的改進   620

22.3.1  休恩法   620

22.3.2  中點方法   624

22.4  龍格-庫塔方法   625

22.4.1  二階龍格-庫塔方法   626

22.4.2  古典四階龍格-庫塔方法   627

22.5  方程組   630

22.5.1  歐拉法   630

22.5.2  龍格-庫塔方法   631

22.5.3  MATLAB的M文件函數:rk4sys   633

22.6  案例研究:捕食者-獵物模型與混沌   635

22.7  習題   639

第23章  自適應方法和剛性方程組   647

23.1  自適應龍格-庫塔方法   647

23.1.1  求解非剛性方程組的MATLAB函數   649

23.1.2  事件   653

23.2  多步方法   655

23.2.1  非自啟動休恩法   655

23.2.2  誤差估計   658

23.3  剛性   659

23.4  MATLAB應用:帶繩索的蹦極運動員   664

23.5  案例研究:普林尼的間歇式噴泉   665

23.6  習題   669

第24章  邊值問題   679

提出問題   679

24.1  導論和背景   680

24.1.1  什麽是邊值問題   680

24.1.2  工程和科學中的

邊值問題   681

24.2  打靶法   684

24.2.1  導數邊界條件   686

24.2.2  非線性ODE的打靶法   688

24.3  有限差分法   690

24.3.1  導數邊界條件   692

24.3.2  非線性ODE的有限差分法   694

24.4  MATLAB函數:bvp4c   696

24.5  習題   698

附錄A  MATLAB內置函數   707

附錄B  MATLAB的M文件函數   709

附錄C  Simulink簡介   711