Mathematica使用說明_第1頁
Mathematica使用說明_第2頁
Mathematica使用說明_第3頁
Mathematica使用說明_第4頁
Mathematica使用說明_第5頁
已閱讀5頁,還剩82頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Mathematica入門一、引 言Mathematica是美國Wolfram公司開發(fā)的一個功能強(qiáng)大的數(shù)學(xué)軟件系統(tǒng),它主要包括:數(shù)值計算、符號計算、圖形功能和程序設(shè)計. 本指導(dǎo)書力圖在不大的篇幅中給讀者提供該系統(tǒng)的一個簡要的介紹. 指導(dǎo)書是按Mathematica 4.0版本編寫的, 但是也適用于Mathematica的任何其它圖形界面的版本. Mathematica在數(shù)值計算、符號運(yùn)算和圖形表示等方面都是強(qiáng)有力的工具,并且其命令句法驚人地一致, 這個特性使得Mathematica很容易使用.不必?fù)?dān)心你還不太熟悉計算機(jī).本入門將帶你迅速了解Mathematica的基本使用過程, 但在下面的介紹

2、中,我們假定讀者已經(jīng)知道如何安裝及啟動Mathematica. 此外,始終要牢記的幾點是:l Mathematica是一個敏感的軟件. 所有的Mathematica函數(shù)都以大寫字母開頭;l 圓括號( ),花括號 ,方括號 都有特殊用途, 應(yīng)特別注意;l 句號“.”,分號“;”,逗號“,”感嘆號“!”等都有特殊用途, 應(yīng)特別注意;l 用主鍵盤區(qū)的組合鍵Shfit+Enter或數(shù)字鍵盤中的Enter鍵執(zhí)行命令.二、一般介紹1. 輸入與輸出例1 計算 1+1:在打開的命令窗口中輸入1+2+3并按組合鍵Shfit+Enter執(zhí)行上述命令,則屏幕上將顯示: In1 : =1+2+3 Out1 =6這里I

3、n1 : = 表示第一個輸入,Out1= 表示第一個輸出,即計算結(jié)果.2. 數(shù)學(xué)常數(shù)Pi 表示圓周率; E表示無理數(shù)e; I 表示虛數(shù)單位i;Degree表示/180; Infinity表示無窮大.注:Pi,Degree,Infinity的第一個字母必須大寫,其后面的字母必須小寫.3. 算術(shù)運(yùn)算Mathematica中用“+”、“-”、“*”、“/” 和“”分別表示算術(shù)運(yùn)算中的加、減、乘、除和乘方.例2 計算 .輸入 100(1/4)*(1/9)(-1/2)+8(-1/3)*(4/9)(1/2)*Pi則輸出 這是準(zhǔn)確值. 如果要求近似值,再輸入 N%則輸出 10.543這里%表示上一次輸出的結(jié)

4、果,命令N%表示對上一次的結(jié)果取近似值. 還用 % 表示上上次輸出的結(jié)果,用 %6表示Out6的輸出結(jié)果.注:關(guān)于乘號*,Mathematica常用空格來代替. 例如,x y z 則表示x*y*z,而xyz 表示字符串,Mathematica將它理解為一個變量名. 常數(shù)與字符之間的乘號或空格可以省略.4. 代數(shù)運(yùn)算例3 分解因式 輸入 Factorx2+3x+2輸出 例4 展開因式 輸入 Expand(1+x)(2+x)輸出 例5 通分 輸入 Together1/(x+3)+2/(x+2)輸出 例6 將表達(dá)式 展開成部分分式輸入 Apart(8+3x)/(2+x)(3+x)輸出 例7 化簡表達(dá)

5、式 輸入 Simplify(1+x)(2+x)+(1+x)(3+x)輸出 三、函數(shù) 1. 內(nèi)部函數(shù)Mathematica系統(tǒng)內(nèi)部定義了許多函數(shù),并且常用英文全名作為函數(shù)名,所有函數(shù)名的第一個字母都必須大寫,后面的字母必須小寫. 當(dāng)函數(shù)名是由兩個單詞組成時,每個單詞的第一個字母都必須大寫,其余的字母必須小寫. Mathematica函數(shù)(命令)的基本格式為 函數(shù)名表達(dá)式,選項下面列舉了一些常用函數(shù):算術(shù)平方根 Sqrtx指數(shù)函數(shù)Expx對數(shù)函數(shù) Loga,x對數(shù)函數(shù)Logx三角函數(shù)Sinx, Cosx, Tanx, Cotx, Secx, Cscx反三角函數(shù)ArcSinx, ArcCosx, A

