1. 程式人生 > >MATLAB 比較好入門書籍有哪些推薦

MATLAB 比較好入門書籍有哪些推薦

作者:3mjun
連結:https://www.zhihu.com/question/19904418/answer/105926809
來源:知乎
著作權歸作者所有,轉載請聯絡作者獲得授權。

Matlab的教程琳琅滿目,一不小心就選的眼花繚亂。


選擇Matlab參考書最關鍵的一點,就是參考書和自己目前能力要相匹配。選的參考書過於簡單或過於困難,既浪費錢,又浪費時間和心情。


在這裡推薦幾款實用的參考書,按照從一無所知的入門小白到進階,再到笑傲江湖的武林高手分為10個級別。(以下圖片取自網路,圖片版權歸原作者所有)


讓我們一起打怪升級吧。

<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第1級:Matlab超強經典教程

《Matlab超強經典教程》其實是這本書在網上流傳的藝名,它真實的書名叫做《Matlab5手冊》,由ChinaPub出版。



這本教程比較適合真正一點也不懂的初學者,它有這樣三個優點:

(1) 概念講的很清楚。

(2) 命令歸納的全面。

(3) 對照命令講解引數,且有例子。


比如:求陣列的最大值和最小值,它會先列出所有相關命令及對引數的描述:

<img src="https://pic1.zhimg.com/a2f677ece76d6a4f8b94bcd31e60a21c_b.jpg" data-rawwidth="1154" data-rawheight="599" class="origin_image zh-lightbox-thumb" width="1154" data-original="https://pic1.zhimg.com/a2f677ece76d6a4f8b94bcd31e60a21c_r.jpg">


然後給出一個具體的例子:

<img src="https://pic1.zhimg.com/1f1335ae4b90b884d8cd7dcee2c4f9b8_b.jpg" data-rawwidth="531" data-rawheight="596" class="origin_image zh-lightbox-thumb" width="531" data-original="https://pic1.zhimg.com/1f1335ae4b90b884d8cd7dcee2c4f9b8_r.jpg">

以及運算結果:

<img src="https://pic4.zhimg.com/89297adfd65321f37e4f7225f2382aa7_b.jpg" data-rawwidth="537" data-rawheight="144" class="origin_image zh-lightbox-thumb" width="537" data-original="https://pic4.zhimg.com/89297adfd65321f37e4f7225f2382aa7_r.jpg">

有時還會用示意圖來幫助讀者瞭解:

<img src="https://pic4.zhimg.com/89297adfd65321f37e4f7225f2382aa7_b.jpg" data-rawwidth="537" data-rawheight="144" class="origin_image zh-lightbox-thumb" width="537" data-original="https://pic4.zhimg.com/89297adfd65321f37e4f7225f2382aa7_r.jpg">

這是這本教程的目錄:

<img src="https://pic2.zhimg.com/44c7218a3145f003a6871deefd37d8f1_b.jpg" data-rawwidth="380" data-rawheight="610" class="content_image" width="380">

缺點是它有一點點老,和它對應的軟體版本是Matlab5,但對於初學者來說,幾乎沒有太大影響。


<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第2級:Matlab demystified

<img src="https://pic2.zhimg.com/a6e2eaedcb85cd3efe7529523033e839_b.jpg" data-rawwidth="578" data-rawheight="796" class="origin_image zh-lightbox-thumb" width="578" data-original="https://pic2.zhimg.com/a6e2eaedcb85cd3efe7529523033e839_r.jpg">

這本書是一本在歐美流行的教材,作者是美國Sandia國家實驗室的物理學家David McMahon,中文翻譯版由鄭碧波女士義務翻譯,中文名叫做Matlab揭祕。特色是教讀者如何把Matlab實際運用到高數裡面。


例如:

<img src="https://pic4.zhimg.com/930edc74f6f7be8fad04517e59d22dd3_b.jpg" data-rawwidth="706" data-rawheight="702" class="origin_image zh-lightbox-thumb" width="706" data-original="https://pic4.zhimg.com/930edc74f6f7be8fad04517e59d22dd3_r.jpg">

這本書還介紹了統計、畫圖、微積分、微分方程、變換、擬合等許多高數方面的應用,含有幾百個例子及其詳細解說過程。目錄:

<img src="https://pic3.zhimg.com/f14cf73afa8d5aa67899b946d4033bf2_b.jpg" data-rawwidth="379" data-rawheight="442" class="content_image" width="379">

