版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Mathematica5教程第1章Mathematica概述1.1 運(yùn)行和啟動(dòng):介紹如何啟動(dòng)Mathematica軟件,如何輸入并運(yùn)行命令 1.2 表達(dá)式的輸入:介紹如何使用表達(dá)式 1.3 幫助的使用:如何在mathematica中尋求幫助 第2章Mathematica的基本量2.1 數(shù)據(jù)類型和常量:mathematica中的數(shù)據(jù)類型和基本常量 2.2 變量:變量的定義,變量的替換,變量的清除等 2.3 函數(shù):函數(shù)的概念,系統(tǒng)函數(shù),自定義函數(shù)的方法 2.4 表:表的創(chuàng)建,表元素的操作,表的應(yīng)用 2.5 表達(dá)式:表達(dá)式的操作 2.6 常用符號(hào):經(jīng)常使用的一些符號(hào)的意義 第3章Mathematic
2、a的基本運(yùn)算3.1 多項(xiàng)式運(yùn)算:多項(xiàng)的四則運(yùn)算,多項(xiàng)式的化簡(jiǎn)等 3.2 方程求解:求解一般方程,條件方程,方程數(shù)值解以及方程組的求解 3.3 求積求和:求積與求和第4章 函數(shù)作圖4.1 二維函數(shù)作圖:一般函數(shù)的作圖,參數(shù)方程的繪圖 4.2 二維圖形元素:點(diǎn),線等圖形元素的使用 4.3 圖形樣式:圖形的樣式,對(duì)圖形進(jìn)行設(shè)置 4.4 圖形的重繪和組合:重新顯示所繪圖形,將多個(gè)圖形組合在一起 4.5 三維圖形的繪制:三維圖形的繪制,三維參數(shù)方程的圖形,三維圖形的設(shè)置 第5章 微積分的基本操作5.1 函數(shù)的極限:如何求函數(shù)的極限 5.2 導(dǎo)數(shù)與微分:如何求函數(shù)的導(dǎo)數(shù),微分 5.3 定積分與不定積分:如
3、何求函數(shù)的不定積分和定積分,以及數(shù)值積分 5.4 多變量函數(shù)的微分:如何求多元函數(shù)的偏導(dǎo)數(shù),微分 5.5 多變量函數(shù)的積分:如何計(jì)算重積分 5.6 無(wú)窮級(jí)數(shù):無(wú)窮級(jí)數(shù)的計(jì)算,斂散性的判斷 第6章 微分方程的求解6.1 微分方程的解:微分方程的求解 6.2 微分方程的數(shù)值解:如何求微分方程的數(shù)值解 第7章 Mathematica程序設(shè)計(jì)7.1 模塊:模塊的概念和定義方法 7.2 條件結(jié)構(gòu):條件結(jié)構(gòu)的使用和定義方法 7.3 循環(huán)結(jié)構(gòu):循環(huán)結(jié)構(gòu)的使用 7.4 流程控制第8章 Mathematica中的常用函數(shù)8.1 運(yùn)算符和一些特殊符號(hào):常用的和不常用一些運(yùn)算符號(hào)8.2 系統(tǒng)常數(shù):系統(tǒng)定義的一些常量
4、及其意義 8.3 代數(shù)運(yùn)算:表達(dá)式相關(guān)的一些運(yùn)算函數(shù) 8.4 解方程:和方程求解有關(guān)的一些操作 8.5 微積分相關(guān)函數(shù):關(guān)于求導(dǎo),積分,泰勒展開(kāi)等相關(guān)的函數(shù) 8.6 多項(xiàng)式函數(shù):多項(xiàng)式的相關(guān)函數(shù) 8.7 隨機(jī)函數(shù):能產(chǎn)生隨機(jī)數(shù)的函數(shù)函數(shù) 8.8 數(shù)值函數(shù):和數(shù)值處理相關(guān)的函數(shù),包括一些常用的數(shù)值算法 8.9 表相關(guān)函數(shù):創(chuàng)建表,表元素的操作,表的操作函數(shù) 8.10 繪圖函數(shù):二維繪圖,三維繪圖,繪圖設(shè)置,密度圖,圖元,著色,圖形顯示等函數(shù) 8.11 流程控制函數(shù)第1章Mathematica概述1.1 Mathematica的啟動(dòng)和運(yùn)行Mathematica是美國(guó)Wolfram研究公司生產(chǎn)的一種
5、數(shù)學(xué)分析型的軟件,以符號(hào)計(jì)算見(jiàn)長(zhǎng),也具有高精度的數(shù)值計(jì)算功能和強(qiáng)大的圖形功能。假設(shè)在Windows環(huán)境下已安裝好Mathematica5.0,啟動(dòng)Windows后,在“開(kāi)始”菜單的“程序”中單擊,就啟動(dòng)了Mathematica5.0,在屏幕上顯示如圖1的Notebook窗口,系統(tǒng)暫時(shí)取名Untitled-1,直到用戶保存時(shí)重新命名為止。圖1輸入1+1,然后按下Shif+Enter鍵,這時(shí)系統(tǒng)開(kāi)始計(jì)算并輸出計(jì)算結(jié)果,并給輸入和輸出附上次序標(biāo)識(shí)In1和Out1,注意In1是計(jì)算后才出現(xiàn)的;再輸入第二個(gè)表達(dá)式,要求系統(tǒng)將一個(gè)二項(xiàng)式x5 + y5展開(kāi),按Shift+Enter輸出計(jì)算結(jié)果后,系統(tǒng)分別將
6、其標(biāo)識(shí)為In2和Out2,如圖2。圖2在Mathematica的Notebook界面下,可以用這種交互方式完成各種運(yùn)算,如函數(shù)作圖,求極限、解方程等,也可以用它編寫(xiě)像C那樣的結(jié)構(gòu)化程序。在Mathematica系統(tǒng)中定義了許多功能強(qiáng)大的函數(shù),我們稱之為內(nèi)建函數(shù)(built-in function), 直接調(diào)用這些函數(shù)可以取到事半功倍的效果。這些函數(shù)分為兩類,一類是數(shù)學(xué)意義上的函數(shù),如:絕對(duì)值函數(shù)Absx,正弦函數(shù)Sinx,余弦函數(shù)Cosx,以e為底的對(duì)數(shù)函數(shù)Logx,以a為底的對(duì)數(shù)函數(shù)Loga,x等;第二類是命令意義上的函數(shù),如作函數(shù)圖形的函數(shù)Plotfx,x,xmin,xmax,解方程函數(shù)S
7、olveeqn,x,求導(dǎo)函數(shù)Dfx,x等。必須注意的是:Mathematica 嚴(yán)格區(qū)分大小寫(xiě),一般地,內(nèi)建函數(shù)的首寫(xiě)字母必須大寫(xiě),有時(shí)一個(gè)函數(shù)名是由幾個(gè)單詞構(gòu)成,則每個(gè)單詞的首寫(xiě)字母也必須大寫(xiě),如:求局部極小值函數(shù)FindMinimumfx,x,x0等。第二點(diǎn)要注意的是,在Mathematica中,函數(shù)名和自變量之間的分隔符是用方括號(hào)“ ”,而不是一般數(shù)學(xué)書(shū)上用的圓括號(hào)“( )”,初學(xué)者很容易犯這類錯(cuò)誤。如果輸入了不合語(yǔ)法規(guī)則的表達(dá)式,系統(tǒng)會(huì)顯示出錯(cuò)信息,并且不給出計(jì)算結(jié)果,例如:要畫(huà)正弦函數(shù)在區(qū)間-10,10上的圖形,輸入plotSinx,x,-10,10,則系統(tǒng)提示“可能有拼寫(xiě)錯(cuò)誤, 新
8、符號(hào)plot 很像已經(jīng)存在的符號(hào)Plot”, 實(shí)際上,系統(tǒng)作圖命令“Plot”第一個(gè)字母必須大寫(xiě),一般地,系統(tǒng)內(nèi)建函數(shù)首寫(xiě)字母都要大寫(xiě)。再輸入PlotSinx,x,-10,10 ,系統(tǒng)又提示缺少右方括號(hào),并且將不配對(duì)的括號(hào)用紫色顯示,如圖3。圖3一個(gè)表達(dá)式只有準(zhǔn)確無(wú)誤,方能得出正確結(jié)果。學(xué)會(huì)看系統(tǒng)出錯(cuò)信息能幫助我們較快找出錯(cuò)誤,提高工作效率。 完成各種計(jì)算后,點(diǎn)擊“文件”“退出” 退出,如果文件未存盤(pán),系統(tǒng)提示用戶存盤(pán),文件名以“.nb”作為后綴,稱為Notebook文件。以后想使用本次保存的結(jié)果時(shí)可以通過(guò)“文件”“打開(kāi)”菜單讀入,也可以直接雙擊它,系統(tǒng)自動(dòng)調(diào)用Mathematica將它打開(kāi)。
9、1.2表達(dá)式的輸入Mathematica 提供了多種輸入數(shù)學(xué)表達(dá)式的方法。除了用鍵盤(pán)輸入外, 還可以使用工具樣或者快捷方式健入運(yùn)算符、矩陣或數(shù)學(xué)表達(dá)式。1. 數(shù)學(xué)表達(dá)式二維格式的輸入Mathematic擔(dān)提供了兩種格式的數(shù)學(xué)表達(dá)式。形如x/(2+3x)+y*(x-w)的稱為一維格式,形如的稱為二維格式。你可以使用快捷方式輸入二維格式,也可用基本輸入工具欄輸入二維格式。下面列出了用快捷方式輸入二維格式的方法:數(shù)學(xué)運(yùn)算 數(shù)學(xué)表達(dá)式 按鍵 分式 x Ctrl+/ 2 n 次方 x n x Ctrl+ n 開(kāi) 2次方 Ctrl +2 x 下標(biāo) x2 x Ctrl+_ 2例如輸入數(shù)學(xué)表達(dá)式,可以按如下順
10、序輸入按鍵:(,x,+,1,),Ctrl+ ,+,4,Ctrl+/,Ctrl+2,2,x,+,y另外也可從“文件”菜單中激活“控制面板”“Basic Input”工具欄,也可輸入,并且使用工具欄可輸入更復(fù)雜的數(shù)學(xué)表達(dá)式,如下圖4。圖4 圖52.特殊字符的輸入MathemMatica 還提供了用以輸入各種特殊符號(hào)的工具欄。基本輸入工具欄包含了常用的特殊字符(上圖),只要單擊這些字符按鈕即可輸入。若要輸入其它的特殊字符或運(yùn)算符號(hào),必須使用從“文件”菜單中激活“控制面板”“Complete Characters”工具欄,如上圖5,單擊符號(hào)后即可輸入。1.3 Mathematica的聯(lián)機(jī)幫助系統(tǒng)用Ma
11、thematica的過(guò)程中,常常需要了解一個(gè)命令的詳細(xì)用法,或者想知系統(tǒng)中是否有完成某一計(jì)算的命令,聯(lián)機(jī)幫助系統(tǒng)永遠(yuǎn)是最詳細(xì)、最方便的資料庫(kù)。1.獲取函數(shù)和命令的幫助在Notebook界面下,用 ?或 ? 可向系統(tǒng)查詢運(yùn)算符、函數(shù)和命令的定義和用法,獲取簡(jiǎn)單而直接的幫助信息。 例如,向系統(tǒng)查詢作圖函數(shù)Plot命令的用法 ?Plot 系統(tǒng)將給出調(diào)用 Plot 的格式以及 Plot 命令的功能(如果用兩個(gè)問(wèn)號(hào) “?”, 則信息會(huì)更詳細(xì)一些)。? Plot* 給出所有以Plot這四個(gè)字母開(kāi)頭的命令。2.Help菜單 任何時(shí)候都可以通過(guò)按shift+F1鍵或點(diǎn)擊“幫助”菜單項(xiàng)“幫助瀏覽”,調(diào)出幫助菜單
12、,如圖6所示。圖6其中的各按鈕用途如下:Built-in Function 內(nèi)建函數(shù),按數(shù)值計(jì)算、代數(shù)計(jì)算、圖形和編程分類存放 Add-ons & Links 程序包附件和鏈接 The Mathematica Book 一本完整的Mathematica使用手冊(cè) Getting Started/Demos 初學(xué)者入門(mén)指南/多種演示Tour 漫游MathematicFront End 菜單命令的快捷鍵,二維輸入格式等 Master Index 按字母命令給出命令、函數(shù)和選項(xiàng)的索引表如果要查找Mathematica中具有某個(gè)功能的函數(shù),可以通過(guò)幫助菜單中的Mahematica使用手冊(cè),通過(guò)其
13、目錄索引可以快速定位到自己要找的幫助信息。例如:需要查找Mathematica中有關(guān)解方程的命令,單擊“The Mathematica Book”按鈕,再單擊“Contents”,在目錄中找到有關(guān)解方程的節(jié)次,點(diǎn)擊相應(yīng)的超鏈接,有關(guān)內(nèi)容的詳細(xì)說(shuō)明就馬上調(diào)出來(lái)了。如果知道具體的函數(shù)名,但不知其詳細(xì)使用說(shuō)明,可以在命令按鈕 Goto 右邊的文本框中鍵入函數(shù)名,按回車鍵后就顯示有關(guān)函數(shù)的定義、例題和相關(guān)聯(lián)的章節(jié)。例如,要查找函數(shù)Plot的用法,只要在文本框中鍵入Plot,按回車鍵后顯示Plot函數(shù)的詳細(xì)用法和例題的窗口,如圖7。圖7如果已經(jīng)確知Mathematica 中有具有某個(gè)功能的函數(shù),但不知具
14、體函數(shù)名,可以點(diǎn)擊Built-in Functions按鈕,再按功能分類從粗到細(xì)一步一步找到具體的函數(shù),例如,要找畫(huà)一元函數(shù)圖形的函數(shù),點(diǎn)擊Built-in Functions Graphics and Sound2D PlotsPlot,找到Plot的幫助信息(如圖7)。第2章Mathematica的基本量2.1數(shù)據(jù)類型和常數(shù)1.數(shù)值類型在Mathematic中,基本的數(shù)值類型有四種:整數(shù)、有理數(shù)、實(shí)數(shù)和復(fù)數(shù)。如果你的計(jì)算機(jī)的內(nèi)存足夠大,Mathemateic可以表示任意長(zhǎng)度的精確實(shí)數(shù),而不受所用的計(jì)算機(jī)字長(zhǎng)的影響。整數(shù)與整數(shù)的計(jì)算結(jié)果仍是精確的整數(shù)或是有理數(shù)。例如2的100次方是一個(gè)31位
15、的整數(shù):ln1:=2100在Mathematica中允許使用分?jǐn)?shù),也就是用有理數(shù)表示化簡(jiǎn)過(guò)的分?jǐn)?shù)。當(dāng)兩個(gè)整數(shù)相除而又不能整除時(shí),系統(tǒng)就用有理數(shù)來(lái)表示,即有理數(shù)是由兩個(gè)整數(shù)的比來(lái)組成如:In2:=12345/5555Out2=實(shí)數(shù)是用浮點(diǎn)數(shù)表示的,Mathematica實(shí)數(shù)的有效位可取任意位數(shù),是一種具有任意精確度的近似實(shí)數(shù),當(dāng)然在計(jì)算的時(shí)候也可以控制實(shí)數(shù)的精度。實(shí)數(shù)有兩種表示方法:一種是小數(shù),另外一種是用指數(shù)方法表示的。如:In3:=0.239998Out3=0.23998In4:=0.12*1011Out4=0.12*1011實(shí)數(shù)也可以與整數(shù),有理數(shù)進(jìn)行混合運(yùn)算,結(jié)果還是一個(gè)實(shí)數(shù)。In5:=
16、2+1/4+0.5Out5=2.75 小數(shù)表示復(fù)數(shù)是由實(shí)部和虛部組成,實(shí)部和虛部可以用整數(shù)、實(shí)數(shù)、有理數(shù)表示。在Mathematica中,用I 表示虛數(shù)單位如:In6:=3+0.7IOut6=3+0.7i2.不同類型數(shù)的轉(zhuǎn)換在Mathematica的不同應(yīng)用中,通常對(duì)數(shù)字的類型要求是不同的。例如在公式推導(dǎo)中的數(shù)字常用整數(shù)或有理數(shù)表示,而在數(shù)值計(jì)算中的數(shù)字常用實(shí)數(shù)表示。在一般情況下在輸出行Outn中,系統(tǒng)根據(jù)輸入行Inn的數(shù)字類型對(duì)計(jì)算結(jié)果做出相應(yīng)的處理。如果有一些特殊的要求,就要進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換。在Mathematica中的提供以下幾個(gè)函數(shù)達(dá)到轉(zhuǎn)換的目的:Nx 將x轉(zhuǎn)換成實(shí)數(shù)Nx,n 將x轉(zhuǎn)換
17、成近似實(shí)數(shù),精度為nRationalizex 給出x的有理數(shù)近似值Rationalizex,dx 給出x的有理數(shù)近似值,誤差小于dx舉例:In1:=N5/3,20Out1=1.6666666666666666667In2:=N%,10 表示上一輸出結(jié)果,即=1.6666666666666666667。Out2=1.666666667 第二個(gè)輸出是把上面計(jì)算的結(jié)果變?yōu)?0位精度的數(shù)字。In3:=Rationalize%Out3=3.數(shù)學(xué)常數(shù)Mathematica 中定義了一些常見(jiàn)的數(shù)學(xué)常數(shù),這些數(shù)學(xué)常數(shù)都是精確數(shù)。Pi 表示3.14159E 自然對(duì)數(shù)的底e2.71828Degree 1度,/18
18、0弧度I 虛數(shù)單位iInfinity 無(wú)窮大infinity 負(fù)無(wú)窮大 GondenRatio 黃金分割數(shù)0.61803 數(shù)學(xué)常數(shù)可用在公式推導(dǎo)和數(shù)值計(jì)算中,在數(shù)值計(jì)算中表示精確值。如:In1:=Pi2Out1=2In2:=Pi2/NOut2=9.86964.數(shù)的輸出形式在數(shù)的輸出中可以使用轉(zhuǎn)換函數(shù)進(jìn)行不同數(shù)據(jù)類型和精度的轉(zhuǎn)換。另外對(duì)一些特殊要求的格式還可以使用如下的格式函數(shù):NumberFormexpr,n 以n位精度的實(shí)數(shù)形式輸出實(shí)數(shù)exprScientificFormatexpr 以科學(xué)記數(shù)法輸出實(shí)數(shù)exprEngineergFormexpr 以工程記數(shù)法輸出實(shí)數(shù)expr例如:In1:=
19、NPi30,30Out1=×1014In2:=NumberForm%,10Out2/NumberForm=8.212893304×1014下面的函數(shù)輸出按工程記數(shù)法表示的指數(shù)可被3整除的實(shí)數(shù)In3=EngineeringForm% %表示上兩步的輸出結(jié)果,即Out1Out3/EngineeringForm=821.×10122.2變量1變量的命名 Mathematica中內(nèi)部函數(shù)和命令都是以大寫(xiě)字母開(kāi)始的標(biāo)示符,為了不會(huì)與它們混淆,我們自定義的變量應(yīng)該是以小寫(xiě)字母開(kāi)始,后跟數(shù)字和字母的組合,長(zhǎng)度不限。例如:a12,ast,aST都是合法的,而12a,z*a,a b
20、(中間有空格)是非法的。另外在Mathematica中的變量是區(qū)分大小寫(xiě)的。在Mathematica中,變量不僅可以存放一個(gè)數(shù)值,還可以存放表達(dá)式或復(fù)雜的算式。 2給變量賦值在Mathmatica中用等號(hào)為變量賦值。同一個(gè)變量可以表示一個(gè)數(shù)值,一個(gè)數(shù)組,一個(gè)表達(dá)式,甚至一個(gè)圖形。如: In1:=x=3Out1=3In2:=x2+2*xOut2=15In3:=x=%+1Out3=16對(duì)不同的變量可同時(shí)賦不同的值,例如: In4:=u,v,w=1,2,3 Out4=1,2,3In5:=2u+3v+wOut5=11對(duì)于已定義的變量,當(dāng)你不再使用它是,為防止變量值的混淆,可以隨時(shí)用.清除它的值,如果變
21、量本身也要清除用函數(shù)Clearvar,例如:In6:=u=. In7:=2u+v (上面已定義了u,v的值)Out7=2+2u3.變量的替換在給定一個(gè)表達(dá)式時(shí)其中的變量可能取不同的值,這是可用變量替換來(lái)計(jì)算表達(dá)式的不同值。方法為用expr/.x->xval,例如: In1:=f=x/2+1Out1= 1+In2:=f/.x->1Out2= In3:=f/.x->2Out3=3如果表達(dá)式中有多個(gè)變量,也可同時(shí)替換,方法為:expr/.x->xval,y->yval,.In4:=(x+y)(x-y)2/.x->3,y->1-aOut4=(4-a)(2+a)
22、22.3 函數(shù) 1系統(tǒng)函數(shù)在Mathmatic中定義了大量的數(shù)學(xué)函數(shù)可以直接調(diào)用,這些函數(shù)其名稱一般表達(dá)了一定的意義,可以幫助我們理解。下面是幾個(gè)常用的函數(shù):Floorx 不比x大的最大整數(shù)Ceilingx 不比x小的最小整數(shù)Signx 符號(hào)函數(shù)Roundx 接近x的整數(shù)Absx x絕對(duì)值Maxx1,x2,x3. x1 ,x2,x3.中的最大值 Minx1,x2,x3. x1,x2,x3.中的最小值 Random 01之間的隨機(jī)函數(shù) RandomR,xmax 0xmax之間的隨機(jī)函數(shù)(R為Real,Integer,Complex之一)RandomR,xmin,xmax xminxmax之間的隨
23、機(jī)函數(shù)(R為Real,Integer,Complex之一)Expx 指數(shù)函數(shù)e x Logx 自然對(duì)數(shù)函數(shù)lnx Logb,x 以b為底的對(duì)數(shù)函數(shù) Sinx,Cosx,Tanx,Cscx,Secx,Cotx 三角函數(shù)(變量是以弧度為單位的)ArcSinx,ArcCosx,ArcTanx,ArcCscx,ArcSecx,ArcCotx 反三角函數(shù)Sinhx,Coshx,Tanhxx,Cschx,Sechx,Cothx 雙曲函數(shù) ArcSinhx, ArcCoshx, ArcTanhxx, ArcCschx,ArcSechx,ArcCothx 反雙曲函數(shù)Modm,n m被n整除的余數(shù),余數(shù)與n同號(hào)
24、Quotientm,n m/n的整數(shù)部分GCDn1,n2,n3或GCDs n1,n2, 或s的最大公約數(shù),s為數(shù)據(jù)集合LCMn1,n2或LCMs n1,n2 或s的最小公倍數(shù),s為數(shù)據(jù)集合N! N的階程N(yùn)! N的雙階程Mathematica中的函數(shù)與數(shù)學(xué)上的函數(shù)有些不同的地方,Mathematica中函數(shù)是一個(gè)具有獨(dú)立功能的程序模塊,可以直接被調(diào)用。同時(shí)每一函數(shù)也可以包括一個(gè)或多個(gè)參數(shù),也可以沒(méi)有參數(shù)。參數(shù)的的數(shù)據(jù)類型也比較復(fù)雜。更加詳細(xì)的可以參看系統(tǒng)的幫助,了解各個(gè)函數(shù)的功能和使用方法是學(xué)習(xí)Mathematica軟件的基礎(chǔ)。2函數(shù)的定義(1) 函數(shù)的立即定義 立即定義函數(shù)的語(yǔ)法如下fx_=e
25、xpr函數(shù)名為f,自變量為x,expr是表達(dá)式。在執(zhí)行時(shí)會(huì)把expr 中的x都換為f的自變量x (不是x_ )。函數(shù)的自變量具有局部性,只對(duì)所在的函數(shù)起作用。函數(shù)執(zhí)行結(jié)束后也就沒(méi)有了,不會(huì)改變其它全局定義的同名變量的值。請(qǐng)看下面的例子,定義函數(shù)f(x)=xsinx+x2,對(duì)定義的函數(shù)我們可以求函數(shù)值,也可繪制它的圖形。In1:=fx_=x*Sinx+x2Out1=x 2 +xSinxIn2:=f1Out2=1+Sin1In3:=Plotfx,x,-3,3Out3= -Graphics-對(duì)于定義的函數(shù)我們可以使用命令Clearf清除掉,而Removef則從系統(tǒng)中刪除該函數(shù)。(2) 多變量函數(shù)的定
26、義也可以定義多個(gè)變量的函數(shù),格式為fx_,y_,z_,=expr自變量為x,y,z,相應(yīng)的expr中的自變量會(huì)被替換。例如定義函數(shù)f(x,y)=xy+ycosx。In1:=fx_,y_ =x*y+y*CosxOut1=xy+yCosxIn2:=f2,3Out2=6+3Cos2(3) 延遲定義函數(shù)延遲定義函數(shù)從定義方法上與即時(shí)定義的區(qū)別為 “=” 與“:=”延遲定義的格式為fx_:=expr其他操作基本相同。那么延遲定義和即時(shí)定義的主要區(qū)別是什么?即時(shí)定義函數(shù)在輸入函數(shù)后立即定義函數(shù)并存放在內(nèi)存中并可直接調(diào)用。延時(shí)定義只是在調(diào)用函數(shù)時(shí)才真正定義函數(shù)。(4) 使用條件運(yùn)算符定義和If命令定義函數(shù)如
27、果要定義如:這樣的分段函數(shù)應(yīng)該如何定義,顯然要根據(jù)x 的不同值給出不同的表達(dá)式。一種辦法是使用條件運(yùn)算符,基本格式為:fx_:=expr/;condition ,當(dāng)condition條件滿足時(shí)才把expr賦給f(x) 。下面定義方法,通過(guò)圖形可以驗(yàn)證所定義函數(shù)的正確性。In1:=fx_:=x-1/;x>=0 fx_:=x2/;(x>-1)&&(x<0) fx_:=x-1/;x<= -1In4:=Plotfx,x,-2,2Out4= -Graphics-當(dāng)然使用If命令也可以定義上面的函數(shù),If語(yǔ)句的格式為If條件,值1,值2,如果條件成立取“值1”,否則
28、取“值2”,用If語(yǔ)句的定義結(jié)果如下:In5:=gx_:=Ifx>=0,x-1,Ifx<= -1,Sinx,x2In6:=Plotgx,x,-2,2Out6= -Graphics-可以看出用If定義的函數(shù)g(x)和前面函數(shù)f(x)相同,這里使用了兩個(gè)If嵌套,邏輯性比較強(qiáng)。關(guān)于其他的條件命令的進(jìn)一步討論請(qǐng)看后面的章節(jié)。2.4 表將一些相互關(guān)聯(lián)的元素放在一起,使它們成為一個(gè)整體。既可以對(duì)整體操作,也可以對(duì)整體中的一個(gè)元素單獨(dú)進(jìn)行操作。在Mathematica中這樣的數(shù)據(jù)結(jié)構(gòu)就稱作表(List)。表a,b,c表示一個(gè)向量;表a,b,c,d表示一個(gè)矩陣。1建表在表中元素較少時(shí),可以采取直
29、接列表的方式列出表中的元素,如1,2,3,請(qǐng)看下面的操作:In1:=1,2,3Out1=1,2,3下面是符號(hào)表達(dá)式的列表:In2:=1+%x+x% Out2=1+2x,1+2x+x2,1+3x+x3下面是把Out2列表中的表達(dá)式對(duì)x求導(dǎo):In3:=D%,x Out3=2,2+2x,3+3x2In4:=%/.x->1Out4=2,4,6如果表中的元素較多時(shí),可以用建表函數(shù)進(jìn)行建表:Tablef,i,min,max,step 以step為步長(zhǎng)給出f的數(shù)值表,i由min變到maxTablef,min,max 給出f的數(shù)值表,i由min變到max 步長(zhǎng)為1Tablef,max 給出max個(gè)f的表
30、Tablef,i,imin,imax,j,jmin,jmax,. 生成一個(gè)多維表TableFormlist 或list/TableForm 以表格格式顯示一個(gè)表Rangen 生成一個(gè)1,2,n的列表Rangen1,n2,d 生成n1,n1+d,n1+d,.,n2的列表下面給出x乘i的值的表,i的變化范圍為2,6:In1:=Tablex*i,i,2,6 Out1=2x,3x,4x,5x,6xIn2:=Tablex2,4Out2=x2,x2,x2,x2用Range函數(shù)生成一個(gè)序列數(shù):In3:=Range10 Out3=1,2,3,4,5,6,7,8,9,10下面這個(gè)序列是以步長(zhǎng)為2,范圍從8到20
31、:In4:=Range8,20,2 Out4=8,10,12,14,16,18,20上面的參數(shù)變化都是只有一個(gè),也可制成包括多個(gè)參數(shù)的表,下面生成一個(gè)多維表:In5:=Table2i+j,i,1,3,j,3,5Out5=5,6,7,7,8,9,9,10,11使用函數(shù)TableForm可以以表格的方式輸出In6:=%/TableFormOut6/TableForm=5 6 77 8 99 10 112表的元素的操作當(dāng)t表示一個(gè)表時(shí),ti表示t中的第i個(gè)子表。如果t=1,2,a,b那么t3表示“a”。In1:=t=TableI+2,jI,1,3,j,3,5Out1=7,9,11,8,10,12,9
32、,11,13In2:=t2Out2=8,10,12對(duì)于表的操作Mathematica提供了豐富的函數(shù),詳細(xì)的可以查閱后面的附錄或者系統(tǒng)幫助。25 表達(dá)式1.表達(dá)式的含義Mathematica 能處理數(shù)學(xué)公式,表以及圖形等多種數(shù)據(jù)形式。盡管他們從形式上看起來(lái)不一樣,但在Mathematica內(nèi)部都被看成同種類型,即都把他們當(dāng)作表達(dá)式的形式。Mathematica 中的表達(dá)式是由常量、變量、函數(shù)、命令、運(yùn)算符和括號(hào)等組成,它最典型的形式是fx,y。2表達(dá)式的表示形式在顯示表達(dá)式時(shí),由于需要的不同,有時(shí)我們需要表達(dá)式的展開(kāi)形式,有時(shí)又需要其因子乘積的形式。在我們計(jì)算過(guò)程中可能得到很復(fù)雜的表達(dá)式,這時(shí)
33、我們又需要對(duì)它們進(jìn)行化簡(jiǎn)。常用的處理這種情況的函數(shù)就是變換表達(dá)式表示形式函數(shù)。Expandexpr 按冪次升高的順序展開(kāi)表達(dá)式Factorexpr 以因子乘積的形式表示表達(dá)式Simplifyexpr 進(jìn)行最佳的代數(shù)運(yùn)算,并給出表達(dá)式的最少項(xiàng)形式表達(dá)式(x+y) 4 (x+y 2 ) 展開(kāi):In1:=Expand(x+y)4*(x+y2)Out1=x 5 +4x 4 y+6x 3 y 2 +x 4 y 2 +4x 2 y 3 +4x 3 y 3 +xy 4 +6x 2 y 4 +4xy5 +y 6還原上面的表達(dá)式為因子乘積的形式:In2:=Factor%Out2=(x+y) 4 (x+y 2 )
34、多項(xiàng)式表達(dá)式的項(xiàng)數(shù)較多,比較復(fù)雜,在顯示時(shí)顯得比較雜亂,而且在計(jì)算過(guò)程中沒(méi)有必要知道全部的內(nèi)容;或表達(dá)式的項(xiàng)很有規(guī)律,沒(méi)有必要打印全部的表達(dá)式的結(jié)果,Mathematica提供了一些命令,可將它縮短輸出或不輸出。expr/Short 或 Shortexpr 顯示表達(dá)式的一行形式Shortexpr,n 顯示表達(dá)式的n行形式,命令后加一分號(hào)“;” 不輸出結(jié)果將表達(dá)式(1+x) 30展開(kāi),并僅顯示一行有代表項(xiàng)的式子:In3:=Expand(1+ x)30/ShortOut3=1+30x+435x 2 +4060x 3 +<<23>>+4060x 2 7 +435x 2 8 +
35、30x 2 9 +x 3 0將上式分成三行的形式展開(kāi):In4:=ShortExpand(1+ x)30,3Out4=1+30x+435x 2 +4060x 3 +27405x 4 +142506x 5 +<<19>>+142506x 2 5 +27405x 2 6 +4060x 2 7 +435x 2 8 +30x 2 9 +x 3 0把代數(shù)表達(dá)式變換到你所需要的形式?jīng)]有一種固定的模式,一般情況下,最好的辦法是進(jìn)行多次實(shí)驗(yàn),嘗試不同的變換并觀察其結(jié)果,再挑出你滿意的表示形式。3關(guān)系表達(dá)式與邏輯表達(dá)式我們已經(jīng)知道“”表示給變量賦值?,F(xiàn)在我們來(lái)學(xué)習(xí)一些其它的邏輯與關(guān)系算子。
36、關(guān)系表達(dá)式是最簡(jiǎn)單的邏輯表達(dá)式,我們常用關(guān)系表達(dá)式表示一個(gè)判別條件。例如:x>0,y=0。關(guān)系表達(dá)式的一般形式是:表達(dá)式關(guān)系算子表達(dá)式。其中表達(dá)式可為數(shù)字表達(dá)式、字符表達(dá)式或意義更廣泛的表達(dá)式,如一個(gè)圖形表達(dá)式等。在我們實(shí)際運(yùn)用中,這里的表達(dá)式常常是數(shù)字表達(dá)式或字符表達(dá)式。下面出Mathematica中的各種關(guān)系算子:x=y 相等x!=y 不相等x>y 大于x>=y 大于等于x<y 小于x<=y 小于等于x=y=z 都相等x!=y!=z 都不相等x>y>z 嚴(yán)格遞減x<y<z 嚴(yán)格遞增給變量x,y賦值,輸出后一變量的值,如:In1:=x=2
37、;y=9 Out1=9In2:=x>yOut2=False下面是比較兩個(gè)表達(dá)式的大?。篒n3:=32>y+1 上面已設(shè)y=9Out3= False用一個(gè)關(guān)系式只能表示一個(gè)判定條件,要表示幾個(gè)判定條件胡組合,必須用邏輯運(yùn)算符將關(guān)系表達(dá)式組織在一起,我們稱表示判定條件的表達(dá)式為邏輯表達(dá)式。下面是常用的邏輯運(yùn)算和它們的意義:! 非 && 并 | 或 Xor 異或 If 條件 LogicalExpandexpr 展開(kāi)邏輯表達(dá)式例如下面的例子說(shuō)明它們的應(yīng)用:In4:=3*x2<y+1&&32=y (前面已給x,y賦值,x=2,y=9)Out4=False
38、In5:=3*x2<y+1|32=yOut5=True2.6 常用的符號(hào)(term) 圓括號(hào)用于組合運(yùn)算fx 方括號(hào)用于函數(shù) 花括號(hào)用于列表i 雙括號(hào)用于排序% 代表最后產(chǎn)生的結(jié)果% 倒數(shù)第二次的算結(jié)果%(k) 倒數(shù)第k次的計(jì)算結(jié)果%n 例出行Outn的結(jié)果(用時(shí)要小心)第3章Mathematica的基本運(yùn)算3.1 多項(xiàng)式的表示形式可認(rèn)為多項(xiàng)式是表達(dá)式的一種特殊的形式,所以多項(xiàng)式的運(yùn)算與表達(dá)式的運(yùn)算基本一樣,表達(dá)式中的各種輸出形式也可用于多項(xiàng)式的輸出。Mathematica提供一組按不同形式表示代數(shù)式的函數(shù)。 Expandploy 按冪次展開(kāi)多項(xiàng)式ployExpandAllploy 全部
39、展開(kāi)多項(xiàng)式ployFactorploy 對(duì)多項(xiàng)式poly 進(jìn)行因式分解FactorTermsploy,x,y, 按變量 x,y,進(jìn)行分解Simplifypoly 把多項(xiàng)式化為最簡(jiǎn)形式FullSimplifyploy 把多項(xiàng)式化簡(jiǎn)Collectpoly,x 把多項(xiàng)式poly按x冪展開(kāi)Collectpoly,x,y 把多項(xiàng)式poly按x,y.的冪次展開(kāi)1.下面是一些例子(1) 對(duì)x 8 -1 進(jìn)行分解In1:=Factorx8-1Out1=(-1+x)(1+x)(1+x 2)(1+x4)(2) 展開(kāi)多項(xiàng)式 (1+x) 5In2:= Expand(1+x)5Out2=1+5x+10x 2+10x 3
40、+5x 4+x5(3) 展開(kāi)多項(xiàng)式 (1+x+3y) 4In3:= Expand(1+x+3y)4Out3=1+4x+6x 2+4x 3+x 4+12y+36xy+36x 2y+12x 3y+54y 2+108xy 2+54x 2y 2+108y 3+108xy 3+81y 4(4) 展開(kāi)并化簡(jiǎn)(2+x) 4 (1+x) 4 (3+x) 3In4:= SimplifyExpand(2+x)4(1+x)4(3+x)3Out4=(3+x) 3 (2+3x+x 2 ) 42.多項(xiàng)式的代數(shù)運(yùn)算多項(xiàng)式的運(yùn)算有加、減、乘、除運(yùn)算:+,-,*,/ 下面通過(guò)例子說(shuō)明。(1) 多項(xiàng)式的加運(yùn)算a 2 +3a+2與
41、a+1相加(后面例子中也使用這兩個(gè)多項(xiàng)式運(yùn)算)In5:=(a2+3*a+2)+(a+1) 括號(hào)可以不要Out5= 3+4a+ a 2或者In5:=p1= a2+3*a+2;p2= a+1;p1+p2Out5= 3+4a+ a 2(2) 多項(xiàng)式相減In6:=(a2+3*a+2)-(a+1)Out6= 1+2a+ a 2或者In6:=p1-p2Out6= 1+2a+ a 2(3) 多項(xiàng)式相乘In7:=(a2+3*a+2)*(a+1)Out7= (1+ a) (2+3a+ a2)或者In7:=p1*p2Out7= (1+ a) (2+3a+ a2)In8:=Expandp1*p2Out8=2+5a+
42、4a 2+a 3(4) 多項(xiàng)式相除In9:=(a2+3*a+2)/(a+1)Out9=或者In9:=p1/p2Out9=(5) 另外使用Cancel函數(shù)可以約去公因式In10:=Cancelp1/p2Out10=2+a兩個(gè)多項(xiàng)式相除,總能寫(xiě)成一個(gè)多項(xiàng)式和一個(gè)有理式相加Mathematic中提供兩個(gè)函數(shù)PolynomialQuotient和PolynomialRemainder分別返商式和余式。例如:In11:=PolynomialQuotientx2, 1+2x,xOut11= 商的整式部分In12:= PolynomialRemainderx2, 1+2x,xOut12= 商的余式部分3.2
43、方程及其根的表示 因?yàn)镸athematica把方程看作邏輯語(yǔ)句。在數(shù)學(xué)方程式表示為形如“x 2 -2x -3=0”的形式。在Mathematica中“=”用作賦值語(yǔ)句,這樣在Mathematica中用“=”(兩個(gè)等號(hào)中間沒(méi)有空格)表示邏輯等號(hào),則方程應(yīng)表示為“x2 -2x -3=0” 。方程的解同原方程一樣被看作是邏輯語(yǔ)句。例如用Rootslhs=rhs,vars求方程x 2-3x+2=0的根顯示為:In1:=Rootsx2-3x+3=0,xOut1=x=1|x=2 這種表示形式說(shuō)明x取1或2均可而用Solvelhs=rhs,vars可得解集形式:In2:=Solvex2-3x+3=0,xOu
44、t2=x1,x21 求解一元代數(shù)方程下面是常用的一些方程求解函數(shù):Solvelhs=rhs,vars 給出方程的解集NSolvelhs=rhs,vars 直接給出方程的數(shù)值解集Rootslhs=rhs,vars 求表達(dá)式的根FindRootlhs=rhs,x,x 0 求x在x 0附近的方程的數(shù)值解先看Solve函數(shù)例子:In3:=Solvex2-2x-3=0,xOut3= x-1,x3Solve函數(shù)可處理的主要方程是多項(xiàng)式方程。Mathematica總能對(duì)不高于四次的方程進(jìn)行精確求解,對(duì)于三次或四次方程,解的形式可能很復(fù)雜。例如求x 3 +5x+3=0In4:=Solvex3+5x+3=0,x
45、這時(shí)可用N函數(shù)近似數(shù)值解:In5:=N%Out5= x-0.5641,x0.28205-2.28881i,x0.28205+2.28881i當(dāng)方程中有一些復(fù)雜的函數(shù)時(shí),Mathematica可能無(wú)法直接給出解來(lái)。在這種情況下我們可用FindRoot來(lái)求解,但要給出起始條件。例如求3Cosx=lnx的解:In6:=FindRoot3*Cosx=Logx,x,1Out6= x1.44726但只能求出x=1附近的解,如果方程有幾個(gè)不同的解,當(dāng)給定不同的條件時(shí),將給出不同的解。如上例若求x=10附近的解命令為:In7:=FindRoot3*Cosx=Logx,x,10Out7= x13.1064因此確
46、定解的起始位置是比較關(guān)鍵,一種常用的方法是,先繪制圖形觀察后再解。In8:=Plot3*Cosx,Logx,x,1,15Out8= - Graphics -如上例通過(guò)圖形可斷定在x=5附近有另一根:In9:=FindRoot3*Cosx=Logx,x,5Out9= x5.301992.求方程組的根 使用Solve,NSolve和FindRoot也可求方程組的解,只是使用時(shí)格式略有不同,下面給出一個(gè)Solve函數(shù)的例子:求解In10:=Slove2*x+3*y=9,x-2*y=1,x,yOut10= x3, y13求方程的全解如果我們求ax 2 +bx+c=0的根,我們用Solve函數(shù)解的結(jié)果是
47、:In11:=Solvea*x2+b*x+c=0,xOut11= x, x這顯然是不合理的,因?yàn)閷?duì)不同的a,b,c方程的解有不同的情況,而上面只是給出部分解如果要解決這個(gè)問(wèn)題可用Reduce命令,它可根據(jù)a,b,c的取值給出全部值。In12:=Reducea*x2+b*x+c=0,xOut12= a0 && (x=| x=|a=0 && b0 && x=|c=0 && b=0 && a=0因此Solve,Roots只給出方程的一般解,而Reduce函數(shù)數(shù)可以給出方程的全部可能解。4.解條件方程 在作方程計(jì)算時(shí),可以把一個(gè)方程看作你要處理的主要方程,而把其他方程作為必須滿足的輔助條件,你將會(huì)發(fā)現(xiàn)這樣處理很方便。譬如在求解像x 4 + bx 2 +c = 0這
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年西師新版九年級(jí)歷史上冊(cè)階段測(cè)試試卷含答案
- 2025年湘教版五年級(jí)語(yǔ)文上冊(cè)月考試卷含答案
- 2025有關(guān)個(gè)人借款合同
- 2025年外研版三年級(jí)起點(diǎn)八年級(jí)科學(xué)上冊(cè)月考試卷含答案
- 2025砌塊定作買(mǎi)賣(mài)合同
- 2025年華東師大版九年級(jí)歷史上冊(cè)月考試卷
- 建筑施工現(xiàn)場(chǎng)環(huán)境保護(hù)措施
- 建筑工程質(zhì)量評(píng)估指標(biāo)體系
- 2025年熱塑性聚酯PBT工程塑料及合金項(xiàng)目提案報(bào)告模板
- 2025合同模板主材甲供分包合同范本
- 2024年微生物檢測(cè)試劑行業(yè)商業(yè)計(jì)劃書(shū)
- 高中英語(yǔ)選擇性必修一單詞表
- 初中生物校本課程綱要
- 物業(yè)公司介紹
- JTGT H21-2011 公路橋梁技術(shù)狀況評(píng)定標(biāo)準(zhǔn)
- 【永輝超市公司員工招聘問(wèn)題及優(yōu)化(12000字論文)】
- 汽油安全技術(shù)說(shuō)明書(shū)(MSDS)
- 中國(guó)直銷發(fā)展四個(gè)階段解析
- 2024屆浙江省寧波市鎮(zhèn)海區(qū)鎮(zhèn)海中學(xué)高一物理第一學(xué)期期末質(zhì)量檢測(cè)試題含解析
- 部編版語(yǔ)文四年級(jí)下冊(cè) 教材解讀
- 《一次函數(shù)與方程、不等式》說(shuō)課稿
評(píng)論
0/150
提交評(píng)論