6、rcTanx, ArcCotx, AsrcSecx, ArcCscx雙曲函數(shù)Sinhx, Coshx, Tanhx, 反雙曲函數(shù)ArcSinhx, ArcCoshx, ArcTanhx四舍五入函數(shù) Roundx (*取最接近x的整數(shù)*)取整函數(shù) Floorx (*取不超過x的最大整數(shù)*)取模 Modm,n (*求m/n的模*)取絕對值函數(shù)Absxn的階乘n!符號函數(shù)Signx取近似值Nx,n (*取x的有n位有效數(shù)字的近似值,當(dāng)n缺省時,n的默認(rèn)值為6*)例8 求的有6位和20位有效數(shù)字的近似值.輸入 NPi 輸出 3.14159輸入 NPi, 20 輸出 3.1415926535897932

7、285注:第一個輸入語句也常用另一種形式:輸入 Pi/N 輸出 3.14159例9 計算函數(shù)值 (1) 輸入 SinPi/3 輸出 (2) 輸入 ArcSin.45 輸出 0.466765 (3) 輸入 Round-1.52 輸出 -2例10 計算表達(dá)式 的值輸入 1/(1+Log2)*SinPi/6-Exp-2/(2+2(2/3)*ArcTan.6輸出 0.274921 2. 自定義函數(shù)在Mathematica系統(tǒng)內(nèi),由字母開頭的字母數(shù)字串都可用作變量名,但要注意其中不能包含空格或標(biāo)點符號.變量的賦值有兩種方式. 立即賦值運(yùn)算符是“=”,延遲賦值運(yùn)算符是“: =”. 定義函數(shù)使用的符號是延遲

8、賦值運(yùn)算符“: =”. 例11 定義函數(shù) ,并計算,. 輸入 Clearf,x; (*清除對變量原先的賦值*) fx_:=x3+2*x2+1; (*定義函數(shù)的表達(dá)式*) f2 (*求的值*) fx/.x->4 (*求的值,另一種方法*) x=6; (*給變量立即賦值6*) fx (*求的值,又一種方法*)輸出 17 97 289 注:本例1、2、5行的結(jié)尾有“;”,它表示這些語句的輸出結(jié)果不在屏幕上顯示.四、解方程 在Mathematica系統(tǒng)內(nèi),方程中的等號用符號“=”表示. 最基本的求解方程的命令為 Solveeqns, vars它表示對系數(shù)按常規(guī)約定求出方程(組)的全部解,其中eq

9、ns表示方程(組),vars表示所求未知變量.例12 解方程 輸入 Solvex2+3x+2=0, x 輸出 例13 解方程組 輸入 Solvea x + b y = 0,c x + d y =1, x,y 輸出 例14 解無理方程 輸入 SolveSqrtx-1+ Sqrtx+1 = a, x 輸出 很多方程是根本不能求出準(zhǔn)確解的,此時應(yīng)轉(zhuǎn)而求其近似解. 求方程的近似解的方法有兩種,一種是在方程組的系數(shù)中使用小數(shù),這樣所求的解即為方程的近似解;另一種是利用下列專門用于求方程(組)數(shù)值解的命令: NSolveeqns, vars (*求代數(shù)方程(組)的全部數(shù)值解*)FindRooteqns,

10、x, x0, y, y0后一個命令表示從點出發(fā)找方程(組)的一個近似解,這時常常需要利用圖像法先大致確定所求根的范圍,是大致在什么點的附近.例15 求方程的近似解 輸入 NSolvex3-1= 0, x 輸出 -0.5-0.866025ii,-0.5+0.866025ii,1. 輸入 FindRootx3-1=0,x, .5 輸出 1.下面再介紹一個很有用的命令: Eliminateeqns, elims (*從一組等式中消去變量(組)elims*)例16從方程組 消去未知數(shù)y、z.輸入Eliminatex2+y2+z2 =1, x2+(y-1)2 + (z-1)2 =1, x + y= 1,

11、y, z 輸出 注:上面這個輸入語句為多行語句,它可以像上面例子中那樣在行尾處有逗號的地方將行與行隔開, 來迫使Mathematica從前一行繼續(xù)到下一行在執(zhí)行該語句. 有時候多行語句的意義不太明確,通常發(fā)生在其中有一行本身就是可執(zhí)行的語句的情形,此時可在該行尾放一個繼續(xù)的記號“”,來迫使Mathematica繼續(xù)到下一行再執(zhí)行該語句.五、保存與退出Mathematica 很容易保存Notebook中顯示的內(nèi)容,打開位于窗口第一行的File菜單,點擊Save后得到保存文件時的對話框,按要求操作后即可把所要的內(nèi)容存為 *.nb文件. 如果只想保存全部輸入的命令,而不想保存全部輸出結(jié)果,則可以打開

12、下拉式菜單Kernel,選中Delete All Output,然后再執(zhí)行保存命令. 而退出Mathematica與退出Word的操作是一樣的.六、查詢與幫助查詢某個函數(shù)(命令)的基本功能,鍵入“?函數(shù)名”,想要了解更多一些,鍵入“?函數(shù)名”,例如,輸入 ?Plot則輸出 Plotf,x,xmin,xmax generates a plot of f as a function of x from xmin to xmax. Plotf1,f2,x,xmin,xmax plots several functions fi它告訴了我們關(guān)于繪圖命令“Plot”的基本使用方法.例17 在區(qū)間上作出拋

13、物線的圖形. 輸入 Plotx2,x,-1,1則輸出 例18 在區(qū)間上作出與的圖形. 輸入 PlotSinx,Cosx,x,0,2Pi則輸出 如果輸入 ?Plot則Mathematica會輸出關(guān)于這個命令的選項的詳細(xì)說明,請讀者試之.此外,Mathematica的Help菜單中提供了大量的幫助信息,其中Help菜單中的第一項HelpBrowser(幫助游覽器)是常用的查詢工具,讀者若想了解更多的使用信息,則應(yīng)自己通過Help菜單去學(xué)習(xí).空間圖形的畫法(基礎(chǔ)實驗)實驗?zāi)康?掌握用Mathematica繪制空間曲面和曲線的方法. 熟悉常用空間曲線和空間曲面的圖形特征,通過作圖和觀察, 提高空間想像

