mathematica教程第一章Mathematica基礎(chǔ)知識課件_第1頁
mathematica教程第一章Mathematica基礎(chǔ)知識課件_第2頁
mathematica教程第一章Mathematica基礎(chǔ)知識課件_第3頁
mathematica教程第一章Mathematica基礎(chǔ)知識課件_第4頁
mathematica教程第一章Mathematica基礎(chǔ)知識課件_第5頁
已閱讀5頁,還剩56頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

Mathematica數(shù)學(xué)實驗北京交通大學(xué)第一章Mathematica基礎(chǔ)知識

1.1Mathematica概述1.1.1Mathematica簡介Mathematica作為一個功能強大的常用數(shù)學(xué)軟件,不但可以解決數(shù)學(xué)中的數(shù)值計算問題,還可以解決符號演算問題,并且能夠方便地繪出各種函數(shù)圖形。Mathematica自1988年由美國的WolframResearch公司首次推出Mathematica1.0版本以來,隨著WolframResearch公司對它的不斷改進,先后推出了Mathematica1.2、Mathematica2.0、Mathematica2.2、Mathematica3.0、Mathematica4.0等版本。下面看一些用mathematica做的一些例子:見圖

啟動Mathematica后,屏幕上出現(xiàn)稱為Notebook的Mathematica系統(tǒng)集成界面:

Mathematica在用戶區(qū)輸入的內(nèi)容被Mathematica用一個具有擴展名為“.ma”的文件名來紀(jì)錄,該文件名是退出Mathematica時保存在用戶區(qū)輸入內(nèi)容的默認(rèn)文件名,一般是文件名:“Newnb-1.ma”。退出Mathematica系統(tǒng)像關(guān)閉一個Word文件一樣,只要用鼠標(biāo)點擊Mathematica系統(tǒng)集成界面右上角的關(guān)閉按鈕即可。關(guān)閉前,屏幕會出現(xiàn)一個對話框,詢問是否保存用戶區(qū)的內(nèi)容,如果單擊對話框的“否(N)”按鈕,則關(guān)閉Notebook窗口,退出Mathematica系統(tǒng);如果單擊對話框的“是(Y)”按鈕,則先提示你用一個具有擴展名為.ma的文件名來保存用戶區(qū)內(nèi)的內(nèi)容,再退出Mathematica系統(tǒng)。1.1.4Mathematica操作的注意事項(1)在Notebook用戶區(qū)用戶輸入完Mathematica命令后,還要按下Shift+Enter組合鍵,Mathematica才能執(zhí)行你輸入的Mathematica命令。(2)在Notebook用戶區(qū)如果某個命令一行輸入不下,可以用按下Enter鍵的方法來達到換行的目的。(3)在Notebook用戶區(qū)除了可以用直接鍵盤輸入的方法進行輸入外,還可以用打開的方式從磁盤中調(diào)入一個已經(jīng)存在的具有擴展名為.ma的文件來進行操作。(4)每次輸入完Mathematica命令并按下Shift+Enter組合鍵,通常系統(tǒng)會在輸入內(nèi)容的前一行自動加入符號In[n]=:以表出此次輸入是第n次輸入。如果用戶不想計算機顯示此次輸入的結(jié)果,只要在所輸入命令的后面再加上一個分號“;”即可以達到目的。如:In[1]:=x=2+3Out[1]=5In[2]:=x=2+3;不顯示結(jié)果51.2Mathematica中的數(shù)據(jù)

1.2.1Mathematica中的數(shù)據(jù)類型和數(shù)學(xué)常數(shù)