另外,每章末有習題及答案,適合加強練習。有了這本書,媽媽再也不懂擔心我的高數了。


<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第3級:Matlab官方手冊


在Matlab官網上可以下載各種學習文件:

<img src="https://pic4.zhimg.com/ce4ca1c5d5918b6a46d3228201ff24b3_b.jpg" data-rawwidth="379" data-rawheight="686" class="content_image" width="379">

在MATLAB中執行doc命令也可檢視官方文件。


官方文件內容全面而詳細,含有每個命令的詳細說明及例子。


不過對讀者而言,仔細通讀這個文件可能存在以下問題:

(1)是英文版的,可能有一些初學者會覺得讀英文有些吃力。

(2)因為太全面,反而許多命令並不會經常用到。


所以,這個文件其實更適合當做手冊來查詢,需要的時候針對所需的命令進行檢視。


瀏覽完上面這幾本教程就算入門了,下一步需要做的是提高程式設計的實戰技巧。就像如果你想成為一名優秀的特戰部隊成員,上面的部分其實只是教練給你用幻燈片講解和比劃動作,下面的內容才是開始去靶場打靶訓練。

<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第4級:Matlab從零到進階

<img src="https://pic3.zhimg.com/dad67bb3a9e8a2cd34bb49a6f2d1973e_b.jpg" data-rawwidth="480" data-rawheight="678" class="origin_image zh-lightbox-thumb" width="480" data-original="https://pic3.zhimg.com/dad67bb3a9e8a2cd34bb49a6f2d1973e_r.jpg">

這本書的特色是配有光碟,內容包括每一個案例的源程式,以及用於教學和自學的PPT課件。

內容包括以下目錄:

<img src="https://pic4.zhimg.com/7ae537c5a7638cc34b9fbbda264a11f7_b.jpg" data-rawwidth="482" data-rawheight="800" class="origin_image zh-lightbox-thumb" width="482" data-original="https://pic4.zhimg.com/7ae537c5a7638cc34b9fbbda264a11f7_r.jpg">

另外,這本書裡面還有講解如何用Matlab解決一些實際生活中的問題,比如求解等額還款模型、垃圾場選址問題。


<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第5級:高等應用數學問題的MATLAB求解

<img src="https://pic3.zhimg.com/249a210dd9f6553998e4e9131ccdc23a_b.jpg" data-rawwidth="579" data-rawheight="850" class="origin_image zh-lightbox-thumb" width="579" data-original="https://pic3.zhimg.com/249a210dd9f6553998e4e9131ccdc23a_r.jpg">

這本書除了介紹應用數學的問題(比如微積分問題、線性代數、積分變換、複變函式、非線性方程、最優化問題等)如何求解之外,還介紹了最近流行的方法,像模糊邏輯與模糊推理、神經網路、遺傳演算法、小波分析、粗糙集以及分數階微積分等。


例如,神經網路:

<img src="https://pic4.zhimg.com/ff99e3806c6137af837b056a879428eb_b.jpg" data-rawwidth="559" data-rawheight="525" class="origin_image zh-lightbox-thumb" width="559" data-original="https://pic4.zhimg.com/ff99e3806c6137af837b056a879428eb_r.jpg">

遺傳演算法:

<img src="https://pic2.zhimg.com/be49f54f60475c7c667974862ff68f4d_b.jpg" data-rawwidth="851" data-rawheight="663" class="origin_image zh-lightbox-thumb" width="851" data-original="https://pic2.zhimg.com/be49f54f60475c7c667974862ff68f4d_r.jpg">
<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第6級: Experiments with MATLAB


<img src="https://pic2.zhimg.com/d204725de9f1d555e7da4ca48fbc8d1d_b.jpg" data-rawwidth="526" data-rawheight="394" class="origin_image zh-lightbox-thumb" width="526" data-original="https://pic2.zhimg.com/d204725de9f1d555e7da4ca48fbc8d1d_r.jpg">


不好意思,這本書是英文版的,但仍然要強烈推薦。它的作者是Cleve Moler,就是造出Matlab的大牛,美國工程院院士。


在這本書裡,介紹了一些有意思的問題,如何通過Matlab程式設計實現,涉及到曆法,谷歌網頁排名,音樂,天體執行,分形圖,生命進化,數獨等等。


比如,

兔子繁殖問題:

<img src="https://pic1.zhimg.com/56d83614b2cf8305eeb5a6c67bb0531c_b.jpg" data-rawwidth="395" data-rawheight="401" class="content_image" width="395">
Google搜尋是如何進行網頁排名的:

<img src="https://pic3.zhimg.com/2207a857e651e484188b957d3774faa6_b.jpg" data-rawwidth="320" data-rawheight="385" class="content_image" width="320">

生命進化:

<img src="https://pic3.zhimg.com/df91c31e3b4692a5596b313fa7fecc5e_b.jpg" data-rawwidth="491" data-rawheight="493" class="origin_image zh-lightbox-thumb" width="491" data-original="https://pic3.zhimg.com/df91c31e3b4692a5596b313fa7fecc5e_r.jpg">

如何模擬海浪:

<img src="https://pic4.zhimg.com/5dba0010181c5a68b7e1b842cef99a93_b.jpg" data-rawwidth="651" data-rawheight="431" class="origin_image zh-lightbox-thumb" width="651" data-original="https://pic4.zhimg.com/5dba0010181c5a68b7e1b842cef99a93_r.jpg">
<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第7級: MATLAB高效程式設計技巧與應用

<img src="https://pic4.zhimg.com/fb4a8eea620929eec18ee0db6d9e146f_b.jpg" data-rawwidth="585" data-rawheight="832" class="origin_image zh-lightbox-thumb" width="585" data-original="https://pic4.zhimg.com/fb4a8eea620929eec18ee0db6d9e146f_r.jpg">


這本書主要介紹一些特有的程式設計思想、高效的程式設計方法,以及採用案例介紹Matlab在科學計算中的實際應用。有些案例是如何實現最新流行的熱門技術了。


比如,人臉識別:

<img src="https://pic1.zhimg.com/537eb3e754a3cb64e03bae3e51c3ce5c_b.jpg" data-rawwidth="479" data-rawheight="392" class="origin_image zh-lightbox-thumb" width="479" data-original="https://pic1.zhimg.com/537eb3e754a3cb64e03bae3e51c3ce5c_r.jpg">

手寫體數字識別:

<img src="https://pic1.zhimg.com/e2d89116f60c34576c85c91a4563c080_b.jpg" data-rawwidth="462" data-rawheight="245" class="origin_image zh-lightbox-thumb" width="462" data-original="https://pic1.zhimg.com/e2d89116f60c34576c85c91a4563c080_r.jpg">

GNP的灰色資料融合分析:

<img src="https://pic4.zhimg.com/d36993746c71fc47b97381c9e6de42b3_b.jpg" data-rawwidth="906" data-rawheight="508" class="origin_image zh-lightbox-thumb" width="906" data-original="https://pic4.zhimg.com/d36993746c71fc47b97381c9e6de42b3_r.jpg">

<img src="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_b.jpg" data-rawwidth="642" data-rawheight="22" class="origin_image zh-lightbox-thumb" width="642" data-original="https://pic3.zhimg.com/0d0e1b3aa91f5cdbbd746dbee1dcb102_r.jpg">

第8級:Numerical Computing with Matlab


<img src="https://pic1.zhimg.com/b110dade52d320e7a814904e4bd92d44_b.jpg" data-rawwidth="309" data-rawheight="429" class="content_image" width="309">

這本書其實是《Experiments with MATLAB》的加強版與加深版,它的作者仍舊是Matlab之父Cleve Moler。


好訊息是這本書有對應的中文翻譯版,叫做《MATLAB數值計算》。它配備大量MATLAB例子原始碼及習題,其中涉及密碼學、Google網頁分級、大氣科學和影象處理等前沿問題。


<img src="https://pic1.zhimg.com/bec01e0c6f357d1f5bbd4c85510f77d8_b.jpg" data-rawwidth="1076" data-rawheight="828" class="origin_image zh-lightbox-thumb" width="1076" data-original="https://pic1.zhimg.com/bec01e0c6f357d1f5bbd4c85510f77d8_r.jpg">

例如,如何擬合手掌:

<img src="https://pic3.zhimg.com/12d1c0de4cb00b814e34c41e1d2b7a06_b.jpg" data-rawwidth="868" data-rawheight="696" class="origin_image zh-lightbox-thumb" width="868" data-original="https://pic3.zhimg.com/12d1c0de4cb00b814e34c41e1d2b7a06_r.jpg">

洛倫子混沌: