工程數值分析導論

Introduction to Numeric Analysis for Engineering, Spring 2003

2003春季課程
本課程內容有:(1)介紹工程問題的數值方程、求解方法與程式技巧;(2)數位化計算的基本原理,算則之準確性和穩定性;(3)誤差傳遞之含意;(4)線性方程組的解,含直接法和疊代法之技巧;(5)方程式與方程組的根;(6)數值內插、微分和積分;(7)常微分方程式之有限差分解的原理;(8)誤差和收斂分析。全部課程在前半學期講授。

指定教科書

課綱與詳述事項

  • 課程重點
本課程包括大量的作業、補充檔案和一個 測驗範例
 
  • 技術需求

需要MATLAB®軟體來執行建立在本課程網頁中的 .m 檔案。

MATLAB® software is required to run the .m files found on this course site.

MATLABR 是MathWorks 公司的商標

MATLAB® is a trademark of The MathWorks, Inc.

 

  • 目的

電腦在所有自然與工程科學課程中的重要性越來越大。在過去10年間,大學生在電腦方面的知識明顯提升,同時也對電腦和所計算出的結果深具信心。在麻省理工學院的大學部課程中,有許多門課是以訓練學生在科學和工程領域的程式設計為目的,例如課程編號1.00和10.001者。這些課程教導學生高等程式設計技巧,使其能撰寫高階且高效率的計算程式。然因授課時間不足,有關發展準確且周全之算則的關鍵要素:數值誤差和穩定性分析兩項,在這些課程中只能粗淺論及。 而編號13.002這門6學分的大學部課程就是為了填補這空缺而設計。課程內容是介紹關於工程問題數值解的基本方程式、方法與技巧。從數位化計算的基本原理和算則之準確性與穩定性的含意開始,再引入誤差傳遞和穩定性分析。內容涵蓋各種線性方程組的解法(幾乎90%科學和工程方面的數值計算都屬此類),如直接(Gaussian消去) 和疊代技巧,稀疏和帶狀矩陣,和反矩陣等。解線性方程組所引發的誤差與穩定性問題會被廣泛地討論,同時也扼要地討論特微值問題的數值處理。另外也有幾堂課用來求解非線性方程式,包括求根;並介紹插值運算的觀念與它在數值微分和積分中所扮演的角色,但強調傳統(Lagrange, Newton)多項式插值運算。數值微分和積分部分將有較深入討論,並強調誤差和收斂性分析。課程最後將介紹求解常微分方程式的有限差分法基本原理,也強調誤差和收斂性分析。 .

本課程將在學期的前7週講授,每週有兩次各1.5小時的課程。評分將以每週指定的作業為主,一半是關於誤差和穩定性分析的「紙筆練習」,另一半則是真正發展複雜的算則。 我們非常鼓勵學生使用MATLAB(不包括內建子程式),如果他們希望使用其他程式語言,應事先和教授討論。課程結束時,修課學生將有能力發展出一些可用又可靠的算則,可應用於往後的修課與研究計劃中。

目的

 

目的 1

了解數位化數字所代表之意涵與數位化運算在計算科學及工程的用處。

結果 1.1: 了解數位計算的基本原理、包括數字表意和算數運算。.

結果 1.2: 了解準確性、穩定性和收斂性之間的關連。

結果 1.3: 進行算數運算的誤差分析。.

結果 1.4: 了解複雜數值演算所產生誤差傳遞。

結果 1.5: 進行數值穩定性分析。

 

目的 2

為所有計算科學及工程的基本工作發展並演練穩定且準確的算則。

結果 2.1: 發展求解線性方程組之穩定算則。

結果 2.2: 發展求解非線性方程式之根的穩定且高效率算則。

結果 2.3: 執行估算數學函數之穩定遞迴算則。

結果 2.4: 了解數值微分和積分的插值運算的運用。

結果 2.5: 發展常微分方程式之穩定求解算則。

 

  • 堂數

13 堂課 

 

  • 教科書

Mathews, J. H., 與 K. D. Fink. 《數值方法(MATLAB®)版)》(Numerical Methods Using MATLAB®). 3rd ed. Prentice Hall, 1999.

(譯註:有中文簡體譯本,譯者:陳渝、周璐、錢方等,《數值方法(MATLAB版)》第三版,電子工業出版社,2002) 

 

  • 作業

每週交一次作業

 

  • 評分

作業: 60%

考試: 30%

課堂參與: 10% 

 

  • 2003 春季班上課調查

姓名:

課程名稱:

電子郵件:

你已經在麻省理工學院修過哪些程式寫作課程?

1.00

6.001

10.001

 

  • 自我評估(不計分)

 

A. 對下面每個領域,請圈選一個數字以表示你的了解和熟悉程度(0:完全不了解,10:專家):

線性代數

0

1

2

3

4

5

6

7

8

9

10

微分

0

1

2

3

4

5

6

7

8

9

10

積分

0

1

2

3

4

5

6

7

8

9

10

常微分方程式

0

1

2

3

4

5

6

7

8

9

10

Fortran

0

1

2

3

4

5

6

7

8

9

10

C

0

1

2

3

4

5

6

7

8

9

10

C++

0

1

2

3

4

5

6

7

8

9

10

Java

0

1

2

3

4

5

6

7

8

9

10

Scheme

0

1

2

3

4

5

6

7

8

9

10

MATLAB®

0

1

2

3

4

5

6

7

8

9

10

其他程式語言 (具體指明)

0

1

2

3

4

5

6

7

8

9

10

B. 建立一個能計算和繪製下面兩個具小函數值的正弦函數的MATLAB® 程式:

□(x) = sin x

□(x) = √ 1- 10-7 * round(107 2 x)

x = π * 10n/100, n = -700, ..., -300函數。 將函數變數值捨位到其最靠近的整數。敘述你所認為發生之事。

 

MATLAB® 是MathWorks公司的一個商標。 

相關連結

講者介紹

Prof. John Leonard

翻譯工作人員

翻譯人員洪曉慧

繁體編輯朱學恒、洪曉慧

簡體編輯朱學恒、洪曉慧

檔案後製處理洪曉慧、謝旻均