14、能力. 深入理解二次曲面方程及其圖形.基本命令1.空間直角坐標(biāo)系中作三維圖形的命令Plot3D命令Plot3D主要用于繪制二元函數(shù)的圖形. 該命令的基本格式為Plot3Dfx,y,x,x1,x2,y,y1,y2,選項其中fx,y是的二元函數(shù), x1,x2表示x的作圖范圍, y1,y2表示y的作圖范圍. 例如,輸入Plot3Dx2+y2,x,-2,2,y,-2,2則輸出函數(shù)在區(qū)域上的圖形(圖2.1) 圖2.1與Plot命令類似, Plot3D有許多選項. 其中常用的如PlotPoints和ViewPoint. PlotPoints的用法與以前相同. 由于其默認(rèn)值為PlotPoints->1

15、5, 常常需要增加一些點以使曲面更加精致, 可能要用更多的時間才能完成作圖. 選項ViewPoint用于選擇圖形的視點(視角), 其默認(rèn)值為ViewPoint->1.3,-2.4,2.0,需要時可以改變視點.2.利用參數(shù)方程作空間曲面或曲線的命令ParametricPlot3D用于作曲面時, 該命令的基本格式為ParametricPlot3Dxu,v,yu,v,zu,v,u,u1,u2,v,v1,v2,選項其中xu,v,yu,v,zu,v是曲面的參數(shù)方程表示式. u1,u2是作圖時參數(shù)u的范圍, v1,v2是參數(shù)v的范圍.例如,對前面的旋轉(zhuǎn)拋物面, 輸入ParametricPlot3Du

16、*Cosv,u*Sinv,u2,u,0,3,v,0,2 Pi同樣得到曲面的圖形(圖2.2). 圖2.2由于自變量的取值范圍不同, 圖形也不同. 不過, 后者比較好的反映了旋轉(zhuǎn)曲面的特點, 因而是常用的方法.又如, 以原點為中心, 2為半徑的球面. 它是多值函數(shù), 不能用命令Plot3D作圖. 但是, 它的參數(shù)方程為因此,只要輸入ParametricPlot3D2 Sinu*Cosv,2 Sinu*Sinv,2 Cosu,u,0,Pi,v,0,2 Pi便作出了方程為的球面(圖2.3).圖2.3.用于作空間曲線時,ParametricPlot3D的基本格式為ParametricPlot3Dxt,y

17、t,zt,t,t1,t2,選項其中xt,yt,zt是曲線的參數(shù)方程表示式. t1,t2是作圖時參數(shù)t的范圍.例如, 空間螺旋線的參數(shù)方程為 輸入ParametricPlot3DCost,Sint,t/10,RGBColor1,0,0,t,0,8 Pi則輸出了一條紅色的螺旋線(圖2.4). 圖2.4在這個例子中,請讀者注意選項RGBColor1,0,0的位置.用于作空間曲線時, ParametricPlot3D的選項PlotPoints的默認(rèn)值是30, 選項ViewPoint的默認(rèn)值沒有改變.3.作三維動畫的命令MoviPlot3D:無論在平面或空間, 先作出一系列的圖形, 再連續(xù)不斷地放映,

