




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、常用數(shù)學(xué)軟件的功能及特點(diǎn)比較1 常用數(shù)學(xué)軟件簡(jiǎn)介從計(jì)算機(jī)發(fā)明到現(xiàn)在已經(jīng)有50 多年的時(shí)間了, 隨著計(jì)算機(jī)的普及, 計(jì)算機(jī)技術(shù)已被廣泛應(yīng)用于各行各業(yè),對(duì)科學(xué)發(fā)展起到了巨大的推動(dòng)作用伴隨科學(xué)研究的不斷深入,科技工作者經(jīng)常需要對(duì)大量數(shù)據(jù)進(jìn)行分析處理或者對(duì)復(fù)雜問(wèn)題進(jìn)行計(jì)算求解為了減輕科技工作者的壓力,許多數(shù)學(xué)軟件被相繼開(kāi)發(fā)常用的數(shù)學(xué)軟件包括符號(hào)計(jì)算軟件,如Mathematica、 Maple 等;數(shù)值計(jì)算軟件,如Matlab、MathCAD等;求解最優(yōu)化問(wèn)題軟件,如 Lingo、Lindo等.數(shù)學(xué)軟件的優(yōu)越性主要在于它能夠進(jìn)行大規(guī)模的代數(shù)運(yùn)算.通常我們用筆和紙進(jìn)行代數(shù)運(yùn)算只能處理符號(hào)較少的算式 , 當(dāng)
2、算式的符號(hào)上升到百位數(shù)后,手工計(jì)算便成為可能而不可行的事,主要原因是在做大量符號(hào)運(yùn)算時(shí),我們很容易出錯(cuò),并且缺乏足夠的耐心.當(dāng)算式的符號(hào)個(gè)數(shù)上升到四位數(shù)后,手工計(jì)算便成為不可能的事,這時(shí)用計(jì)算機(jī)代數(shù)系統(tǒng)進(jìn)行運(yùn)算就可以做到準(zhǔn)確 ,快捷 ,有效 .下面介紹三個(gè)比較常用的數(shù)學(xué)軟件 Mathematica 、 Matlab 和 Lingo 1.1 Mathematica 軟件Mathematica 是由美國(guó)物理學(xué)家Stephen Wolfram 領(lǐng)導(dǎo)的 Wolfram Research 公司 1986 年開(kāi)發(fā)的數(shù)學(xué)軟件, 1988年發(fā)布 Mathematica 系統(tǒng)的 1.0 版,因?yàn)橄到y(tǒng)精致的結(jié)構(gòu)和
3、強(qiáng)大的計(jì)算能力而被廣為流傳,經(jīng)過(guò)不斷擴(kuò)充和修改后,在 1991 年和 1997 年推出了功能更加充實(shí)和完善的Mathematica 2.0 版和 Mathematica 3.0 版, 1999 年又推出了 Mathematica 4.0 版,現(xiàn)在的最新版本是Mathematica 5.2.2 版Mathematica 是一個(gè)擁有強(qiáng)大的符號(hào)計(jì)算和數(shù)值計(jì)算能力的軟件,它將數(shù)值、符號(hào)、計(jì)算引擎、圖形運(yùn)算、編程語(yǔ)言、文字處理和與其他應(yīng)用程序的高級(jí)連接等眾多功能 有機(jī)地結(jié)合在一起 Mathematica 是一個(gè)很容易擴(kuò)充和修改的系統(tǒng)它提供了一套描述方法,相當(dāng)于編程語(yǔ)言,用這個(gè)語(yǔ)言可以編寫(xiě)程序,解決各種特
4、殊問(wèn)題.Mathematica的基本系統(tǒng)主要是用C語(yǔ)言開(kāi)發(fā)的,因而可以比較容易地移植到各種平臺(tái)上 Mathematica 還是一個(gè)交互式的計(jì)算系統(tǒng),計(jì)算是在用戶和Mathematica 互相交換、 傳遞數(shù)據(jù)信息的過(guò)程中完成的 Mathematica 系統(tǒng)所接受的命令稱作表達(dá)式,系統(tǒng)在接受了一個(gè)表達(dá)式以后就對(duì)它進(jìn)行處理,然后再把計(jì)算結(jié)果返回 Mathematica 是最大的單應(yīng)用程序之一, 它內(nèi)容豐富功能強(qiáng)大的函數(shù)覆蓋了初等數(shù)學(xué)、 微積分和線性代數(shù)等眾多的數(shù)學(xué)領(lǐng)域Mathematica 軟件雖然功能強(qiáng)大,但它的語(yǔ)言非常簡(jiǎn)單,很容易學(xué)會(huì)并且熟練掌握1.1.1 Mathematica 具有強(qiáng)大的運(yùn)算
5、功能114 1 T -4 2例1求S00 83 的精確解及近似解.99In1:= 100A(1/4)*(1/9)A(-1/2)+8A(-1/3)*(4/9F(1/2)*PiOut1=3 M -(精確解)3In2:= N%Out2= 10.543(近似解)1.1.2 Mahematica具有強(qiáng)大的繪圖功能例2描繪函數(shù)z sin xy在3,3上的圖形.11In1:= Plot3DSinx y,x,-Pi,Pi,y,-3,31 0.50 -0.5-1Out1= -Graphics3D-1.1.3 Mathematica 還具有一些專用的函數(shù),主要用來(lái)查看和設(shè)置日期、時(shí)間、目錄;測(cè)試、 提高表達(dá)式的計(jì)
6、算速度等例 3 ln1=DateOut1=2008,5,1,13,58,26輸出的元素依次是當(dāng)前的年、月、日、時(shí)、分、秒.設(shè)置時(shí)間上限,表示如果擔(dān)心計(jì)算時(shí)間太長(zhǎng),還可以使用TimeConstrainedexpr,t,failexpr 當(dāng)計(jì)算表達(dá)式expr花費(fèi)的時(shí)間超過(guò)t秒后,強(qiáng)制中止計(jì)算,返回表達(dá)式 failexpr例 4 ln2=TimeConstrained,2,0k 1 Pr imekOut2=0.1.2 Matlab 軟件Matlab是MAT rix Laboratory 的縮寫(xiě),是矩陣實(shí)驗(yàn)室的意思.70年代中期,美國(guó)的Cleve Morler教授在給學(xué)生開(kāi)設(shè)線性代數(shù)課程時(shí),為了讓學(xué)生
7、能使用子程序又不至于在編程上花費(fèi)過(guò)多的時(shí)間便為學(xué)生編寫(xiě)了使用子程序的接口程序,取名為 Matlab. 80年代初期,Cleve Morler教授采用C語(yǔ)言編寫(xiě)了 Matlab 的核心 1984 年, Cleve Morle 和 John Little 成立 Math Works 公司,正式把Matlab推向市場(chǎng) 1992 年 MathWorks 公司于推出了 Matlab 4.0 版本, 1994 年的 4.2 版本擴(kuò)充了 4.0 版本的功能, 尤其在圖形界面設(shè)計(jì)方面更提供了新的方法 1997 年推出的 5.0 版允許了更多的數(shù)據(jù)結(jié)構(gòu),如單元數(shù)據(jù)、多維矩陣、對(duì)象與類等,使其成為一種更方便編程的
8、語(yǔ)言 1999 年推出的 Matlab 5.3版在很多方面又進(jìn)一步改進(jìn)了 Matlab 語(yǔ)言的功能 2000 年 10 月底推出了其全新的 Matlab 6.0 正式版,在核心數(shù)值算法、界面設(shè)計(jì)、外部接口、應(yīng)用桌面等諸多方面有了極大的改進(jìn)經(jīng)過(guò)不斷的改進(jìn)與完善,在 2007 年秋季推出了 Matlab 的最新版本R2007b Matlab 是集數(shù)值計(jì)算、符號(hào)計(jì)算和圖形處理等功能于一體的工程計(jì)算應(yīng)用軟件 Matlab 不僅可以處理代數(shù)問(wèn)題和數(shù)值分析問(wèn)題,而且還具有強(qiáng)大的圖形處理和仿真模擬等功能他的圖形功能既包括對(duì)二維和三維數(shù)據(jù)可視化、圖形處理、動(dòng)畫(huà)制作等高層次的繪圖命令,也包括可以完全修改圖形局部
9、及編制完整圖形界面的低層次繪圖命令可以從線型、邊界面、色彩、渲染、光線、視角等方面把數(shù)據(jù)的特征表現(xiàn)出來(lái)它的圖象處理工具包是由一系列支持圖象處理操作的函數(shù)組成的,所支持的圖象處理操作有:幾何操作、區(qū)域操作和塊操作、線性濾波和濾波器設(shè)計(jì)、變換、圖象分析和增強(qiáng)、二值圖象操作等圖象處理工具包的函數(shù),按功能可以分為以下幾類:圖象顯示、圖象文件輸入與輸出、幾何操作、象素值和統(tǒng)計(jì)、圖象分析與增強(qiáng)、圖象變換、領(lǐng)域和塊操作、二值圖象操作、顏色映射和顏色空間轉(zhuǎn)換、圖象類型和類型轉(zhuǎn)換、工具包參數(shù)獲取和設(shè)置等現(xiàn)在, Matlab 已經(jīng)成為線性代數(shù)、數(shù)理統(tǒng)計(jì)、數(shù)值分析、優(yōu)化技術(shù)、自動(dòng)控制、數(shù)字信號(hào)處理、圖像處理、動(dòng)態(tài)系
10、統(tǒng)仿真等高級(jí)課程的基本教學(xué)工具1.2.1 Matlab在數(shù)值計(jì)算中的應(yīng)用Matlab 語(yǔ)言中提供了豐富的統(tǒng)計(jì)函數(shù),使用這些函數(shù)可以完成對(duì)數(shù)據(jù)的各種統(tǒng)計(jì)分析工作例 5 如下給出8 個(gè)學(xué)生的英語(yǔ)、數(shù)學(xué)、物理和化學(xué)的成績(jī),求各科成績(jī)總分和各科平均成績(jī)score =90979897779067875667899976677778889876895666754586677889758588788975857663848390 score_sum=sum(score)score_sum =634636696574656(各科成績(jī)總分) score_avg=score_sum./8score_avg =79
11、.250079.500087.000071.750082.0000(各科平均成績(jī))1.3 Lingo 軟件美國(guó)芝加哥大學(xué)的Linus Schrage教授于1980年前后開(kāi)發(fā)了一套專門(mén)用于求解優(yōu)化問(wèn)題的軟件包,后來(lái)又經(jīng)過(guò)多年的不斷完善與擴(kuò)充,并成立了 Lindo 系統(tǒng)公司 2006 年初, Lindo 系統(tǒng)公司在全球推出 Lingo 的最新版本LingoV10.0 版 Lingo 是英文 Linear Interactive and General Optimizer 字首的縮寫(xiě)形式,即 “交互式的線性和通用優(yōu)化求解器”, 它除了可以用于求解線形規(guī)劃和二次規(guī)劃問(wèn)題外, 還可以用來(lái)求解非線形規(guī)劃問(wèn)
12、題, 也可以用于一些線形和非線形方程 (組) 的求解等等 Lingo軟件的最大特色在于可以允許優(yōu)化模型中的決策變量是整數(shù),即整數(shù)規(guī)劃,而且執(zhí)行速度快Lingo 還是最優(yōu)化問(wèn)題的一種建模語(yǔ)言,包括許多常用的數(shù)學(xué)函數(shù)可以讓使用者在建立優(yōu)化模型時(shí)調(diào)用,并且可以接受其他的數(shù)據(jù)文件,如:文本文件、數(shù)據(jù)庫(kù)文件、 Excel 電子表格文件等,即使對(duì)優(yōu)化方面的知識(shí)了解不多的使用者,也能方便地建模和輸入、有效地求解和分析實(shí)際中遇到的大規(guī)模優(yōu)化問(wèn)題,并能快速得到復(fù)雜優(yōu)化問(wèn)題的高質(zhì)量的解2 常用數(shù)學(xué)軟件的功能比較通過(guò)上面的介紹可以發(fā)現(xiàn)不同的數(shù)學(xué)軟件之間既有相同點(diǎn)又有不同點(diǎn),比如它們都可以進(jìn)行簡(jiǎn)單的符號(hào)運(yùn)算,數(shù)值計(jì)算
13、和圖形顯示等,但在一些具體應(yīng)用上也是有差別的 與同類軟件相比, Matlab是以數(shù)值計(jì)算為主,而Mathematica 以符號(hào)運(yùn)算為主所謂符號(hào)運(yùn)算是指它所處理的對(duì)象不僅僅是常見(jiàn)的數(shù)字(如 12 或 3.14) ,而是一些帶有代數(shù)符號(hào)的表達(dá)式(如 2x+3y=b 等) 它還建立了輸入各種數(shù)學(xué)符號(hào)和函數(shù)的專用模板, 使輸入數(shù)學(xué)公式和各種操作命令更加簡(jiǎn)便直觀 Mathematica 帶有擴(kuò)展的繪圖軟件包,使繪圖功能更加完善,操作方面比Matlab 手續(xù)也更為簡(jiǎn)便另外,在數(shù)值計(jì)算方面, Mathematica 注重計(jì)算精度,為精確計(jì)算的首選軟件; Matlab 是一種高度集成的科學(xué)計(jì)算軟件,以矩陣為基
14、本數(shù)據(jù)單位,復(fù)數(shù)或?qū)崝?shù)則可以理解為1X1的矩陣.Matlab的很多運(yùn)算都是直接針對(duì)矩陣的,所以表示起來(lái)也就特別方便例如,復(fù)數(shù)“A=3 2i ”,在Matlab 中表示就是“ A=3+ 2i” .又如,要計(jì)算兩個(gè)矩陣C D的乘積,可以表示為“ CX D,而不像大多數(shù)計(jì)算機(jī)語(yǔ)言那樣需要用戶編寫(xiě)循環(huán)語(yǔ)句來(lái)實(shí)現(xiàn)等下面僅就其中的某些方面加以比較2.1用 Mathematica 和 Matlab 作三維圖形例6作jx2y2的三維圖形應(yīng)用 Mathematica命令:Plot3DSqrtxA2+yA2,x,-4,4,y,-4,4應(yīng)用Matlab命令: X,Y=meshgrid(-4:0.5:4); Z=sq
15、rt(X.A2+Y .人2); mesh(Z)注 從此例可以看出 Mathematica可直接作出函數(shù) Jx2 y2在區(qū)間-4, 4 * -4, 4上的圖象,其中x,y為符號(hào);而Matlab作圖是產(chǎn)生一個(gè)數(shù)值矩陣,然后作出圖形,其中的 x, y不是符號(hào)而是數(shù)值向量.2.2 用Mathematica和Matlab作微積分計(jì)算例7求y sin xn的二階導(dǎo)數(shù)應(yīng)用Mathematica命令:In1:=DsinxAn,x,2n 2n 2 2n 2n ,Out1= (-1 + n) n x sinx + n x sin x 應(yīng)用Matlab命令: n=sym(n); x=sym(x); diff(sin
16、(xAn) , 2)Ans=(n-1)* n *xA(n-2)*cos(xAn)- nA2*xA(2*n-2)*sin (xAn)注由上面例題可知Mathematica和Matlab軟件都可以進(jìn)行簡(jiǎn)單的符號(hào)微積分的運(yùn)算,但Mathematica用起來(lái)很方便,而 Matlab軟件是將變量n, x轉(zhuǎn)化為符號(hào)變量才能計(jì)算的.2.3用Mathematica、Matlab和Lingo作線性規(guī)劃問(wèn)題例8某企業(yè)生產(chǎn)甲、乙兩種產(chǎn)品,需要用到A,B,C三種設(shè)備,關(guān)于產(chǎn)品的盈利與使用設(shè)備的工時(shí)及限制如下表所示.問(wèn):該企業(yè)應(yīng)如何安排生產(chǎn),使得在計(jì)劃期內(nèi)總利潤(rùn)最大?生產(chǎn)產(chǎn)品使用設(shè)備的工時(shí)、限制和產(chǎn)品的盈利甲乙設(shè)備的生
17、產(chǎn)能力/hA/(h/件)2212B/(h/件)4016C/(h/件)0515盈利/ (元/件)200300設(shè)甲、乙產(chǎn)品的產(chǎn)量分別為 x1, x2,建立線性規(guī)劃模型:Max z=200 x1+300 x2;s.t.2 x1 +2 x212,4x116,5x215,x1 ,x2 0.應(yīng)用Mathematica命令:In1:= ConstrainedMax200 x 1+300 x 2 ,2 x 1 +2 x 2 =12,4 x 1 =16,5 x 2 3, x 2 - 3應(yīng)用Matlab命令:f=-200,-300;A=2,2;4,0;0,5;b=12,16,15;x,f=linprog(f,A,
18、b,zeros(1,2);x,-fOptimization terminated successfully.x =3.00003.0000ans =1.5000e+003應(yīng)用 Lingo 命令:max=200*x1+300*x2;2*x1+2*x2=12;4*x1=16;5*x2=0;x2=0;Global optimal solution found at iteration:2Objective value:1500.000VariableValueReduced CostX13.0000000.000000X23.0000000.000000RowSlack or Surplus Dua
19、l Price11500.0001.00000020.000000100.000034.0000000.00000040.00000020.0000053.0000000.00000063.0000000.000000注 利用 Mathematica、 Matlab 和 Lingo 這三個(gè)軟件均可以求出此題的最優(yōu)解為x1=3, x2=3,z=1500 比較起來(lái)可知Mathematica 和 Matlab 只能求出最優(yōu)解,而Lingo 除了可以求出最優(yōu)解還可以得到靈敏度分析結(jié)果,而且 Lingo 更適用于求解整數(shù)線性規(guī)劃2.4 用 Matlab 和 Lingo 作二次規(guī)劃問(wèn)題22例 9 min
20、f (x1 , x2) 2x1 6x2 x1 2x1x2 2x2s.t. X1 + x2 0, X2 A 0應(yīng)用 Matlab 命令:首先寫(xiě)成標(biāo)準(zhǔn)形式:1Min z=(x 1 ,x2)11x1+2x2T2x16x211x1212x22s.t.x1x2輸入命令:H=1 -1; -1 2;c=-2 ;-6;A=1 1; -1 2;b=2;2;Aeq=;beq=; VLB=0;0;VUB=;x,z=quadprog(H,c,A,b,Aeq,beq,VLB,VUB)x =0.66671.3333 z = -8.2222應(yīng)用 Lingo 命令:x1+x2=2;min=-2*x1-6*x2+x1A2-2*
21、x1*x2+2*x2A2;-x1+2*x2=0;x2=0;Local optimal solution found at iteration:42Objective value:VariableValue Reduced CostX10.80000010.8909355E-08X21.2000000.000000RowSlack or SurplusDual Price10.0000002.7999992-7.200000-1.00000030.40000020.00000040.80000010.00000051.2000000.000000-7.200000注 此題在運(yùn)算過(guò)程方面體現(xiàn)了 M
22、atlab 以矩陣為基本數(shù)據(jù)單位, 但求解過(guò)程較為復(fù)雜, 而用 Lingo求解過(guò)程則更簡(jiǎn)便;在運(yùn)算結(jié)果方面,用Matlab軟件的運(yùn)算結(jié)果精確到小數(shù)點(diǎn)后面第四位,而用Lingo軟件的運(yùn)算結(jié)果精確到小數(shù)點(diǎn)后面第七位,由此可知 Lingo 為求二次規(guī)劃問(wèn)題的首選軟件2.5 用 Mathematica 和 Matlab 作矩陣的特征值和特征向量122例 10 求方陣 a= 2 1 2 的特征值和特征向量221應(yīng)用 Mathematica 命令:In1:= a=1,2,2,2,1,2,2,2,1;In2:= MatrixFormaOut2/MatrixForm= 122212221In3:= EigenvaluesaOut3= 5, -1, -1In4:= EigenvectorsaOut4= 1, 1, 1, -1, 0, 1, -1, 1, 0In5:= EigensystemaOut5= 5, -1, -1, 1, 1, 1, -1, 0, 1, -1, 1, 0應(yīng)用 Matlab 命令:a=1,2,2;2,1,2;2,2,1;C,D=eig(a)Mathematica 求矩陣的特征值和特征向量過(guò)程較為繁瑣,而用Matlab 則更V=0.60150.55220.57740
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 車(chē)輛雙方維修協(xié)議書(shū)模板
- 進(jìn)口水產(chǎn)批發(fā)合同協(xié)議
- 氫氣安全協(xié)議書(shū)
- 物權(quán)購(gòu)買(mǎi)協(xié)議書(shū)
- 轉(zhuǎn)委托協(xié)議書(shū)范本
- 酒店培訓(xùn)系統(tǒng)學(xué)習(xí)
- 進(jìn)口液壓油采購(gòu)合同協(xié)議
- 畢業(yè)閨蜜協(xié)議書(shū)
- 實(shí)習(xí)生用人合同協(xié)議書(shū)
- 建設(shè)工程個(gè)人勞務(wù)分包合同
- 2025年北京市水務(wù)局所屬事業(yè)單位招聘工作人員101人筆試高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025屆貴州省遵義第四中學(xué)高考語(yǔ)文全真模擬密押卷含解析
- 【MOOC】創(chuàng)業(yè)基礎(chǔ)-暨南大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 中建專項(xiàng)施工電梯專項(xiàng)施工方案
- 全國(guó)各省市一覽表
- 餐飲的勞務(wù)合同(2篇)
- 山東省濰坊市2023-2024學(xué)年高二下學(xué)期期末考試 歷史 含解析
- 2024-2025學(xué)年中職歷史世界歷史高教版(2023)教學(xué)設(shè)計(jì)合集
- 阿里云:云上數(shù)字政府之:政務(wù)云統(tǒng)籌運(yùn)營(yíng)建設(shè)指南
- 鴿巢問(wèn)題-公開(kāi)課教案教學(xué)設(shè)計(jì)課件案例試卷題
- 《磷污染的物化處理》筆記
評(píng)論
0/150
提交評(píng)論