MATLAB數(shù)值計(jì)算(Numerical Computing with MATLAB 中譯本,最新修訂)
定 價(jià):52 元
叢書名:MATLAB之父Cleve B. Moler經(jīng)典著作
- 作者:Cleve Moler
- 出版時(shí)間:2015/1/1
- ISBN:9787512415461
- 出 版 社:北京航空航天大學(xué)出版社
- 中圖法分類:O241
- 頁碼:427
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書《MATLAB數(shù)值計(jì)算(2013修訂版)》經(jīng)MATLAB、數(shù)值分析和科學(xué)計(jì)算之父CleveMoler本人正式授權(quán),是NumericalComputationwithMATLAB2008/2013修訂版的中譯本。該書不以深?yuàn)W的數(shù)值分析理論為內(nèi)容,而以易于理解的數(shù)學(xué)思維和便于掌握的數(shù)學(xué)計(jì)算編程技術(shù)為
教學(xué)素材。該書摒棄以往數(shù)值分析教材中常見的程式性定理、定理證明、收斂性理論和冗長(zhǎng)公式推演。該書數(shù)值算法原理的表述,言簡(jiǎn)意駭、層次豐富、見解獨(dú)到、權(quán)威精辟;數(shù)學(xué)計(jì)算軟件的教學(xué)內(nèi)容易學(xué)易懂,構(gòu)思巧妙而循循善誘。
全書正文共11章,包括:MATLAB入門、線性方程組、插值、零點(diǎn)和根、最小二乘、定積分、常微分方程、隨機(jī)數(shù)、傅立葉分析、特征值和奇異值、偏微分方程。每章后都配置了大量習(xí)題。與本書正文及習(xí)題匹配的70多個(gè)M文件都由CleveMoler本人編寫,并被其本人贊為最引以自傲的軟件作品。為讀者學(xué)習(xí)、查閱需要,本書還編有4個(gè)附錄:MATLAB功用釋要、MATLAB命令及示教文件名索引、中文關(guān)鍵詞索引和CleveMoler獲2012年度計(jì)算機(jī)先驅(qū)獎(jiǎng)的簡(jiǎn)短資料。該書所有代碼都適配于MATLABR2014a。
該書是CleveMoler專為高校研究生、本科生編寫的數(shù)值計(jì)算、MATLAB教材。該書也是所有MATLAB用戶理解MATLAB算法原理的最好指南,也是廣大科技人員自學(xué)、精讀或隨時(shí)查閱的最可信賴的參考書。
本書英文版購買鏈接: Numerical Computing with MATLAB revised in 2013(MATLAB數(shù)值計(jì)算 2013修訂版、英文版)
原文序
本書是為講授數(shù)值方法、MATLAB 及工程計(jì)算而編寫的入門性教材,著重強(qiáng)調(diào)
數(shù)學(xué)軟件的靈活應(yīng)用。我們希望你通過本書能充分理解MATLAB 數(shù)學(xué)計(jì)算函數(shù)及
命令的內(nèi)涵,充分辨析其局限性,正確使用它們,并能根據(jù)你自己的需要對(duì)它們
加以修改。本書包含以下章節(jié):
MATLAB 入門
線性方程組
插值
零點(diǎn)和根 原文序
本書是為講授數(shù)值方法、MATLAB 及工程計(jì)算而編寫的入門性教材,著重強(qiáng)調(diào)
數(shù)學(xué)軟件的靈活應(yīng)用。我們希望你通過本書能充分理解MATLAB 數(shù)學(xué)計(jì)算函數(shù)及
命令的內(nèi)涵,充分辨析其局限性,正確使用它們,并能根據(jù)你自己的需要對(duì)它們
加以修改。本書包含以下章節(jié):
MATLAB 入門
線性方程組
插值
零點(diǎn)和根
最小二乘
定積分
常微分方程
隨機(jī)數(shù)
傅里葉分析
特征值和奇異值
偏微分方程
20 世紀(jì)60 年代后期,George Forsythe 首先在美國斯坦福大學(xué)開創(chuàng)了基于軟
件的數(shù)值方法課程。Forsythe、Malcolm 和Moler 三人合寫的教材[20],及其后由
Kahaner、Moler 和Nash 合寫的教材[34],都是由斯坦福大學(xué)的那門課程演化產(chǎn)生
的,且它們都建筑在Fortran 子程序庫基礎(chǔ)上。
本書以MATLAB 為基礎(chǔ)。含70 多個(gè)M-文件的NCM 匯集是本書的重要組成部
分。本書200 多道習(xí)題中的許多習(xí)題都涉及對(duì)NCM 程序的修改及擴(kuò)展。本書還
廣泛使用計(jì)算機(jī)圖示的功能,其中包括對(duì)各種數(shù)值算法的交互式圖形展示。
選修本課程或閱讀本書的前提條件是:
學(xué)過微積分;
對(duì)常微分方程有所了解;
對(duì)矩陣有所了解;
有些計(jì)算機(jī)編程經(jīng)驗(yàn)。
假如你此前從未用過MATLAB,那么第1章將幫助你跨入大門。假如你已經(jīng)
熟悉MATLAB,那么你可以快速瀏覽第1 章的大部分內(nèi)容。但是,每位讀者都不
應(yīng)跳過第1 章關(guān)于浮點(diǎn)算法的那節(jié)內(nèi)容。
對(duì)于一學(xué)季或一學(xué)期的課程而言,本書內(nèi)容可能偏多。建議講授前7章的全
部?jī)?nèi)容,而在后4 章中有選擇地講授學(xué)生感興趣的部分內(nèi)容。
在你閱讀本書時(shí),應(yīng)確定你所在計(jì)算機(jī)網(wǎng)或個(gè)人電腦上已經(jīng)安裝了NCM 程
序匯集。NCM 匯集可從如下的本書英文原版網(wǎng)站[47] 上免費(fèi)獲得。
http://www.mathworks.cn/moler
NCM 匯集中的文件有三類:
gui 文件,交互式圖形演示文件;
tx 文件,MATLAB 內(nèi)建文件的示教性簡(jiǎn)略版;
其他:各種配用文件,主要與習(xí)題有關(guān)。
在自己機(jī)器上安裝了NCM 匯集后,你在MATLAB 中運(yùn)行命令
ncmgui
便產(chǎn)生一個(gè)如下頁所示的綜合性圖形用戶界面。該綜合界面上的每個(gè)縮略小圖,
實(shí)際上都是引出相應(yīng)GUI 圖形用戶界面的按鈕。
離開MathWorks 和SIAM 的同仁,本書不可能完成。這兩個(gè)團(tuán)隊(duì)中的人員都
很專業(yè)、富具創(chuàng)造力和融洽合作。他們對(duì)本書給予了巨大的支持。在眾多做出特
殊貢獻(xiàn)的朋友和同仁中,我特別要提到其中五位。Kathryn Ann Moler 多次在斯
坦福大學(xué)的課程中使用本書的早期書稿,并成為給予我最中肯批評(píng)的智者。Tim
Davis 和Charlie Van Loan 給出了特別有益的審閱意見。Lisl Urban 為本書做了完
美無瑕的編輯工作。我妻子Patsy 始終陪伴身旁,包容、照料我的工作習(xí)慣和筆
記本電腦,她深愛著我的一切。我感謝所有的人!
本書2008 修訂重印版的更改內(nèi)容有:為改進(jìn)無出鏈網(wǎng)頁的處理,對(duì)Google
PageRank 那節(jié)所作的修訂;在隨機(jī)數(shù)那章新增一小節(jié)內(nèi)容;刪除了關(guān)于inline 和
feval 命令的內(nèi)容;校正了幾十處小的印刷疏誤。
2013 年9 月對(duì)本書進(jìn)行了60 多處重要的更新修訂。其中大多數(shù)修訂是中國
南京郵電大學(xué)的張志涌教授所提議的。那時(shí),他正在為北京航空航天大學(xué)出版社
準(zhǔn)備本書的中譯本。本書第5.3 節(jié)美國人口普查算例納入了2010 年的人口數(shù)據(jù)。
format long 格式下的計(jì)算結(jié)果顯示16 位有效數(shù)字。涉及符號(hào)工具包的應(yīng)用現(xiàn)已
反映MuPAD 引擎所引起的變化。非常感謝張教授。
Cleve Moler
2013 年9 月16 日
譯文前言:
2012 年仲秋,我作為Moler 十年前訪華晤面過的熟人,再次受MathWorks 中
國公司的邀請(qǐng),出席Cleve Moler 的訪華歡迎會(huì)。在歡迎午餐席間,Moler 表達(dá)了
希望在中國見到由他本人授權(quán)的著作中譯本的強(qiáng)烈意愿。我欣然允諾翻譯,隨即
Moler 把Numerical Computing with MATLAB 的翻譯工作委托于我,并將出版權(quán)授予
北京航空航天大學(xué)出版社。對(duì)此,我深感榮幸,因?yàn)閺腗athWorks 網(wǎng)站首次出現(xiàn)
此書電子版起的這些年里,我一直持有翻譯此書的強(qiáng)烈沖動(dòng)和期盼譯著在中國出
版發(fā)行的迫切愿望。
我喜歡此書,因?yàn)镹umerical Computing with MATLAB 一書,既能讓讀者初讀
時(shí)感受易學(xué)易懂之愉悅,又能讓讀者細(xì)讀時(shí)領(lǐng)受滲透于字里碼間的睿智點(diǎn)化;既
能使讀者從MATLAB 中獲得前所未有的數(shù)值解算能力,又可使讀者欣賞到浮點(diǎn)計(jì)
算之?dāng)?shù)學(xué)優(yōu)雅。
我推崇此書,因?yàn)镹umerical Computing with MATLAB 的作者是Cleve Moler,
一個(gè)始終懷揣那樸實(shí)的、“讓學(xué)生學(xué)數(shù)學(xué)更輕松”理念的大學(xué)教授,一個(gè)始終懷揣
那“讓他人最放心、最方便使用高質(zhì)量數(shù)學(xué)計(jì)算軟件”平常心的科學(xué)家1。正是這
濟(jì)世理念驅(qū)使他成為了“高性能數(shù)值計(jì)算測(cè)試標(biāo)準(zhǔn)的LINPACK、EISPACK 軟件”
的主要貢獻(xiàn)者,驅(qū)使他發(fā)明了“對(duì)世界工程教學(xué)和科研領(lǐng)域產(chǎn)生不可估量深遠(yuǎn)影
響的MATLAB ”2,使他成為了世界公認(rèn)的現(xiàn)代數(shù)值分析和科學(xué)計(jì)算的一位創(chuàng)始人、
給計(jì)算世界打下深深烙印的數(shù)學(xué)奇才3。他是美國工業(yè)和應(yīng)用數(shù)學(xué)學(xué)會(huì)SIAM 前
主席、美國工程院院士、2012 年IEEE 計(jì)算機(jī)先驅(qū)獎(jiǎng)獲得者。然而,他喜歡自稱
“最愛編程的地地道道駭客(hacker)”,趣喻自己是“圍繞數(shù)學(xué)家和計(jì)算機(jī)科學(xué)家
雙核作Lorenz 混沌運(yùn)動(dòng)”的人1。
我贊賞此書,因?yàn)镹umerical Computing with MATLAB 一書是Cleve Moler 從其
前20 年教學(xué)生涯和后20 年專事MATLAB 經(jīng)驗(yàn)中升華而成的原創(chuàng)珍品,是凝聚其
對(duì)數(shù)學(xué)應(yīng)用本質(zhì)性獨(dú)特見解、展示未來教學(xué)方向的數(shù)值計(jì)算教材之圭臬。該書物
化地展現(xiàn)了,Cleve Moler 對(duì)數(shù)值分析和科學(xué)計(jì)算教學(xué)的如下卓識(shí)真見1:
在科學(xué)和技術(shù)計(jì)算中,存在一個(gè)既不被數(shù)學(xué)覆蓋、也不被計(jì)算機(jī)學(xué)科和其它
應(yīng)用學(xué)科覆蓋的共同知識(shí)體系。它是涉及數(shù)值分析、科學(xué)編程、計(jì)算機(jī)圖形
和數(shù)據(jù)庫管理等內(nèi)容的獨(dú)立知識(shí)體系。
對(duì)于科技領(lǐng)域的非數(shù)學(xué)從業(yè)人員而言,他們所需要解決的具體問題,往往不
是單一的數(shù)學(xué)問題,而是更大更復(fù)雜的綜合性問題。這些問題的解決需要多
種數(shù)學(xué)知識(shí)和數(shù)值計(jì)算方法。在此境況下,他們不可能、也不需要知道每種
數(shù)值方法的微妙細(xì)節(jié)和具體公式,而只需要知道如何調(diào)用各種計(jì)算軟件去
解決面前不可回避的數(shù)學(xué)問題,以騰出更多的時(shí)間和精力, 專注于那綜合性
的具體設(shè)計(jì)目標(biāo)。就像在一個(gè)具體問題中遇到需要計(jì)算的正弦、余弦函數(shù)值
時(shí),人們并不會(huì)對(duì)近似計(jì)算正弦、余弦函數(shù)值的具體公式和執(zhí)行細(xì)節(jié)刻意刨
根問底,而只是徑直調(diào)用它們的計(jì)算命令。
Numerical Computing with MATLAB 由美國工業(yè)和應(yīng)用數(shù)學(xué)學(xué)會(huì)SIAM于2004
年出第一版,2008 年出修訂版。此書在2013 年經(jīng)Cleve Mole 再次修訂,且在其
親自授權(quán)后于不久前由北京航空航天大學(xué)出版社出版。該書的章節(jié)標(biāo)題不僅涵蓋
常見數(shù)值分析教材的所有章節(jié)標(biāo)題,而且包含“隨機(jī)數(shù)”和“偏微分方程”兩章。
Numerical Computing with MATLAB 的特別之處在于:該書是由具有數(shù)值分析、
科學(xué)計(jì)算之父和MATLAB 之父雙重身份的Cleve Moler 寫成的。該書不以深?yuàn)W的數(shù)
值分析理論為內(nèi)容,而以向讀者提供易于理解的數(shù)學(xué)思維、易于掌握的數(shù)學(xué)編程
技術(shù)為宗旨。因此,在該書中,沒有某些數(shù)值分析教材中那定理和定理證明的重
巒疊嶂,沒有那冗長(zhǎng)公式和滿紙推演的濃霧密云,也沒有浮點(diǎn)誤差理論的濃墨重
彩。在書中,能見到的是那信手拈來的博引旁證、高屋建瓴的評(píng)價(jià)結(jié)論,能見到
的是脈絡(luò)清晰的引導(dǎo)、使人頓悟的簡(jiǎn)明示例,能見到的是由MATLAB 代碼一步一
步指引的、讀者完全可以自己在計(jì)算機(jī)上重現(xiàn)的各種算法演繹和實(shí)驗(yàn),能見到的
是能準(zhǔn)確掌控計(jì)算誤差和提供性能改善選項(xiàng)的MATLAB 命令。
Numerical Computing with MATLAB 英文原版正文和習(xí)題中的MATLAB 代碼、隨
書NCM 匯集中的M 文件,都在MATLAB R2013a 版下由Moler 進(jìn)行過適配性修改。
這些代碼和文件設(shè)計(jì)之精心、運(yùn)用之巧妙、可讀性之強(qiáng),都達(dá)到了Moler 自認(rèn)的
前所未有的滿意程度,并被Moler 引以自傲1。
《MATLAB 數(shù)值計(jì)算》(2013 修訂版)是據(jù)2014 英文版Numerical Computing
with MATLAB 翻譯的。本書正文及習(xí)題翻譯忠于原著、原意。在翻譯時(shí),為保證讀
者能重現(xiàn)英文原版所列之計(jì)算結(jié)果,也為幫助讀者準(zhǔn)確理解原文編碼的奧妙,在
個(gè)別段落中補(bǔ)寫了些許M 碼,在個(gè)別M 碼后增補(bǔ)了一點(diǎn)解釋。此外,為適應(yīng)我國
學(xué)術(shù)和教學(xué)環(huán)境,把英文原版中實(shí)施“對(duì)應(yīng)元素間運(yùn)算”的“Matrix、Vector”詞
匯,翻譯成“數(shù)組、行(或列)數(shù)組”。中譯版《MATLAB 數(shù)值計(jì)算》中的MATLAB
代碼、隨書NCM 匯集中的M 文件,由譯者在MATLAB R2014a 版下進(jìn)行過適配性
修訂。
《MATLAB 數(shù)值計(jì)算》(2013 修訂版)除正文外,增添四個(gè)附錄:“附錄A.
MATLAB 功用釋要”,是對(duì)正文提及的MATLAB 要素,從用法角度出發(fā),給予簡(jiǎn)明系
統(tǒng)地要旨介紹或補(bǔ)充,減少讀者閱讀困難和查閱其他幫助材料的麻煩。“附錄B.
MATLAB 命令和示教文件名索引”,供讀者據(jù)命令名、文件名檢索書中示例!案戒
C. 中文關(guān)鍵詞索引”,供讀者據(jù)中文術(shù)語對(duì)照英文詞匯檢索正文表述!案戒汥.
2012 年度計(jì)算機(jī)先驅(qū)獎(jiǎng)?lì)C獎(jiǎng)典禮視頻整理稿”,供讀者全面了解Moler 的杰出貢
獻(xiàn)和人文精神,進(jìn)而更好領(lǐng)悟Moler 原著所體現(xiàn)的科學(xué)計(jì)算思想。
《MATLAB 數(shù)值計(jì)算》(2013 修訂版)的編譯由張志涌、張子燕、楊祖櫻三人
協(xié)同完成。全書經(jīng)通譯、M 碼運(yùn)作、附錄編寫、通校、文字修飾等幾階段后完稿,
前后歷時(shí)18 個(gè)月。在通譯和M 碼運(yùn)作及附錄編寫期間,我們就正文敘述、M 代
碼、GUI 表現(xiàn)及附錄內(nèi)容等,多次向原作者請(qǐng)教、咨詢及建議。對(duì)此,原作者都
及時(shí)地給予詳盡回復(fù)和認(rèn)真處理。這使我們親身感受到Cleve Moler 對(duì)所有議題
了然于胸的從容和一絲不茍的嚴(yán)謹(jǐn),領(lǐng)受到Cleve Moler 對(duì)MATLAB 命令設(shè)計(jì)原由
的透徹解讀和出神入化的功力。在本譯作完稿之際,我們?nèi)w譯者向MathWorks
公司首席科學(xué)家Cleve Moler 表示最真誠的深深謝意。
在譯稿出版之際,我們還要向北京航空航天大學(xué)出版社的陳守平、蔡喆、趙
延永等表達(dá)最真摯的感謝,感謝他們?yōu)槲覀兙幾g所提供的各種寶貴資料和信息,
感謝他們?yōu)楸WC本書高質(zhì)量出版所作出的一切努力。
《MATLAB 數(shù)值計(jì)算》(2013 修訂版)譯作雖經(jīng)我們多人反復(fù)修正校對(duì),但限
于我們知識(shí)的局限,誤譯、錯(cuò)譯、片面理解及其他疏漏仍難以杜絕。在此,懇請(qǐng)
各方面專家和廣大讀者不吝指教。譯者聯(lián)系電子信箱:zyzh@njupt.edu.cn。
張志涌、張子燕、楊祖櫻
2014 年10 月21 日
Cleve Moler是MathWorks公司的董事長(zhǎng)和首席科學(xué)家。Moler先后在密歇根大學(xué)、斯坦福大學(xué)、新墨西哥大學(xué)擔(dān)任數(shù)學(xué)和計(jì)算機(jī)科學(xué)教授達(dá)20余年。1989年全職加入MathWorks公司之前,他曾在Intel Hypercube和Ardent Computer這兩個(gè)計(jì)算機(jī)硬件生產(chǎn)公司工作了五年。Cleve先后就讀于加州理工和斯坦福大學(xué)并獲斯坦福大學(xué)博士學(xué)位。
作為MATLAB的創(chuàng)始人,Cleve同時(shí)也是LINPACK和EISPACK科學(xué)子程序庫的作者之一。他與別人合作出版了三本關(guān)于數(shù)值方法的書,同時(shí)也獨(dú)立編寫了Numerical Computing with MATLAB 和 Experiments with MATLAB。
Cleve長(zhǎng)期服務(wù)于美國工業(yè)與應(yīng)用數(shù)學(xué)學(xué)會(huì),并于2007-2008任主席。Cleve于1997年當(dāng)選美國國家工程院院士,并獲多項(xiàng)榮譽(yù),包括瑞典林學(xué)平大學(xué)榮譽(yù)學(xué)位,加拿大滑鐵盧大學(xué)榮譽(yù)數(shù)學(xué)博士學(xué)位,丹麥科技大學(xué)榮譽(yù)博士等。Cleve還獲得IEEE計(jì)算機(jī)學(xué)會(huì)的2012年計(jì)算機(jī)先驅(qū)獎(jiǎng)。
第1 章MATLAB 入門
1.1 黃金分割比
1.2 斐波那契數(shù)
1.3 分形蕨
1.4 魔方矩陣
1.5 密碼技術(shù)
1.6 數(shù)論問題3n+1 序列
1.7 浮點(diǎn)運(yùn)算
1.8 更多閱讀
習(xí)題
第2 章線性方程
2.1 解線性方程組
2.2 MATLAB 反斜杠矩陣左除算符
2.3 3 3 方程組算例
2.4 排列矩陣和三角矩陣 第1 章MATLAB 入門
1.1 黃金分割比
1.2 斐波那契數(shù)
1.3 分形蕨
1.4 魔方矩陣
1.5 密碼技術(shù)
1.6 數(shù)論問題3n+1 序列
1.7 浮點(diǎn)運(yùn)算
1.8 更多閱讀
習(xí)題
第2 章線性方程
2.1 解線性方程組
2.2 MATLAB 反斜杠矩陣左除算符
2.3 3 3 方程組算例
2.4 排列矩陣和三角矩陣
2.5 LU 分解
2.6 選主元的必要性
2.7 示教M 文件lutx、bslashtx、lugui
2.8 舍入誤差的影響
2.9 范數(shù)和條件數(shù)
2.10 稀疏矩陣和帶狀矩陣
2.11 PageRank 和馬爾可夫鏈
2.12 更多閱讀
習(xí)題
第3 章插值
3.1 插值多項(xiàng)式
3.2 分段線性插值
3.3 分段三次埃爾米特插值
3.4 保形分段三次插值
3.5 三次樣條
ii 目錄
3.6 示教M 文件pchiptx, splinetx
3.7 插值計(jì)算交互界面interpgui
習(xí)題
第4 章零點(diǎn)和根
4.1 二分法
4.2 牛頓法
4.3 牛頓法失常算例
4.4 弦截法
4.5 逆二次插值
4.6 Zeroin 算法
4.7 示教M 文件fzerotx
4.8 fzerogui
4.9 值的解算和反插值
4.10 最優(yōu)化和示教M 文件fmintx
習(xí)題
第5 章最小二乘
5.1 模型和曲線擬合
5.2 范數(shù)
5.3 人口模型交互界面censusgui
5.4 豪斯霍爾德反射
5.5 QR 分解
5.6 偽逆
5.7 秩虧
5.8 可分離最小二乘
5.9 更多閱讀
習(xí)題
第6 章定積分
6.1 自適應(yīng)定積分算法
6.2 定積分的基本法則
6.3 示教M 文件quadtx 和quadgui
6.4 被積函數(shù)的表述
6.5 性能
6.6 積分離散數(shù)據(jù)
6.7 更多閱讀
習(xí)題
第7 章常微分方程
7.1 微分方程的積分
7.2 微分方程組
7.3 線性化的微分方程
7.4 單步法
7.5 BS23 算法
7.6 示教M 文件ode23tx
7.7 兩個(gè)簡(jiǎn)單示例
7.8 洛倫茨吸引子
7.9 剛性
7.10 事件
7.11 多步法
7.12 MATLAB 的ODE 解算命令
7.13 誤差
7.14 性能
7.15 更多閱讀
習(xí)題
第8 章傅里葉分析
8.1 按鍵撥號(hào)
8.2 有限傅里葉變換
8.3 交互界面fftgui
8.4 太陽黑子
8.5 周期時(shí)間序列
8.6 快速有限傅里葉變換
8.7 示教M 文件ffttx
8.8 fftmatrix 繪制傅里葉矩陣的圖
8.9 其他傅里葉變換與級(jí)數(shù)
8.10 更多閱讀
習(xí)題
第9 章隨機(jī)數(shù)
9.1 偽隨機(jī)數(shù)
9.2 均勻分布
9.3 正態(tài)分布
9.4 示教M 文件randtx 和randntx
9.5 Twister 算法
2012年仲秋,我作為Moler十年前訪華晤面過的熟人,再次受MathWorks中國公司的邀請(qǐng),出席CleveMoler的訪華歡迎會(huì)。在歡迎午餐席間,Moler表達(dá)了希望在中國見到由他本人授權(quán)的著作中譯本的強(qiáng)烈意愿。我欣然允諾翻譯,隨即Moler把NumericalComputingwithMATLAB的翻譯工作委托于我,并將出版權(quán)授予北京航空航天大學(xué)出版社。對(duì)此,我深感榮幸,因?yàn)閺腗athWorks網(wǎng)站首次出現(xiàn)此書電子版起的這些年里,我一直持有翻譯此書的強(qiáng)烈沖動(dòng)和期盼譯著在中國出版發(fā)行的迫切愿望。
我喜歡此書,因?yàn)镹umericalComputingwithMATLAB一書,既能讓讀者初讀時(shí)感受易學(xué)易懂之愉悅,又能讓讀者細(xì)讀時(shí)領(lǐng)受滲透于字里碼間的睿智點(diǎn)化;既能使讀者從MATLAB中獲得前所未有的數(shù)值解算能力,又可使讀者欣賞到浮點(diǎn)計(jì)算之?dāng)?shù)學(xué)優(yōu)雅。
我推崇此書,因?yàn)镹umericalComputingwithMATLAB的作者是CleveMoler,一個(gè)始終懷揣那樸實(shí)的、“讓學(xué)生學(xué)數(shù)學(xué)更輕松”理念的大學(xué)教授,一個(gè)始終懷揣那“讓他人最放心、最方便使用高質(zhì)量數(shù)學(xué)計(jì)算軟件”平常心的科學(xué)家1。正是這濟(jì)世理念驅(qū)使他成為了“高性能數(shù)值計(jì)算測(cè)試標(biāo)準(zhǔn)的LINPACK、EISPACK軟件”的主要貢獻(xiàn)者,驅(qū)使他發(fā)明了“對(duì)世界工程教學(xué)和科研領(lǐng)域產(chǎn)生不可估量深遠(yuǎn)影響的MATLAB”2,使他成為了世界公認(rèn)的現(xiàn)代數(shù)值分析和科學(xué)計(jì)算的一位創(chuàng)始人、給計(jì)算世界打下深深烙印的數(shù)學(xué)奇才3。他是美國工業(yè)和應(yīng)用數(shù)學(xué)學(xué)會(huì)SIAM前主席、美國工程院院士、2012年IEEE計(jì)算機(jī)先驅(qū)獎(jiǎng)獲得者。然而,他喜歡自稱“最愛編程的地地道道駭客(hacker)”,趣喻自己是“圍繞數(shù)學(xué)家和計(jì)算機(jī)科學(xué)家雙核作Lorenz混沌運(yùn)動(dòng)”的人1。
我贊賞此書,因?yàn)镹umericalComputingwithMATLAB一書是CleveMoler從其前20年教學(xué)生涯和后20年專事MATLAB經(jīng)驗(yàn)中升華而成的原創(chuàng)珍品,是凝聚其對(duì)數(shù)學(xué)應(yīng)用本質(zhì)性獨(dú)特見解、展示未來教學(xué)方向的數(shù)值計(jì)算教材之圭臬。該書物化地展現(xiàn)了,CleveMoler對(duì)數(shù)值分析和科學(xué)計(jì)算教學(xué)的如下卓識(shí)真見1:?在科學(xué)和技術(shù)計(jì)算中,存在一個(gè)既不被數(shù)學(xué)覆蓋、也不被計(jì)算機(jī)學(xué)科和其它應(yīng)用學(xué)科覆蓋的共同知識(shí)體系。它是涉及數(shù)值分析、科學(xué)編程、計(jì)算機(jī)圖形和數(shù)據(jù)庫管理等內(nèi)容的獨(dú)立知識(shí)體系。
對(duì)于科技領(lǐng)域的非數(shù)學(xué)從業(yè)人員而言,他們所需要解決的具體問題,往往不是單一的數(shù)學(xué)問題,而是更大更復(fù)雜的綜合性問題。這些問題的解決需要多種數(shù)學(xué)知識(shí)和數(shù)值計(jì)算方法。在此境況下,他們不可能、也不需要知道每種數(shù)值方法的微妙細(xì)節(jié)和具體公式,而只需要知道如何調(diào)用各種計(jì)算軟件去解決面前不可回避的數(shù)學(xué)問題,以騰出更多的時(shí)間和精力,專注于那綜合性的具體設(shè)計(jì)目標(biāo)。就像在一個(gè)具體問題中遇到需要計(jì)算的正弦、余弦函數(shù)值時(shí),人們并不會(huì)對(duì)近似計(jì)算正弦、余弦函數(shù)值的具體公式和執(zhí)行細(xì)節(jié)刻意刨根問底,而只是徑直調(diào)用它們的計(jì)算命令。
NumericalComputingwithMATLAB由美國工業(yè)和應(yīng)用數(shù)學(xué)學(xué)會(huì)SIAM于2004年出第一版,2008年出修訂版。此書在2013年經(jīng)CleveMole再次修訂,且在其親自授權(quán)后于不久前由北京航空航天大學(xué)出版社出版。該書的章節(jié)標(biāo)題不僅涵蓋常見數(shù)值分析教材的所有章節(jié)標(biāo)題,而且包含“隨機(jī)數(shù)”和“偏微分方程”兩章。NumericalComputingwithMATLAB的特別之處在于:該書是由具有數(shù)值分析、科學(xué)計(jì)算之父和MATLAB之父雙重身份的CleveMoler寫成的。該書不以深?yuàn)W的數(shù)值分析理論為內(nèi)容,而以向讀者提供易于理解的數(shù)學(xué)思維、易于掌握的數(shù)學(xué)編程技術(shù)為宗旨。因此,在該書中,沒有某些數(shù)值分析教材中那定理和定理證明的重巒疊嶂,沒有那冗長(zhǎng)公式和滿紙推演的濃霧密云,也沒有浮點(diǎn)誤差理論的濃墨重彩。在書中,能見到的是那信手拈來的博引旁證、高屋建瓴的評(píng)價(jià)結(jié)論,能見到的是脈絡(luò)清晰的引導(dǎo)、使人頓悟的簡(jiǎn)明示例,能見到的是由MATLAB代碼一步一步指引的、讀者完全可以自己在計(jì)算機(jī)上重現(xiàn)的各種算法演繹和實(shí)驗(yàn),能見到的是能準(zhǔn)確掌控計(jì)算誤差和提供性能改善選項(xiàng)的MATLAB命令。
NumericalComputingwithMATLAB英文原版正文和習(xí)題中的MATLAB代碼、隨書NCM匯集中的M文件,都在MATLABR2013a版下由Moler進(jìn)行過適配性修改。這些代碼和文件設(shè)計(jì)之精心、運(yùn)用之巧妙、可讀性之強(qiáng),都達(dá)到了Moler自認(rèn)的前所未有的滿意程度,并被Moler引以自傲1。
《MATLAB數(shù)值計(jì)算》(2013修訂版)是據(jù)2014英文版NumericalComputingwithMATLAB翻譯的。本書正文及習(xí)題翻譯忠于原著、原意。在翻譯時(shí),為保證讀者能重現(xiàn)英文原版所列之計(jì)算結(jié)果,也為幫助讀者準(zhǔn)確理解原文編碼的奧妙,在個(gè)別段落中補(bǔ)寫了些許M碼,在個(gè)別M碼后增補(bǔ)了一點(diǎn)解釋。此外,為適應(yīng)我國學(xué)術(shù)和教學(xué)環(huán)境,把英文原版中實(shí)施“對(duì)應(yīng)元素間運(yùn)算”的“Matrix、Vector”詞匯,翻譯成“數(shù)組、行(或列)數(shù)組”。中譯版《MATLAB數(shù)值計(jì)算》中的MATLAB代碼、隨書NCM匯集中的M文件,由譯者在MATLABR2014a版下進(jìn)行過適配性修訂。
《MATLAB數(shù)值計(jì)算》(2013修訂版)除正文外,增添四個(gè)附錄:“附錄A.MATLAB功用釋要”,是對(duì)正文提及的MATLAB要素,從用法角度出發(fā),給予簡(jiǎn)明系統(tǒng)地要旨介紹或補(bǔ)充,減少讀者閱讀困難和查閱其他幫助材料的麻煩!案戒汢.MATLAB命令和示教文件名索引”,供讀者據(jù)命令名、文件名檢索書中示例。“附錄C.中文關(guān)鍵詞索引”,供讀者據(jù)中文術(shù)語對(duì)照英文詞匯檢索正文表述!案戒汥.2012年度計(jì)算機(jī)先驅(qū)獎(jiǎng)?lì)C獎(jiǎng)典禮視頻整理稿”,供讀者全面了解Moler的杰出貢獻(xiàn)和人文精神,進(jìn)而更好領(lǐng)悟Moler原著所體現(xiàn)的科學(xué)計(jì)算思想。
《MATLAB數(shù)值計(jì)算》(2013修訂版)的編譯由張志涌、張子燕、楊祖櫻三人協(xié)同完成。全書經(jīng)通譯、M碼運(yùn)作、附錄編寫、通校、文字修飾等幾階段后完稿,前后歷時(shí)18個(gè)月。在通譯和M碼運(yùn)作及附錄編寫期間,我們就正文敘述、M代碼、GUI表現(xiàn)及附錄內(nèi)容等,多次向原作者請(qǐng)教、咨詢及建議。對(duì)此,原作者都及時(shí)地給予詳盡回復(fù)和認(rèn)真處理。這使我們親身感受到CleveMoler對(duì)所有議題了然于胸的從容和一絲不茍的嚴(yán)謹(jǐn),領(lǐng)受到CleveMoler對(duì)MATLAB命令設(shè)計(jì)原由的透徹解讀和出神入化的功力。在本譯作完稿之際,我們?nèi)w譯者向MathWorks公司首席科學(xué)家CleveMoler表示最真誠的深深謝意。
在譯稿出版之際,我們還要向北京航空航天大學(xué)出版社的陳守平、蔡喆、趙延永等表達(dá)最真摯的感謝,感謝他們?yōu)槲覀兙幾g所提供的各種寶貴資料和信息,感謝他們?yōu)楸WC本書高質(zhì)量出版所作出的一切努力。
《MATLAB數(shù)值計(jì)算》(2013修訂版)譯作雖經(jīng)我們多人反復(fù)修正校對(duì),但限于我們知識(shí)的局限,誤譯、錯(cuò)譯、片面理解及其他疏漏仍難以杜絕。在此,懇請(qǐng)各方面專家和廣大讀者不吝指教。
張志涌、張子燕、楊祖櫻
2014年10月21日
……