18、便得到動畫.例如, 輸入調(diào)用作圖軟件包命令<<GraphicsAnimation.m.執(zhí)行后再輸入MoviePlot3DCost*x*Sint*y,x,-Pi,Pi,y,-Pi,Pi,t,1,2,Frames->12則作出了12幅曲面圖, 選中任一幅圖形, 雙擊它便可形成動畫.實驗舉例一般二元函數(shù)作圖例2.1 (教材 例2.1) 作出平面的圖形,其中.輸入Plot3D6-2x-3y,x,0,3,y,0,2則輸出所作平面的圖形(圖2.5). 圖2.5如果只要位于第一卦限的部分, 則輸入Plot3D6-2x-3y,x,0,3,y,0,2,PlotRange->0,6觀察圖形

19、. 其中作圖范圍選項為PlotRange->0,6,而刪除的部分顯示為一塊水平平面(圖2.6). 圖2.6例2.2 (教材 例2.2) 作出函數(shù)的圖形.輸入kx_,y_:=4/(1+x2+y2)Plot3Dkx,y,x,-2,2,y,-2,2,PlotPoints->30,PlotRange->0,4,BoxRatios->1,1,1則輸出函數(shù)的圖形2.7. 觀察圖形, 理解選項PlotRange->0,4和BoxRatios->1,1,1的含義. 選項BoxRatios的默認(rèn)值是1,1,0.4.圖2.7例2.3 (教材 例2.3) 作出函數(shù)的圖形.輸入命令

20、Plot3D-x*y*Exp-x2-y2,x,-3,3,y,-3,3,PlotPoints->30,AspectRatio->Automatic;則輸出所求圖形(圖2.8). 圖2.8例2.4 (教材 例2.4) 作出函數(shù)的圖形.輸入Plot3DCos4x2+9y2,x,-1,1,y,-1,1,Boxed->False,Axes->Automatic,PlotPoints->30,Shading->False則輸出網(wǎng)格形式的曲面圖2.9, 這是選項Shading->False起的作用, 同時注意選項Boxed->False的作用.圖2.9二次曲面

21、例2.5 (教材 例2.5) 作出橢球面的圖形.這是多值函數(shù), 用參數(shù)方程作圖的命令ParametricPlot3D. 該曲面的參數(shù)方程為 ().輸入ParametricPlot3D2*Sinu*Cosv,3*Sinu*Sinv, Cosu,u,0,Pi,v,0,2 Pi,PlotPoints->30則輸出橢球面的圖形(圖2.10). 其中選項PlotPoints->30是增加取點的數(shù)量, 可使圖形更加光滑. 圖2.10例2.6 (教材 例2.6) 作出單葉雙曲面的圖形.曲面的參數(shù)方程為 ()輸入ParametricPlot3DSecu*Sinv,2*Secu*Cosv, 3*Ta

22、nu,u,-Pi/4,Pi/4,v,0,2 Pi,PlotPoints->30則輸出單葉雙曲面的圖形(圖2.11). 圖2.11例2.7 作雙葉雙曲面的圖形.曲面的參數(shù)方程是其中參數(shù)時對應(yīng)雙葉雙曲面的一葉, 參數(shù)時對應(yīng)雙葉雙曲面的另一葉. 輸入sh1=ParametricPlot3D1.5*Cotu*Cosv,1.4*Cotu*Sinv,1.3/Sinu,u,Pi/1000,Pi/2,v,-Pi,Pi,DisplayFunction->Identity;(*DisplayFunction->Identity是使圖形暫時不輸出的選項*)sh2=ParametricPlot3D1

23、.5*Cotu*Cosv,1.4*Cotu*Sinv,1.3/Sinu,u,-Pi/2,-Pi/1000,v,-Pi,Pi,DisplayFunction->Identity;Showsh1,sh2,DisplayFunction->$DisplayFunction(*命令Showsh1,sh2是把圖形sh1,sh2放置在一起, DisplayFunction->$DisplayFunction是恢復(fù)顯示圖形的選項*)輸出為圖2.12.圖2.12例2.8 可以證明: 函數(shù)的圖形是雙曲拋物面. 在區(qū)域上作出它的圖形.輸入Plot3Dx*y,x,-2,2,y,-2,2,BoxRa

24、tios->1,1,2,PlotPoints->30輸出圖形略. 也可以用ParametricPlot3命令作出這個圖形, 輸入ParametricPlot3r*Cost,r*Sint,r2*Cost*Sint,r,0,2,t,0,2 Pi,PlotPoints->30輸出為圖2.13比較這些圖形的特點.圖2.13例2.9 (教材 例2.7) 作出圓環(huán),()的圖形.輸入ParametricPlot3D(8+3*Cosv)*Cosu,(8+3*Cosv)*Sinu,7*Sinv,u,0,3*Pi/2,v,Pi/2,2*Pi;則輸出所求圓環(huán)的圖形(圖2.14). 圖2.14例2.

