出版信息
《MATLAB科學計算寶典》劉正君 編著
ISBN 978-7-121-16647-1
2012年5月出版
定價:59.00元(含光碟1張)
16開
412頁
MATLAB技術版版主10年實戰經驗
內 容 簡 介
本書共27章,分為4篇,詳細講解MATLAB的計算和數據表現功能,介紹利用MATLAB對科學問題進行計算與仿真。針對部分專業的問題,給出利用MATLAB進行模擬的程式和仿真結果。第1篇為基礎篇,包括第1~6章,介紹MATLAB基本知識,具體包括:數據類型、向量與矩陣的定義、表達式、程式結構與最佳化、檔案處理。在介紹基本知識的同時,還給出一些實用經驗促進讀者更好地利用該軟體。第2篇是科學計算,包括第7~15章,詳細介紹基本科學問題的求解方法,具體包括:線性方程組、超越方程、數據擬合與插值、最值問題、隨機數、微分方程組、積分運算、數學變換、特殊函式等。本篇內容是求解複雜科學問題的基礎。第3篇為數據可視化仿真,包括第16~18章,具體包括:二維和三維圖形的繪製、用戶圖形界面設計。第4篇是科學問題編程,包括第19~27章,介紹混沌、分形、元胞自動機、光學現象、機械運動、常用算法等方面的編程知識。通過對不同問題按照建模、程式化實現、過程仿真的順序介紹MATLAB的套用。
本書結構清晰,圖形與程式結合,實例豐富,具有很強的實用性。很多實例的選取力圖全面,對實際問題的剖析和程式實現進行了詳細的講解。
本書既可以作為學校或研究機構及企業中利用MATLAB進行數值計算的教程,也可作為MATLAB開發的案頭參考書,還可作為自學MATLAB的參考用書。
前言
MATLAB是一款適合不同專業的人士解決問題的軟體,最大的特色在於其根據需要不斷擴充工具箱。即使不是專業的軟體開發人員,也可以調用MATLAB中的工具箱進行計算,再藉助通用數據類型交換數據,從而可以借用MATLAB強大的科學計算功能。隨著科學的發展,使用數值仿真來驗證定理或者結論的方式已經成為一種重要的手段。它具有快速、節省成本以及靈活多變等特點。而MATLAB已經在數值仿真任務中占有統治地位。同時,它的版本每年更新兩次,及時擴充自身的功能,套用專業領域廣泛。這一點是很多同類軟體無法比擬的。
MATLAB軟體是基於C語言和FORTRAN語言編寫的。但是MATLAB對很多功能都已經函式化,即一個複雜的計算任務,在MATLAB中常常用一條語句就可以實現。對於初學者,該軟體很容易入門。隨著使用者對研究問題的深入,可以積累MATLAB程式,常用的程式段可以寫成函式檔案的形式,有一定數目程式的檔案之後,就可以建立自己的“工具箱”。本書內容的編寫從簡單問題入手,逐步擴展到專業問題的求解。對MATLAB函式的介紹採用統一的格式進行詳細說明,同時給出大量實例幫助讀者理解函式的功能。
熟練套用MATLAB需要一定時間,讀者在安裝好MATLAB R2008a版本後,可以運行本書給出的程式,通過修改參數查看輸出變化來了解MATLAB函式的功能。另外需要注意的一點是,本書介紹的少部分函式屬於MATLAB R2008a特有的,較低版本因缺少相應函式會出現錯誤提示。為了節省讀者輸入程式的時間,本書配備含書中MATLAB代碼的光碟,為程式代碼實現高效率復用提供便利條件。
主要內容
本書全面講解MATLAB數值計算和數據可視化仿真方面的功能。全書分為4篇,共27章,具體的內容如下。
第1篇基礎篇,包括第1~6章。首先介紹MATLAB安裝方法和一些基本的操作知識。對於新手來說,了解基本操作是非常重要的。然後介紹數據類型、向量和矩陣的使用,它們是編程的基礎。隨後介紹不同類型的表達式,它們是進行數值計算的紐帶。接下來介紹程式結構與最佳化設計,講解主要的程式結構、程式加速與調試方面的知識。最後介紹不同類型檔案的處理方法及檔案批量處理的方法。
第2篇科學計算,包括第7~15章。介紹MATLAB求解高等數學知識方面的一些函式功能。首先介紹線性方程組與超越方程的求解方法,解方程在很多問題中都可能遇到,通過本篇的介紹,讀者可以了解不同類型方程的解法。然後介紹數據擬合與插值的MATLAB實現,它們是數據處理的常用工具。隨後介紹最值問題的解法,因為很多問題的最優結果往往是最大值或者最小值,這部分內容可以幫助讀者找到最佳答案。接下來介紹隨機數的使用,它們是一些經典算法的基礎,如蒙特-卡羅算法、隨機布朗運動等;介紹微分方程組的求解和一些積分表達式的計算,它們是高等數學的基石;介紹常用數學變換的MATLAB實現,它們是進行信號和圖像處理的重要工具。最後介紹一些特殊函式的MATLAB計算方法。
第3篇數據可視化仿真,包括第16~18章。主要介紹圖形的繪製與編輯、用戶圖形界面設計方面的知識。首先介紹二維圖形的繪製,其中包括繪圖函式的功能介紹、圖形對象的編輯方法、特殊圖形的繪製、多圖的布局方法、基本圖像處理函式介紹、製作動畫的方法,以及圖形的保存等知識。隨後介紹三維圖形繪製方面的知識,如基本函式的介紹、彩色圖的繪製與編輯、無色格線曲面的繪製、視角與光照效果的設定、圖形的注釋等知識。通過這些內容,讀者可以掌握常見圖形的繪製。最後介紹基本的用戶圖形界面設計,利用這方面的知識,讀者可以進行人機互動操作,可以輔助動態過程的研究。
第4篇科學問題編程,包括第19~27章。介紹不同專業問題的編程實現。首先介紹基本的建模知識,學習它們可以輔助求解專業問題。然後介紹混沌方面部分現象的模擬,如離散與微分方程中的分岔混沌現象的計算、混沌吸引子、Lyapunov指數等;介紹分形圖形的幾種繪製方法,如遞歸、疊代函式系統、L系統等;介紹元胞自動機方面的基礎知識,如奇偶規則、砂堆規則等;介紹晶體生長的模擬,其中主要以擴散限制凝聚為基礎展開介紹;介紹幾種光學現象的模擬,如魚眼效果、全息、干涉現象的模擬。介紹幾種機械運動的仿真,如凸輪與連桿的運動。隨後介紹MATLAB在經濟學中的套用,主要是通過MATLAB在數值計算和統計學方面建立在該領域的套用擴展。最後介紹幾種常用算法的原理和程式實現。
本書特色
MATLAB論壇技術版版主10年實戰經驗的總結。
全程實例解說MATLAB數值計算和數據可視化功能,提高讀者實用經驗。
內容豐富而且翔實,點面兼顧,力圖覆蓋更多專業面的問題介紹。
配套的光碟免去了輸入代碼的煩瑣工作,有助於提高學習效率。
較多的過程模擬採用動畫方式,生動形象。
讀者對象
本書既可以作為學校或研究機構及企業中利用MATLAB進行數值計算的教程,也可作為MATLAB開發的案頭參考書,還可作為自學MATLAB的參考用書。
本書約定
本書的附圖和運行結果可能會與實際環境中的操作界面或結果略有差別,這可能是由於作業系統平台、MATLAB版本不同而導致的,在此特別說明,一切以實際環境為準。
致謝與分工
本書由劉正君編著,其中,南京師範大學的博士生陳玲玲為第27章的編寫提供了大量素材,作者感謝自己的學生陳杭在編寫過程中提出的寶貴建議,姚新軍負責前期的策劃與後期質量監控。全書由成都道然科技有限責任公司審校。參與編寫工作的人員還有:黃中林、張強林、王曉、王斌、萬雷、吳艷、王呼佳、夏慧軍、張賽橋、陶林、趙會春、余松、李曉寧、趙滕倫、李佳等。
本書的出版得到的資助基金有:國家自然科學基金(11104049,11047153,10674038,10604042)、國家基礎研究項目(2006CB302901)、中國博士後科學基金(20080430913)、哈爾濱工業大學科研創新基金(HIT.NSRIF.2009038)、哈爾濱工業大學優秀青年教師培養計畫(HITQNJS.2008.027)。作者在此要特別感謝家人的大力支持,沒有他們的支持,本書不可能這么快就與讀者見面。
由於作者水平有限,書中不足之處在所難免,懇請讀者批評、指正。
目錄
第1篇基礎篇第1章MATLAB科學計算基礎1
第2章理解MATLAB的數據類型9
第3章向量與矩陣運算28
第4章表達式55
第5章程式結構與最佳化83
第6章檔案處理100
第2篇科學計算
第7章線性方程組115
第8章超越方程的求解121
第9章數據擬合與插值133
第10章最值問題的求解150
第11章隨機數的套用168
第12章微分方程組的計算184
第13章積分運算203
第14章數學變換運算216
第15章特殊函式229
第3篇數據可視化仿真
第16章二維數據可視化236
第17章三維數據可視化272
第18章圖形用戶界面設計294
第4篇科學題編程
第19章MATLAB建模基礎316
第20章混沌現象326
第21章分形圖形335
第22章元胞自動機352
第23章晶體生長模擬360
第24章光學現象模擬365
第25章機械運動模擬372
第26章經濟和金融問題的求解379
第27章常用算法及MATLAB實現388