Mathematica提供的簡單數(shù)據(jù)類型有整數(shù)、有理數(shù)、實數(shù)和復(fù)數(shù)4種類型,這些數(shù)據(jù)在Mathematica中有如下的要求:(1)整數(shù)描述為Integer,是可以具有任意長度的精確數(shù)。書寫方法同于我們通常的表示,輸入時,構(gòu)成整數(shù)的各數(shù)字之間不能有空格、逗號和其它符號,整數(shù)的正負(fù)號寫在該數(shù)的首位,正號可以不輸入。如:2367189、-932是正確的整數(shù)。(2)有理數(shù)描述為Rational,用化簡過的分?jǐn)?shù)表示,但其中分子和分母都應(yīng)該是整數(shù),有理數(shù)是精確數(shù),輸入時分號用“/”代替,即使用“分子分母”的形式。如:23/45、-41/345是正確的有理數(shù)。(3)實數(shù)描述為Real,是除了整數(shù)和有理數(shù)之外的所有實數(shù)。與一般高級語言不同的是這里數(shù)學(xué)中的無理數(shù)是可以有任意精確度的近似數(shù),如圓周率,在Mathematica中它可以根據(jù)需要取任意位有效數(shù)字。(4)復(fù)數(shù)描述為Complex,用是否含有虛數(shù)單位I來區(qū)分,它的實部和虛部可以是整數(shù)、有理數(shù)和實數(shù)。如:3+4.3I、18.5I都是正確的復(fù)數(shù)。1.2.2Mathematica數(shù)的運算符

數(shù)的運算有:加、減、乘、除和乘方,它們在Mathematica中的符號為:加(+)、減(-)、乘(*)、除(/)和乘方(^)。不同類型的數(shù)參與運算,其結(jié)果的類型為:如果運算數(shù)有復(fù)數(shù),則計算結(jié)果為復(fù)數(shù)類型;如果運算數(shù)沒有復(fù)數(shù),但有實數(shù),則計算結(jié)果為實數(shù)類型如果運算數(shù)沒有復(fù)數(shù)和實數(shù),但有分?jǐn)?shù),則計算結(jié)果為有理數(shù)類型如果運算數(shù)只有整數(shù),則計算結(jié)果或是整數(shù)類型(如果計算結(jié)果是整數(shù));或是有理數(shù)類型(如果計算結(jié)果不是整數(shù))。1.2.3Mathematica中的精確數(shù)與近似數(shù)Mathematica的近似數(shù)是帶有小數(shù)點的數(shù);精確數(shù)是整數(shù)、有理數(shù)、數(shù)學(xué)常數(shù)以及函數(shù)在自變量取整數(shù)、有理數(shù)、數(shù)學(xué)常數(shù)時的函數(shù)值。如:62243、2/3、E、Sin[4]都是精確數(shù)。如果參與運算或求值的數(shù)帶有小數(shù)點,則運算結(jié)果通常為帶有6位有效數(shù)字的近似數(shù),如:In[3]:=1.2345678020/30

Out[3]=0.0411523結(jié)果為近似數(shù)In[4]:=2+Sin[1.0]

Out[4]=2.84147結(jié)果為近似數(shù)In[5]:=2+Sin[1]

Out[5]=2+Sin[1]結(jié)果為精確數(shù)如果需要精確數(shù)的數(shù)值結(jié)果(除了整數(shù)之外),可以用Mathematica提供的N函數(shù)將其轉(zhuǎn)化,N函數(shù)可以得到該精確數(shù)的任意精度的近似結(jié)果,其形式有兩個:

例如:

In[6]:=2*E+Sin[Pi/5]//NOut[6]=6.02345In[7]:=N[2*E+Sin[Pi/5],30]Out[7]=6.02434890921056359988928089734建表命令有如下幾種形式:命令形式1:Table[通項公式f(i),{i,imin,imax,h}]功能:產(chǎn)生一個表{f(imin),f(imin+h),f(imin+2h),…,f(imin+nh)}其中:imax–himin+nhimax,h>0例如:建立一個表{12,32,……,192}命令:In[8]:=Table[i^2,{i,1,19,2}]

Out[8]={1,9,25,49,81,121,169,225,289,361}命令形式2:Table[通項公式f(i),{i,imin,imax}]功能:產(chǎn)生一個表{f(imin),f(imin+1),f(imin+2),…,f(imin+n)}其中:imax–1imin+nimax例如:建立一個表{22,……,102}命令:In[9]:=Table[i^2,{i,2,10}]Out[9]={4,9,16,25,36,49,64,81,100}命令形式3:

Table[通項公式f,{循環(huán)次數(shù)n}],f為常數(shù)功能:產(chǎn)生n個f的一個表{f,f,f,……,f}

例如:建立產(chǎn)生8個2一個表{2,2,2,2,2,2,2,2}命令:In[10]:=Table[2,{8}

Out[10]={2,2,2,2,2,2,2,2}命令形式4:

Table[通項公式f(i,j),{{i,imin,imax},{j,jmin,jmax}]功能:產(chǎn)生一個二維表{{f(imin,jmin),f(imin,jmin+1),f(imin,jmin+2),……,f(imin,jmin+m)},{f(imin+1,jmin),f(imin+1,jmin+1),f(imin+1,jmin+2),……,f(imin+1,jmin+m)},……{f(imin+n,jmin),f(imin+n,jmin+1),f(imin+n,jmin+2),……,f(imin+n,jmin+m)}其中:imax–1imin+nimax,jmax–1jmin+mjmax例如:In[11]:=Table[i-j,{i,1,6},{j,1,2}]

Out[11]={{0,-1},{1,0},{2,1},{3,2},{4,3},{5,4}}表的分量表示:有時為了某種需要,希望取出表中的某一或某些元素參與后面的運算和處理。常用表示表分量的命令有:命令形式1:

表[[序號n]]功能:取出表中序號為n的元素例如:取出表{1,9,x,49,81,{121,169},225,289,361}的正數(shù)第3個元素、第6個元素、和倒數(shù)第2個元素的命令依次為:命令:In[12]:={1,9,x,49,81,{121,169},225,289,361}[[3]]Out[12]=xIn[13]:={1,9,x,49,81,{121,169},225,289,361}[[6]]Out[13]={121,169}In[14]:={1,9,x,49,81,{121,169},225,289,361}[[-2]]Out[14]=289表的運算函數(shù)

Mathematica表的運算函數(shù)有很多,這里介紹兩個常用的函數(shù):例如:寫出將表{1,9,49,81,225,289,361}中所有元素相加存放在變量x中、將表{1,9,49,81,225,289,361}中所有元素相乘存放在變量y中的Mathematica命令。命令:In[17]:=t={1,9,49,81,225,289,361}

In[18]=x=Apply[Plus,t]

Out[18]=1015In[19]=y=Apply[Times,t]

Out[19]=838515647025函數(shù)形式功能Apply[Plus,表]對表中所有元素求和Apply[Times,表]對表中所有元素求積1.3Mathematica中的變量

1.3.1Mathematica的變量命名Mathematica的變量名規(guī)定為任何小寫英文字母或以小寫英文字母開頭后跟若干字母或數(shù)字表示的字符串,如x,y,ae3,d3er45都是合法的變量名。一般Mathematica的變量名不用小寫字母。如果在某些情況下一定要用大寫字母,應(yīng)該注意不要與Mathematica中的數(shù)學(xué)常數(shù)和內(nèi)部函數(shù)或命令的混淆。Mathematica中的變量名是區(qū)分大小寫字母的,如在Mathematica中,ab與Ab表示兩個不同的變量。變量名中的字符之間不能有空格,因為變量名中的空格在Mathematica中被理解為變量的乘積。如:abcd與abcd有不同的含義,前者表示一個變量abcd,而后者Mathematica會將其看成兩個變量ab和cd的乘積關(guān)系。變量名不能以數(shù)字開頭的字符串來表示,如果在Mathematica里出現(xiàn)了這種字符串,Mathematica將其理解為數(shù)字與變量的乘積。例如:以數(shù)字開頭的字符串3asd,在Mathematica中表示3乘以變量asd即3asd表示3*asd。在Mathematica中變量使用前不必先定義變量類型。Mathematica變量的類型可以不斷變化,取決于其中所存數(shù)據(jù)的類型;變量不但可以存放前面所提到的四種數(shù)據(jù)數(shù),而且可以存放一個方程式、一個圖形或更復(fù)雜的關(guān)系式。1.3.2Mathematica中的變量取值與清除如果一個變量在程序運行中沒有被存儲內(nèi)容,此時該變量名只是一般的數(shù)學(xué)符號參與程序的處理。如果變量被存儲了內(nèi)容,稱為變量取值。變量取值之后,該變量就用存入的內(nèi)容參與程序的處理。在Mathematica中,變量獲取值的方式有三種:變量賦值、鍵盤輸入和變量替換。下面分別介紹這三種方式:(2)鍵盤輸入方式

鍵盤輸入方式是變量取值的另一種常用的方式,多用于需要在命令或程序的運行中由用戶從鍵盤上臨時鍵入的人機交互式變量取值。

Mathematica中鍵盤輸入命令形式為:

變量=Input[]

當(dāng)遇到上面的鍵盤輸入命令后,計算機在屏幕上給出一個輸入小窗口,等待用戶在其中從鍵盤上鍵入一個表達式,鍵入完畢后,用鼠標(biāo)點擊“OK”按扭后,計算機將鍵入的表達式求值后,將結(jié)果存儲在算等號左邊的變量中。這里“=”是賦值號。

例如:In[22]:=x=Input[]*變量x等待鍵盤輸入賦值(見圖)Out[22]=23(*此時x從鍵盤上被賦值23)In[23]:=x+1Out[23]=24下一頁返回變量替換時變量本身還是數(shù)學(xué)符號,沒有發(fā)生變量賦值的行為如:In[26]:=x=9;

In[27]:=6/x-7

Out[27]=-19/3In[28]:=x=.In[29]:=6x-7/.x->9Out[29]=-19/3In[30]:=6/x-7Out[30]=6/x-71.4Mathematica中的函數(shù)Mathematica有很豐富的內(nèi)部函數(shù),它們是Mathematica系統(tǒng)自帶的函數(shù),函數(shù)名一般使用數(shù)學(xué)中的英文單詞,只要輸入相應(yīng)的函數(shù)名,就可以方便地使用這些函數(shù)。內(nèi)部函數(shù)既有數(shù)學(xué)中常用的函數(shù),又有工程中用的特殊函數(shù)。如果用戶想自己定義一個函數(shù),Mathematica也提供了這種功能。Mathematica中的函數(shù)自變量應(yīng)該用方括號[]括起,不能用圓括()號括起,即一個數(shù)學(xué)中的函數(shù)f(x,y,…)應(yīng)該寫為f[x,y,…]才行。1.4.1Mathematica中的內(nèi)部函數(shù)Mathematica的內(nèi)部函數(shù)名字大部分是其英文單詞的全名,如Random,Conjugate等。Mathematica內(nèi)部函數(shù)的名字第一個字母一定要大寫,其后的字母一般是小寫的,不過如果該名字有幾個含義,則函數(shù)名字中體現(xiàn)每個含義的第一個字母也要大寫,如反正切函數(shù)arctanx中含有反“arc”和正切“tan”兩個含義,故它的Mathematica函數(shù)表示為ArcTan[x]。下面列舉一些常用的Mathematica內(nèi)部函數(shù):(1)數(shù)值函數(shù):Abs[x]表示x的絕對值|x|Round[x]表示最接近x的整數(shù)Floor[x]表示不大于x的最大整數(shù)Ceiling[x]表示不小于x的最大整數(shù)Sign[x]表示x的符號函數(shù)sgn(x)Exp[x]表示以自然數(shù)為底的指數(shù)函數(shù)exLog[x]表示以自然數(shù)為底的對數(shù)函數(shù)lnxLog[a,x]表示以數(shù)a為底的對數(shù)函數(shù)logaxSin[x],Cos[x]表示正弦函數(shù)sinx,余弦函數(shù)cosxTan[x],Cot[x]表示正切函數(shù)tanx,余切函數(shù)cotxArcSin[x],ArcCos[x]表示反正弦函數(shù)arcsinx,反余弦函數(shù)arccosxArcTan[x],ArcCot[x]表示反正切函數(shù)arctanx,反余切函數(shù)arccotxMax[x1,x2,…,xn]表示取出實數(shù)x1,x2,…。,xn的最大值Max[s]表示取出表s中所有數(shù)的最大值Min[x1,x2,…,xn]表示取出實數(shù)x1,x2,…。,xn的最小值Min[s]表示取出表s中所有數(shù)的最小值n!表示階乘n(n-1)(n-2)...1n!!表示雙階乘n(n-2)(n-4)...Mod[m,n]表示整數(shù)m除以整數(shù)n的余數(shù)Quotient[m,n]表示整數(shù)m除以整數(shù)n的整數(shù)部分GCD[m1,m2,…,mn]表示取出整數(shù)m1,m2,…。,mn的最大公約數(shù)GCD[s]表示取出表s中所有數(shù)的最大公約數(shù)LCM[m1,m2,…,mn]表示取出整數(shù)m1,m2,…。,mn的最小公倍數(shù)LCM[s]表示取出表s中所有數(shù)的最小公倍數(shù)Binomial[n,m]表示二項式系數(shù)Re[z]取復(fù)數(shù)z的實部Im[z]取復(fù)數(shù)z的虛部Conjugate[z]取復(fù)數(shù)z的共軛復(fù)數(shù)Sqrt[x]表示x的平方根函數(shù)舉例說明:In[31]:=Abs[-4]

Out[31]=4In[32]:=Round[1.1]

Out[32]=1In[33]:=Round[1.9]

Out[33]=2In[34]:=

Floor[2.1]Out[34]=2In[35]:=

Ceiling[2.1]Out[35]=3In[36]:=

Sign[22]Out[36]=1In[37]:=

Sign[-2222]Out[37]=-1舉例說明:In[31]:=

Exp[5]Out[31]=e5In[32]:=

Log[1]Out[32]=0In[33]:=Log[10,100]Out[33]=2In[34]:=Sin[0]Out[34]=0In[35]:=

Cos[0]Out[35]=1In[36]=Tan[Pi]Out[36]=0In[37]=Cot[Pi/2]Out[37]=0In[38]=ArcSin[1]Out[38]=Pi/2In[39]=ArcTan[1]Out[39]=Pi/4舉例說明:In[31]:=Max[9,5,-4,3.1]

Out[31]=9In[32]:=Min[9,5,-4,3.1]

Out[32]=-4在9,5,-4,3.1這四個數(shù)中,最大的是9,最小的是-4In[33]:=Max[{2,5,-4,{-3.1,8},3]

Out[33]=8In[34]:=Mod[26,3]

Out[34]=2In[35]:=Quotient[26,3]

Out[35]=826除以3,得8,余數(shù)為2,Mod和Quotient功能不同In[36]=Re[3+4i]

Out[36]=3求3+4i的實部,求虛部用ImIn[37]=Sqrt[4]Out[37]=2練習(xí):1用mathematica數(shù)學(xué)軟件計算下列各式值(1)1238+e2.3×log23÷cos21o(2)tan(-x2)arccosx,在x=0.25和x=0.78x的函數(shù)值2假設(shè)有一種傳染病,任何人得病后,在傳染期內(nèi)不會四無,且最初有m人患病,每個人年平均傳染率為k,治愈率為i,若一年內(nèi)等時間間隔檢測n次,則一年后患病人數(shù)為?若檢測次數(shù)無限次數(shù)增加,一年后傳染病人數(shù)會無限增加嗎?函數(shù)形式功能Random[]隨機給出閉區(qū)間[0,1]內(nèi)的一個實數(shù)Random[Real,xmax]隨機給出閉區(qū)間[0,xmax]內(nèi)的一個實數(shù)Random[Real,{xmin,xmax}]隨機給出閉區(qū)間[xmin,xmax]內(nèi)的一個實數(shù)Random[Integer]隨機給出整數(shù)0或1Random[Integer,{xmin,xmax}]隨機給出xmin到xmax之間的一個整數(shù)Random[Complex]隨機給出單位正方形內(nèi)的一個復(fù)數(shù)(2)隨機函數(shù):舉例:(i)產(chǎn)生小于等于5的一個非負(fù)隨機實數(shù)。命令:In[39]:=Random[Real,5]Out[39]=4.72088(ii)產(chǎn)生閉區(qū)間[0,1]內(nèi)的6個隨機實數(shù)的一個表。命令:In[40]:=Table[Random[],{6}]Out[40]={0.836874,0.347154,0.150818,0.373472,0.689255,0.546614}(iii)產(chǎn)生閉區(qū)間[-2,10]內(nèi)的5個隨機實數(shù)的一個表。命令:In[41]:=Table[Random[Real,{-2,10}],{5}]Out[41]={8.873,-0.643032,2.00279,4.83199,4.47409}(iv)產(chǎn)生1到8之間的10個隨機整數(shù)的一個表。命令:In[42]:=Table[Random[Integer,{1,8}],{10}]Out[42]={3,8,1,5,4,5,6,8,6,5}(v)產(chǎn)生單位正方形內(nèi)的5個隨機復(fù)數(shù)的一個表。命令:In[43]:=Table[Random[Complex]],{5}]Out[43]={0.537111+0.917944I,0.944971+0.283356I,0.289054+0.937503I}1.4.2Mathematica中的自定義函數(shù)

Mathematica自定義函數(shù)的一般命令為:

函數(shù)名[自變量名1_,自變量名2_,]:=表達式這里函數(shù)名與變量名的規(guī)定相同,方括號中的每個自變量名后都要有一個下劃線“_”,中部的定義號“:=”的兩個符號是一個整體,中間不能有空格。常用的自定義函數(shù)命令有:定義一個一元函數(shù)

函數(shù)名[自變量名_]:=表達式例如:

定義一個函數(shù)y=asinx+x5,a是參數(shù)命令:In[44]:=y[x_]:=a*Sin[x]+x^5定義一個二元函數(shù)

函數(shù)名[自變量名1_,自變量名2_]:=表達式例如:定義一個函數(shù)z1=tan(x/y)-ye5x命令:In[45]:=z1[x_,y_]:=Tan[x/y]+y*Exp[5x]自定義函數(shù)的幾點注意事項:自定義函數(shù)名的第一個字母不能大寫以利于區(qū)別內(nèi)部函數(shù)。鍵入自定義函數(shù)并按下Shift+Enter鍵后,Mathematica不在計算機屏幕顯示輸出結(jié)果Out[n],只是記住該自定義函數(shù)的函數(shù)名和對應(yīng)的表達式,以利于后面的函數(shù)求值和運算使用。如果自定義函數(shù)不再使用,應(yīng)該及時清除該自定義函數(shù)以釋放由自定義函數(shù)占用的內(nèi)存空間,清除自定義函數(shù)的命令與清除變量的命令相同,即清除自定義函數(shù)的命令為:

Clear[自定義函數(shù)名]

舉例:寫出從集合x={1,2,3,4,5,6,7,8,9,0}中等概率取出n個元素的自定義函數(shù)(可以重復(fù)抽?。=猓篗athematica命令:In[46]:=drawout[x_,n_]:=x[[Table[Random[Integer,{1,Length[x]}],{n}]]]In[47]:=x={1,2,3,4,5,6,7,8,9,0};In[48]:=drawout[x,5](*隨機取出5個元素)Out[48]={0,3,3,5,9}In[49]:=drawout[x,12](*隨機取出12個元素)Out[49]={1,2,5,7,9,4,8,4,1,4,0,6}--------------------------------------------------------------------------------------------------------本題自定義函數(shù)drawout[x_,n_]是由(i)Random[Integer,{1,Length[x]}](ii)Table[Random[Integer,{1,Length[x]}],{n}](iii)x[[表]]三個函數(shù)的復(fù)合構(gòu)成的。1.4.3Mathematica中的函數(shù)求值表示函數(shù)在某一點的函數(shù)值有兩種方式:一種是數(shù)學(xué)方式,即直接在函數(shù)中把自變量用一個值或式子代替,如Sin[2.3],Sqrt[a+1],z1[3,5]等;另一種為變量替換的方式:函數(shù)/.變量名>數(shù)值或表達式或函數(shù)/.{變量名1>數(shù)值1或表達式1,變量名2>數(shù)值2或表達式2,…}例如:In[46]:=fn[x_]:=x*Cos[x]+Sqrt[x]In[47]:=fn[2]Out[47]:=Sqrt[2]+2Cos[2]In[48]:=fn[x]/.x->8Out[48]=2Sqrt[2]+8Cos[8]In[49]:=fn[x]/.x->a+1

Out[49]=Sqrt[1+a]+(1+a)Cos[1+a]In[50]:=fn[x_,y_]:=x^3+y^2In[51]:=fn[2,a]Out[51]:=8+a2In[52]:=fn[x,y]/.{x->a,y->b+2}Out[52]=a3+(2+b)21.4.4純函數(shù)

純函數(shù)命令形式如下:Function[變量或變量表,表達式]注意:Function僅表示純函數(shù)的記號,它的縮寫形式“

[變量或變量表,表達式]&”使行文更簡潔。純函數(shù)用&分隔函數(shù)定義和調(diào)用的(實在)函數(shù),&后放調(diào)用的參數(shù).當(dāng)函數(shù)中只有一個變量時,用#表示變量,否則用#1,#2,…分別表示第一個變量和第二個變量等。舉例:In[56]:=Function[x,Cos[x]^2-Sin[x]]Out[56]=Function[x,Cos[x]2-Sin[x]](函數(shù)已建立)In[57]:=%[3](*計算x=3時的函數(shù)值f(3)Out[57]=Cos[3]^2-Sin[3](*輸出函數(shù)值Cos[3]^2-Sin[3])In[58]:=s=Function[{x,y},x-y]

Out[58]=Function[{x,y},x-y]In[59]:=s[19,10]Out[59]=9In[60]:=(#+1)&[x]Out[60]:=1+xIn[61]:=(#1-#2)&[a,b]

Out[61]=a-bIn[62]:= #1^#2&[2,3]

Out[62]:=81.5Mathematica中的表達式數(shù)學(xué)中常用的表達式有算術(shù)表達式、關(guān)系表達式和邏輯表達式。1.5.1Mathematica中的算術(shù)表達式在Mathematica中,算術(shù)表達式是由算術(shù)運算符(加(+)、減(-)、乘(*)、除(/)和乘方(^))連接常數(shù)、變量、函數(shù)構(gòu)成的一個式子。如:57、Sqrt[x]、2+3.2、3*x-Exp[y]、(Sin[Pi/3]^4-1)*x+1、(a+1)/(3-a)-(b-1)/a等都是算術(shù)表達式。符號%、%%、%n在Mathematica中分別表示最后一次、次后一次和第n次的輸出結(jié)果,。算術(shù)表達式的運算順序是括號優(yōu)先、同級運算遵守從左到右的先后順序運算、算符運算順序的優(yōu)先級按(由高到低):函數(shù)計算乘冪乘除加減

1.5.2Mathematica中的關(guān)系表達式關(guān)系表達式也稱為算術(shù)關(guān)系表達式,常用來比較兩個算術(shù)表達式值的大小。在Mathematica中,關(guān)系表達式的一般形式為:

<算術(shù)表達式><關(guān)系運算符><算術(shù)表達式>Mathematica的關(guān)系運算符有六種,它們的表示和含義如下:關(guān)系運算符含義對應(yīng)的數(shù)學(xué)符號例子==相等關(guān)系=如x+3=0應(yīng)該寫為x+3==0!=不等關(guān)系如x+30應(yīng)該寫為x+3!=0>大于關(guān)系>如x>4應(yīng)該寫為x>4>=大于等于關(guān)系如x4應(yīng)該寫為x>=4<小于關(guān)系<如x<4應(yīng)該寫為x<4<=小于等于關(guān)系如x4應(yīng)該寫為x<=4注意:由兩個符號構(gòu)成的關(guān)系運算符==、!=、>=、<=中間不能有空格或其他符號。關(guān)系表達式的計算順序為:先分別計算兩個算術(shù)表達式的值,再比較它們的值。關(guān)系表達式的計算結(jié)果是三個邏輯值True(真)、False(假)和非真非假,取值的規(guī)則為:當(dāng)關(guān)系表達式成立時,取值為True;當(dāng)關(guān)系表達式不成立時,取值為False;當(dāng)關(guān)系表達式不能確定時,將關(guān)系表達式原樣輸出,表示取值為非真非假。關(guān)系表達式中關(guān)系運算符的計算優(yōu)先級別低于算術(shù)運算符。1.5.3Mathematica中的邏輯表達式關(guān)系表達式只能表示一個條件,如果考慮的問題涉及到多個條件的組合,用邏輯表達式最方便。關(guān)系表達式的形式有:

<關(guān)系表達式><邏輯運算符><關(guān)系表達式>或<邏輯運算符><關(guān)系表達式>或<關(guān)系表達式><邏輯運算符1><關(guān)系表達式><邏輯運算符2>…<關(guān)系表達式>常用的Mathematica的邏輯運算符有三種:邏輯運算符名稱含義

!邏輯非當(dāng)關(guān)系表達式A為真時,!A為假;當(dāng)關(guān)系表達式A為假時,!A為真。&&

邏輯與當(dāng)關(guān)系表達式A和B都為真時,A&&B為真,否則為假。

||

邏輯或當(dāng)關(guān)系表達式A和B都為假時,A||B為假,否則為真。

邏輯表達式常用來表示數(shù)學(xué)條件,特別在描述變量的范圍時比關(guān)系表達式更為簡潔和方便,如x(a,b]邏輯表達式為x>a&&x<=bx(a,b]邏輯表達式為x<=a||x>b2<x<4或1<=y<3邏輯表達式為(x>2&&x<4)||(y>=1&&y<3)1.5.4Mathematica中的復(fù)合表達式

在Mathematica中,一個用分號隔開的表達式序列稱為一個復(fù)合表達式,它也稱為一個過程。運行Mathematica中的一個復(fù)合表達式就是依次執(zhí)行過程中的每個表達式,且過程中最后一個表達式的值作為該復(fù)合表達式的值,例如:In[63]:=t=1;u=t+4;Sin[u]

Out[63]=Sin[5](顯示Sin[u]的值)下一頁1.6Mathematica中的一些符號和語句

1.6.1Mathematica中的專用符符號意 義%倒數(shù)第一次輸出的內(nèi)容

%%倒數(shù)第二次輸出的內(nèi)容%n第n次輸出內(nèi)容,對應(yīng)Out[n]的輸出式子

?顯示該命令的簡單使用方法??顯示該命令的詳細使用方法;運算分號前面的表達式,但不顯示計算結(jié)果

->箭頭右面的內(nèi)容替換箭頭左邊的內(nèi)容(1)輸出結(jié)果替代符:%,%%,%n

例1.

求2的平方根(默認(rèn)精度)、求10位精度、最后檢驗在計算過程中是否存在較大的誤差。

解:In[1]:=Sqrt[2] Out[1]:=Sqrt[2]In[2]:=N[%]Out[2]:=1.41421In[3]:=N[%%,10]Out[3]:=1.414213562In[4]:=(%1)^2 Out[4]:=2In[5]:=(%2)^2Out[5]:=2.輸出:Out[4]:=2和Out[5]:=2.說明本題計算不存在較大誤差。(2)查看幫助符號?、??的使用例2.

查看函數(shù)N[]的大致用法和詳細用法

Mathematica命令:

輸入:In[6]:=?N 輸入:In[7]:=??N

例3

查看以Exp開頭的所有內(nèi)建函數(shù)名及Expand函數(shù)的詳細用法Mathematica命令:

In[8]:=?Exp* In[9]:=??Expand

(3)表達式運算符“;”的使用說明:如果表達式末尾無“;”,則顯示該表達式的結(jié)果,否則不顯示該表達式的結(jié)果。例4In[10]:=3+5Out[10]:=8In[11]:=3+5;

In[12]:=%Out[12]:=6(4)替換符號“->”的使用例5

符號->作為函數(shù)參數(shù)指針命令:In[13]:=:Plot3D[Sin[xy],{x,0,4},{y,0,4},PlotPoints->40,Mesh->False,

FaceGrids->All,AxesLabel->{"Length","Width","Height"}];例6

符號->作為方程結(jié)果指針

In[14]:=Solve[x^2+2bx+c==0,x]

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論