25、10 畫出參數(shù)曲面的圖形.輸入命令ParametricPlot3DCosu*Sinv,SinuSinv,Cosv+LogTanv/2+u/5,u,0,4*Pi,v,0.001,2;則輸出所求圖形(圖2.15).圖2.15曲面相交例2.11 (教材 例2.8) 作出球面和柱面相交的圖形.輸入g1=ParametricPlot3D2 Sinu*Cosv,2 Sinu*Sinv,2 Cosu,u,0,Pi,v,0,2 Pi,DisplayFunction->Identity;g2=ParametricPlot3D2Cosu2,Sin2u,v, u,-Pi/2,Pi/2,v,-3,3,Displ

26、ayFunction->Identity;Showg1,g2,DisplayFunction->$DisplayFunction則輸出所求圖形(圖2.16). 圖2.16例2.12 作出錐面和柱面相交的圖形.輸入g3=ParametricPlot3Dr*Cost,r*Sint,r,r,-3,3,t,0,2 Pi,DisplayFunction->Identity;Showg2,g3,DisplayFunction->$DisplayFunction輸出為圖2.17.圖2.17例2.13 畫出以平面曲線為準(zhǔn)線, 母線平等Z軸的柱面的圖形.寫出這一曲面的參數(shù)方程為取參數(shù)s的

27、范圍為0, 8. 輸入命令ParametricPlot3Dt,Cost,s,t,-Pi,Pi,s,0,8則輸出所求圖形(圖2.18).圖2.18例2.14 (教材 例2.9) 作出曲面及面所圍成的立體圖形.輸入g1=ParametricPlot3Dr*Cost, r*Sint,r2,t,0,2*Pi,r,0,1,PlotPoints->30;g2=ParametricPlot3DCost*Sinr,SintSinr,Cosr+1,t,0,2*Pi,r,0,Pi/2,PlotPoints->30;Showg1,g2則輸出所求圖形(圖2.19). 圖2.19例2.15 (教材 例2.1

28、0) 作出螺旋線()在面上的正投影曲線的圖形.所給螺旋線在面上的投影曲線的參數(shù)方程為.輸入ParametricPlot2t,10Cost,t,-2Pi,2Pi;則輸出所求圖形(圖2.20). 圖2.20注:將表示曲線的方程組, 消去其中一個變量, 即得到曲線在相應(yīng)于這一變量方向上的正投影曲線的方程, 不考慮曲線所在平面, 它就是投影柱面方程; 對于參數(shù)方程, 只要注意將方程中并不存在的那個變元看成第二參數(shù)而添加第三個方程即可.例2.16 (教材 例2.11) 作出默比烏斯帶(單側(cè)曲面)的圖形.輸入Clearr,x,y,z;rt_,v_:=2+0.5*v*Cost/2;xt_,v_:=rt,v*

29、Costyt_,v_:=rt,v*Sintzt_,v_:=0.5*v*Sint/2;ParametricPlot3Dxt,v,yt,v,zt,v,t,0,2 Pi,v,-1,1,PlotPoints->40,4,Ticks->False則輸出所求圖形(圖2.21). 觀察所得到的曲面, 理解它是單側(cè)曲面. 圖2.21空間曲線例2.17 (教材 例2.12) 作出空間曲線的圖形.輸入ParametricPlot3Dt*Cost,t*Sint,2*t,RGBColor1.0,0,0.5,t,0,6 Pi則輸出所求圖形(圖2.22). 圖2.22例2.18 繪制參數(shù)曲線 的圖形.輸入命令

30、ParametricPlot3DSint,2Cost,t.2,t,0,12;則輸出所求圖形(圖2.23).圖2.23例2.19 繪制參數(shù)曲線 的圖形.輸入命令ParametricPlot3DCost2,1/(1+2*t),ArcTant,t,0,8;則輸出所求圖形(圖2.24).圖2.24動畫制作例2.20 平面正弦曲線的運(yùn)動.輸入TablePlotSinx+t*Pi,x,0,6 Pi,t,0,2,1/8則作出了16幅具有不同相位的正弦曲線(輸出圖形略). 雙擊屏幕上某一幅畫, 則可形成動畫. 下面是動畫的最后一幅圖(圖2.25).圖2.25例2.21 (教材 例2.13) 作模擬水波紋運(yùn)動的

31、動畫.輸入調(diào)用軟件包命令<<GraphicsAnimation.m執(zhí)行后再輸入MoviePlot3DSinSqrtx2+y2+t*2*Pi,x,-8 Pi,8 Pi,y,-8 Pi,8 Pi,t,1,0,PlotPoints->50,AspectRatio->0.5,ViewPoint->0.911,-1.682,2.791,Frames->12則輸出12幅具有不同相位的水面圖形, 雙擊屏幕上任意一幅圖, 均可觀察動畫效果. 下圖是第一幅圖(圖2.26).圖2.26例2.22 (教材 例2.14) 用動畫演示由曲線繞z軸旋轉(zhuǎn)產(chǎn)生旋轉(zhuǎn)曲面的過程. 該曲線繞z軸

32、旋轉(zhuǎn)所得旋轉(zhuǎn)曲面的方程為 其參數(shù)方程為輸入Fori=1,i<=30,i+,ParametricPlot3DSinz*Cosu,Sinz*Sinu,z,z,0,Pi,u,0,2*Pi*i/30,AspectRatio->1,AxesLabel->"X","Y","Z"則輸出連續(xù)變化的30幅圖形. 雙擊屏幕上任意一幅圖, 均可觀察動畫效果. 下面是生成旋轉(zhuǎn)曲面的過程中的第23幅圖(圖2.27).圖2.27例2.23 將一張薄膜貼在的方框上, 薄膜振動的函數(shù)取為其中t為參數(shù), 作出圖形隨t的變動而引起薄膜振動的動畫.初始位

33、置是通過t的不同值得到多幅畫面, 然后將這些圖形連續(xù)地一張張顯示出來, 即可達(dá)到運(yùn)動的動畫效果. 輸入命令<<Graphics 'Animation 'Clearx,y,t,m,n;ux_,y_,t_:=Sum16*(1+Cosn*Pi)*(1-Cosm*Pi)*Sinn*Pi*x*Sinm*Pi*y*CosSqrtm2+n2*Pi*t/(m2*n2*Pi*2),m,1,4,n,1,4AnimatePlot3Dux,y,t,x,0,1,y,0,1,PlotRange->-8,8,t,0,1.75,0.25;則輸出相應(yīng)動畫. 下面動畫的最后一幅圖(圖2.28).

34、 圖2.28附錄 大學(xué)數(shù)學(xué)實驗指導(dǎo)書項目三 多元函數(shù)微積分實驗1 多元函數(shù)微分學(xué)(基礎(chǔ)實驗)實驗?zāi)康?掌握利用Mathematica計算多元函數(shù)偏導(dǎo)數(shù)和全微分的方法, 掌握計算二元函數(shù)極值和條件極值的方法. 理解和掌握曲面的切平面的作法. 通過作圖和觀察, 理解二元函數(shù)的性質(zhì)、方向?qū)?shù)、梯度和等高線的概念.基本命令1.求偏導(dǎo)數(shù)的命令D命令D既可以用于求一元函數(shù)的導(dǎo)數(shù), 也可以用于求多元函數(shù)的偏導(dǎo)數(shù). 例如:求對x的偏導(dǎo)數(shù), 則輸入Dfx,y,z,x求對y的偏導(dǎo)數(shù), 則輸入Dfx,y,z,y求對x的二階偏導(dǎo)數(shù), 則輸入Dfx,y,z,x,2求對的混合偏導(dǎo)數(shù), 則輸入Dfx,y,z,x,y 2.求

35、全微分的命令Dt該命令只用于求二元函數(shù)的全微分時, 其基本格式為Dtfx,y其輸出的表達(dá)式中含有Dtx,Dty, 它們分別表示自變量的微分dx,dy. 若函數(shù)的表達(dá)式中還含有其它用字符表示的常數(shù), 例如a, 則Dtfx,y的輸出中還會有Dta, 若采用選項Constants->a, 就可以得到正確結(jié)果, 即只要輸入Dtfx,y,Constants->a3.在平面上作二元函數(shù)的等高線的命令ContourPlot命令的基本格式為ContourPlotfx,y,x,x1,x2,y,y1,y2例如,輸入ContourPlotx2-y2,x,-2,2,y,-2,2則輸出函數(shù)的等高線圖(圖1.

36、1). 該命令的選項比較多(詳細(xì)的內(nèi)容參見光盤中的實驗案例庫). 如選項Contours->15表示作15條等高線, 選項Contours->0表示只作函數(shù)值為0的等高線.圖1.1實驗舉例求多元函數(shù)的偏導(dǎo)數(shù)與全微分例1.1 (教材 例1.1) 設(shè)求輸入Clearz;z=Sinx*y+Cosx*y2;Dz,xDz,yDz,x,2Dz,x,y則輸出所求結(jié)果.例1.2 設(shè)求和全微分dz.輸入Clearz;z=(1+x*y)y;Dz,xDz,y則有輸出再輸入Dtz則得到輸出例1.3 (教材 例1.2) 設(shè)其中a是常數(shù), 求dz.輸入Clearz,a;z=(a+x*y)y;wf=Dtz,Co

37、nstants->a/Simplify則輸出結(jié)果:(a+xy)-1+y(y2Dtx,Constants->a+ Dty,Constants->a(xy+(a+xy)Loga+xy)其中Dtx,Constants->a就是dx, Dty,Constants->a就是dy. 可以用代換命令“/.”把它們換掉. 輸入wf/.Dtx,Constants->a->dx,Dty,Constants->a->dy輸出為(a+xy)-1+y(dxy2+dy(xy+(a+xy)Loga+xy)例1.4 (教材 例1.3) 設(shè),求輸入 eq1=Dx=Eu+u*

38、Sinv,x,NonConstants->u,v(*第一個方程兩邊對x求導(dǎo)數(shù), 把u,v看成x,y的函數(shù)*)eq2=Dy=Eu-u*Cosv,x,NonConstants->u,v(*第二個方程兩邊對x求導(dǎo)數(shù), 把u,v看成x,y的函數(shù)*)Solveeq1,eq2,Du,x,NonConstants->u,v,Dv,x,NonConstants->u,v/Simplify(*解求導(dǎo)以后由eq1,eq2組成的方程組*)則輸出 其中Du,x,NonConstants->u,v表示u對x的偏導(dǎo)數(shù), 而Dv,x,NonCosnstants->u,v表示v對x的偏導(dǎo)數(shù)

39、. 類似地可求得u,v對y的偏導(dǎo)數(shù).微分學(xué)的幾何應(yīng)用例1.5 求出曲面在點(1,1)處的切平面、法線方程, 并畫出圖形.解(1) 畫出曲面的圖形. 曲面的參數(shù)方程為輸入命令Clearf;fx_,y_=2x2+y2;p1=Plot3Dfx,y,x,-2,2,y,-2,2;g1=ParametricPlot3Dr*Sinu/Sqrt2.,r*Cosu,r2,u,0,2*Pi,r,0,2則輸出相應(yīng)圖形(圖1.2).圖1.2 (2) 畫出切平面的圖形. 輸入命令a=Dfx,y,x/.x->1,y->1;b=Dfx,y,y/.x->1,y->1;px_,y_=f1,1+a(x-1

40、)+b(y-1);g2=Plot3Dpx,y,x,-2,2,y,-2,2;則輸出切平面方程為及相應(yīng)圖形(圖1.3).圖1.3 (3) 畫出法線的圖形. 輸入命令lyx_=1+b(x-1)/a;lzx_=f1,1-(x-1)/a;g3=ParametricPlot3Dx,lyx,lzx,x,-2,2;Showp1,g2,g3,AspectRatio->Automatic,ViewPoint->-2.530,-1.025,2.000;則輸出相應(yīng)圖形(圖1.4).圖1.4例1.6 (教材 例1.4) 求曲面在點處的切平面方程, 并把曲面和它的切平面作在同一圖形里.輸入Cleark,z;k

41、x_,y_=4/(x2+y2+1);(*定義函數(shù)k(x,y)*)kx=Dkx,y,x/.x->1/4,y->1/2;(*求函數(shù)k(x,y)對x的偏導(dǎo)數(shù), 并代入在指定點的值*)ky=Dkx,y,y/.x->1/4,y->1/2;(*求函數(shù)k(x,y)對y的偏導(dǎo)數(shù), 并代入在指定的值*)z=kx*(x-1/4)+ky*(y-1/2)+k1/4,1/2;(*定義在指定點的切平面函數(shù)*)再輸入qm=Plot3Dkx,y,x,-2,2,y,-2,2,PlotRange->0,4,BoxRatios->1,1,1,PlotPoints->30,DisplayFu

42、nction->Identity;qpm=Plot3Dz,x,-2,2,y,-2,2,DisplayFunction->Identity;Showqm,qpm,DisplayFunction->$DisplayFunction則輸出所求曲面與切平面的圖形(圖1.5).圖1.5多元函數(shù)的極值例1.7 (教材 例1.5) 求的極值.輸入Clearf;fx_,y_=x3-y3+3x2+3y2-9x;fx=Dfx,y,xfy=Dfx,y,ycritpts=Solvefx=0,fy=0則分別輸出所求偏導(dǎo)數(shù)和駐點:x->-3,y->0,x->-3,y->2,x-&

43、gt;1,y->0,x->1,y->2再輸入求二階偏導(dǎo)數(shù)和定義判別式的命令fxx=Dfx,y,x,2;fyy=Dfx,y,y,2;fxy=Dfx,y,x,y;disc=fxx*fyy-fxy2輸出為判別式函數(shù)的形式:(6+6x)(6-6y)再輸入data=x,y,fxx,disc,fx,y/.critpts;TableFormdata,TableHeadings->None, "x ", "y ", "fxx ", "disc ", "f "最后我們得到了四個駐點處的判別

44、式與的值并以表格形式列出.Xyfxxdiscf-30-12-7227-32-127231101272-51212-72-1易見,當(dāng)時判別式disc=72, 函數(shù)有極大值31;當(dāng)時判別式disc=72, 函數(shù)有極小值-5;當(dāng)和時, 判別式disc=-72, 函數(shù)在這些點沒有極值.最后,把函數(shù)的等高線和四個極值點用圖形表示出來,輸入d2=x,y/.critpts;g4=ListPlotd2,PlotStyle->PointSize0.02,DisplayFunction->Identity;g5=ContourPlotfx,y,x,-5,3,y,-3,5,Contours->40

45、,PlotPoints->60,ContourShading->False,Frame->False,Axes->Automatic,AxesOrigin->0,0,DisplayFunction->Identity;Showg4,g5,DisplayFunction->$DisplayFunction則輸出圖1.6.圖1.6從上圖可見, 在兩個極值點附近, 函數(shù)的等高線為封閉的. 在非極值點附近, 等高線不封閉. 這也是從圖形上判斷極值點的方法.注:在項目一的實驗4中,我們曾用命令FindMinimum來求一元函數(shù)的極值, 實際上,也可以用它求多元函

46、數(shù)的極值, 不過輸入的初值要在極值點的附近. 對本例,可以輸入以下命令FindMinimumfx,y,x,-1,y,1則輸出-5.,x->1.,y->-2.36603×10-8從中看到在的附近函數(shù)有極小值-5, 但y的精度不夠好.例1.8 求函數(shù)在條件下的極值.輸入Clearf,g,la; fx_,y_=x2+y2;gx_,y_=x2+y2+x+y-1;lax_,y_,r_=fx,y+r*gx,y;extpts=SolveDlax,y,r,x=0,Dlax,y,r,y=0,Dlax,y,r,r=0得到輸出再輸入fx,y/.extpts/Simplify得到兩個可能是條件極

47、值的函數(shù)值但是否真的取到條件極值呢? 可利用等高線作圖來判斷.輸入dian=x,y/.Tableextptss,j,s,1,2,j,2,3g1=ListPlotdian,PlotStyle->PointSize0.03,DisplayFunction->Identitycp1=ContourPlotfx,y,x,-2,2,y,-2,2,Contours->20,PlotPoints->60,ContourShading->False,Frame->False,Axes->Automatic,AxesOrigin->0,0,DisplayFunct

48、ion->Identity;cp2=ContourPlotgx,y,x,-2,2,y,-2,2,PlotPoints->60,Contours->0,ContourShading->False,Frame->False,Axes->Automatic,ContourStyle->Dashing0.01,AxesOrigin->0,0,DisplayFunction->Identity;Showg1,cp1,cp2,AspectRatio->1,DisplayFunction->$DisplayFunction輸出為及圖1.7.

49、從圖可見,在極值可疑點處, 函數(shù)的等高線與曲線(虛線)相切. 函數(shù)的等高線是一系列同心圓, 由里向外, 函數(shù)值在增大, 在的附近觀察, 可以得出取條件極大的結(jié)論. 在 的附近觀察, 可以得出取條件極小的結(jié)論.圖1.7梯度場例1.9 畫出函數(shù)的梯度向量.解 輸入命令<<GraphicsContourPlot3D<<GraphicsPlotField3D<<CalculusVectorAnalysisSetCoordinatesCartesianx,y,z;f=z2-x2-y2;cp3d=ContourPlot3Df,x,-1.1,1.1,y,-1.1,1.1,

50、z,-2,2,Contours->1.0,Axes->True,AxesLabel->"x","y","z"vecplot3d=PlotGradientField3Df,x,-1.1,1.1,y,-1.1,1.1,z,-2,2,PlotPoints->3,VectorHeads->True;Showvecplot3d, cp3d;則輸出相應(yīng)圖形(圖1.8)圖1.8例1.10 在同一坐標(biāo)面上作出 和 的等高線圖(), 并給出它們之間的關(guān)系.解 輸入命令<<CalculusVectorAnalysis<<GraphicsPlotFieldSetCoordinatesCartesianx,y,z;checku_,v_:=Gradu1-Gradv2,Gradv1+Gradu2u=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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論