本書是一本專注于數(shù)值分析實驗的指導書籍,通過精心設計的實驗項目,引導讀者深入理解數(shù)值分析的基本概念和方法,幫助讀者打下堅實基礎并提升實踐能力。內(nèi)容涵蓋數(shù)值計算的基本原理、算法實現(xiàn)以及實際應用案例,旨在幫助讀者掌握數(shù)值分析的核心知識并能夠熟練運用C#編程語言和VisualStudio平臺進行數(shù)值計算實驗。
運用C#編程語言和VisualStudio平臺的數(shù)值分析實驗指導書,內(nèi)容涵蓋數(shù)值分析的基本原理、算法實現(xiàn)以及實際應用案例.
前言
數(shù)值計算是科學計算和工程應用中的核心組成部分,廣泛應用于物理、化學、生物、金融、工程等領域。它通過數(shù)學模型和算法來解決實際問題,尤其是在不存在精確解的情況下,數(shù)值計算提供了一種有效的近似求解手段。例如,在天氣預報、航空航天、結(jié)構分析、流體動力學等領域,數(shù)值計算能夠模擬復雜的自然現(xiàn)象和工程問題,幫助科學家和工程師進行預測、優(yōu)化和決策。
隨著計算機技術的飛速發(fā)展,數(shù)值計算的規(guī)模和復雜度也在不斷增加。現(xiàn)代科學研究和工程實踐中,往往需要處理大規(guī)模的數(shù)據(jù)集和復雜的數(shù)學模型,這對數(shù)值計算的效率和精度提出了更高的要求。因此,掌握數(shù)值計算的基本原理和實現(xiàn)方法,對于從事科學計算和工程應用的研究人員和開發(fā)者來說,具有重要的意義。
基于此背景,我們結(jié)合課堂教學及工程應用經(jīng)驗,針對實際教學需求,編寫了這本《數(shù)值分析實驗》,旨在幫助讀者學習如何使用C#編程語言和Visual Studio平臺創(chuàng)建并使用數(shù)值計算庫。C#是一種功能強大且易于學習的編程語言,廣泛應用于Windows平臺上的應用程序開發(fā)。通過學習本書,讀者將能夠:
理解數(shù)值計算的基本概念和應用場景。
掌握C#編程語言的基礎語法和面向?qū)ο缶幊趟枷搿?br />
熟悉Visual Studio開發(fā)環(huán)境的使用,包括項目管理和調(diào)試技巧。
學會使用NuGet包管理器來管理和擴展項目依賴。
能夠逐步創(chuàng)建并完善屬于自己的數(shù)值計算庫,并將其應用于解決實際數(shù)值計算問題。
本書在編寫過程中得到清華大學、清華大學深圳國際研究生院的支持,諸多靈感來自于清華大學深圳國際研究生院錢翔老師,課題組成員閔妍濤、姜熙媛、何佳澤、劉毅也參與了教材的編審和例題的制作,在此向他們一并表示由衷的感謝!本書的出版得到了國家重點研發(fā)計劃項目(2022YFC3801100)、廣東省基礎與應用基礎研究項目(2022B1515130006)和清華大學深圳國際研究生院教改項目(202303J001)的支持,一并感謝!
另外,本書構建的數(shù)值計算庫源代碼已上傳至出版社的云盤,讀者可以掃描本頁的二維碼獲取,以供學習參考。
由于時間匆忙、水平有限,書中難免錯漏之處,請讀者批評指正!
胡振中
2025年3月
胡振中,于清華大學土木工程系先后獲得工學學士和工學博士學位,現(xiàn)任清華大學深圳國際研究生院海洋工程研究院副院長,教研系列副教授。主要研究方向為土木與海洋工程信息技術、海洋數(shù)字防災、建筑與城市信息模型(BIM/CIM)。教授工程碩士數(shù)學、土木與建筑工程CAE等4門課程。曾獲清華大學2023年度“青年教師教學獎”。
目錄
編程基礎
一、 C#編程語言基礎
二、 Visual Studio開發(fā)環(huán)境
實驗一數(shù)值穩(wěn)定性
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗二線性方程組的直接解法——Gauss消去法
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗三線性方程組的直接解法——Cholesky分解
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗四矩陣的特征值與特征向量
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗五線性方程組的迭代解法——Jacobi迭代法和GaussSeidel迭代法
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗六線性方程組的迭代解法——超松弛迭代法和共軛梯度法
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗七非線性方程組的數(shù)值解法——二分法和不動點迭代法
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗八非線性方程(組)的迭代解法——Steffensen迭代法和Newton迭代法
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗九插值法——Lagrange插值
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗十插值法——Newton插值和三次樣條插值
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗十一函數(shù)逼近——最小二乘法
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗十二數(shù)值積分——NewtonCotes求積公式、復合求積公式、Romberg求積公式
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗十三數(shù)值積分與微分——GaussLegendre求積、自適應積分法、求導
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗十四常微分方程的數(shù)值解——Euler方法、RungeKutta方法
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
實驗十五常微分方程的數(shù)值解——顯式/隱式Adams方法、一階方程組
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題
應用案例
案例一二維擴散模擬
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
案例二彈簧質(zhì)量阻尼系統(tǒng)的振動分析
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
案例三桿系結(jié)構力學分析
一、 實驗目的
二、 實驗原理
三、 實驗內(nèi)容
四、 實驗步驟
五、 實驗總結(jié)
課后習題參考答案