Mathematica官方版是一款由wolfram開發(fā)的數(shù)學(xué)分析型工具。Mathematica官方版支持高性能計(jì)算、自動(dòng)多線程計(jì)算,代數(shù),幾何,三角函數(shù),線性代數(shù),微積分等。Mathematica官方版除了提供答案,還提供了解題過程,方便幫助學(xué)生掌握。
軟件地址【 chengdongds.top 】
Mathematica軟件特色
讓你的結(jié)果看起來最好
憑借先進(jìn)的計(jì)算美學(xué)和屢獲殊榮的設(shè)計(jì),精美地呈現(xiàn)您的結(jié)果 - 即時(shí)創(chuàng)建頂級(jí)的交互式可視化和出版品質(zhì)的文檔。
150,000多個(gè)例子
通過文檔中心的150,000多個(gè)示例,Wolfram演示項(xiàng)目中的10,000多個(gè)開放代碼演示以及許多其他資源,開始使用幾乎所有項(xiàng)目。
一個(gè)廣泛的系統(tǒng)
擁有近5,000個(gè)內(nèi)置功能,涵蓋了所有技術(shù)計(jì)算領(lǐng)域 – 所有這些功能都經(jīng)過精心集成,因此它們可以完美地協(xié)同工作,并且全部集成在系統(tǒng)中。
多領(lǐng)域
基于三十年的發(fā)展,擅長(zhǎng)技術(shù)計(jì)算的所有領(lǐng)域 – 包括神經(jīng)網(wǎng)絡(luò),機(jī)器學(xué)習(xí),圖像處理,幾何,數(shù)據(jù)科學(xué),可視化等等。
功能強(qiáng)大
旨在提供具有工業(yè)強(qiáng)度的功能 – 在所有領(lǐng)域提供強(qiáng)大,高效的算法,能夠處理大規(guī)模問題,并行性,GPU計(jì)算等。
強(qiáng)大的算法能力
在所有領(lǐng)域都構(gòu)建了前所未有的強(qiáng)大算法 - 其中許多都是使用獨(dú)特的開發(fā)方法和Wolfram語言的獨(dú)特功能在Wolfram創(chuàng)建的。
高水平
超級(jí)功能,元算法……提供了一個(gè)逐步更高級(jí)別的環(huán)境,其中盡可能自動(dòng)化 - 因此您可以盡可能高效地工作。
強(qiáng)大的易用性
利用其算法能力 – 以及Wolfram語言的精心設(shè)計(jì) – 創(chuàng)建一個(gè)獨(dú)特易用的系統(tǒng),具有預(yù)測(cè)性建議,自然語言輸入等。
文件和代碼
使用Wolfram筆記本界面,它允許您組織在富文檔中執(zhí)行的所有操作,包括文本,可運(yùn)行代碼,動(dòng)態(tài)圖形,用戶界面等。
易于學(xué)習(xí)
憑借其直觀的英語功能名稱和連貫的設(shè)計(jì),Wolfram語言易于閱讀,書寫和學(xué)習(xí)。
連接到一切
可以連接到一切:文件格式(180+),其他語言,Wolfram Data Drop,API,數(shù)據(jù)庫,程序,物聯(lián)網(wǎng),設(shè)備 – 甚至是自身的分布式實(shí)例。
即時(shí)真實(shí)世界數(shù)據(jù)
可以訪問龐大的W??olfram知識(shí)庫,其中包括數(shù)千個(gè)域中的最新實(shí)際數(shù)據(jù)。
無縫云集成
現(xiàn)在可與云實(shí)現(xiàn)無縫集成,從而在獨(dú)特而強(qiáng)大的混合云/桌面環(huán)境中實(shí)現(xiàn)共享,云計(jì)算等功能。
mathematica數(shù)學(xué)軟件使用教程
一、【基礎(chǔ)運(yùn)算操作】
1、運(yùn)算符:Mathematica支持我們常見的運(yùn)算符+ - * / ^ ! (加,減,乘,除,指數(shù),階乘)。邏輯運(yùn)算符&&與,||或,!非
2、表達(dá)式:在Mathematica中可以直接將字母符號(hào)帶入運(yùn)算,這在大部分的數(shù)學(xué)軟件中是不允許的,如x+y+y=x+2y(字母符號(hào)的運(yùn)算)f=2x(定義一個(gè)含有字母的表達(dá)式)。
3、書寫操作:主要有兩點(diǎn)①回車表示換行,Shift鍵與回車同時(shí)按下表示執(zhí)行程序。②一個(gè)表達(dá)式以分號(hào);結(jié)尾則不輸出結(jié)算結(jié)果,一行可以寫多個(gè)表達(dá)式,但是需要用分號(hào)分隔。
4、百分號(hào)的用處:%表示上一次的計(jì)算結(jié)果。
5、內(nèi)建函數(shù):Mathematica有很多強(qiáng)悍的內(nèi)建函數(shù),通常以大寫字母開頭,如常見的Sin[]正弦函數(shù),Plot[]用于函數(shù)繪制,Expand[]用于多項(xiàng)式展開等。(注意Mathematica是區(qū)分大小寫的,所以在寫函數(shù)時(shí)一定注意開頭大寫,另外緊跟中括號(hào),不要寫成小括號(hào)。認(rèn)識(shí)并使用常見的內(nèi)建函數(shù)是用好Mathematic的重要途徑,在后面會(huì)有更加詳細(xì)的介紹)
第一節(jié)基本知識(shí)的舉例如下:
二、【常量和變量】
1、常量:在Mathematica中常量有整數(shù),有理數(shù),實(shí)數(shù),復(fù)數(shù)和內(nèi)置常數(shù),特別要說的在附屬中,虛數(shù)單位用I(大寫的i)表示。內(nèi)置的常數(shù)有Pi(圓周率),E(自然對(duì)數(shù)),Infinity(無限大)等組成。
①、常數(shù)的轉(zhuǎn)換:這里常數(shù)的轉(zhuǎn)換指的是將數(shù)字轉(zhuǎn)化為有理數(shù)或者實(shí)數(shù),這里就要用到兩個(gè)內(nèi)建函數(shù)啦(還記得內(nèi)建函數(shù)的知識(shí)嗎?見1.5)N[x,n]可以將x轉(zhuǎn)化為實(shí)數(shù),精度位數(shù)為n其中n可以省略,Rationalize[x,dx]將x轉(zhuǎn)化為有理數(shù),誤差小于dx
②、數(shù)的輸出:NumberForm[x,n]將x以n位精度的實(shí)數(shù)輸出,ScientificForm[x]將x以科學(xué)計(jì)數(shù)法的形式輸出
2、變量:變量名是字母和數(shù)字的組合,其中不能以數(shù)字開頭,a12是合法的變量名,12a是不合法的變量名(在說變量名能不能用的時(shí)候,通常會(huì)用“合法”,“不合法”來表示,合法即這個(gè)名稱可以作為變量名,反之則不行)。在有乘法存在的時(shí)候有些人會(huì)把乘法和函數(shù)名弄錯(cuò),如x=2;y=3;之后很多人會(huì)將xy理解成乘積,實(shí)際x*y才是乘積,xy只是一個(gè)新的你沒賦值過的變量。
①、變量的賦值:變量賦值用等號(hào)=來實(shí)現(xiàn),絕大多數(shù)編程語言都是,批量賦值可以用大括號(hào)加等號(hào){x,y}={1,2}這樣x,y就分別等于1或者2了。當(dāng)你不使用變量是可以給變量一個(gè)空值用x=.來實(shí)現(xiàn)
②、變量的替換:使用/.和->箭頭可以用來替換表達(dá)式中變量的數(shù)值(還記得什么是表達(dá)式么?看看1.2)執(zhí)行(還記得怎么執(zhí)行一個(gè)語句嗎?看看1.3①)f=2x只可以得到f=2x,再執(zhí)行f/.x->2就可以得到4,也就是將式子中的x用2替換。多變量的時(shí)候用f/.{x->1,y->2}來用值替換變量。
③、變量的刪除:Clear[]可以用于刪除一個(gè)變量,在Mathematic里面變量一旦定義就固定了,所以如果多次使用f這個(gè)字母可能出現(xiàn)問題,那么我們要定義新的f的時(shí)候就需要用Clear[f]將其刪除后再重新定義,這點(diǎn)很重要,尤其是在程序變量很多的時(shí)候
三、【函數(shù),表和邏輯表達(dá)式】
1、函數(shù)分為自定義函數(shù)和內(nèi)建函數(shù),這里再列舉幾個(gè)常見的內(nèi)建函數(shù),如Log[],Round[]四舍五入,Max[]取最大值,Exp[]指數(shù)函數(shù),Cos[]余弦。自定義函數(shù)的用法是f[x_]=表達(dá)式,如表達(dá)式可以是x^2,這里的自變量用x_表示,如果是多變量的函數(shù)就用f[x_,y_,z_]來表示。除了用等號(hào)來定義以外還可以用f[x_]:=表達(dá)式,即冒號(hào)加等號(hào)來定義函數(shù)叫做延遲定義,延遲定義的意思是你現(xiàn)在寫的只是一個(gè)式子,程序并不執(zhí)行,等到你第一次調(diào)用該函數(shù)的時(shí)候系統(tǒng)才會(huì)真正定義(如果你看不懂延遲定義的話不要緊因?yàn)椴恢匾?,你只要知道冒?hào)等號(hào):=的含義和等號(hào)=都是可以定義函數(shù)的就可以了)。
①、分段函數(shù)的定義:分段函數(shù)定義需要使用內(nèi)建函數(shù)If[],如x大于等于0時(shí)函數(shù)值等于x,函數(shù)值小于x時(shí)等于x^2,那么我們就應(yīng)該這樣書寫該函數(shù)f[x_]=If[x>=0,x=x,x=x ^2]。也可以用If實(shí)現(xiàn)多段函數(shù)的定義。
②、函數(shù)調(diào)用,調(diào)用函數(shù)時(shí),不需要像2.2.2那樣用替換實(shí)現(xiàn),只需要用f[1]就可以給自變量x賦值了
③、函數(shù)的顯示:為了直觀的展示函數(shù)的樣子我們用Plot[]繪圖功能對(duì)函數(shù)的樣子進(jìn)行展示,首先我們要定義一個(gè)函數(shù)或者是一個(gè)表達(dá)式,用法是Plot[f[x],{x,min,max}]即展示函數(shù)f,自變量為x,x的最小值為min最大值為max。(Plot還有很多高級(jí)的用法,比如為坐標(biāo)軸加標(biāo)注等等,可以繪制出很多漂亮的圖形以及三維的圖形,這里不詳細(xì)描述,有需要可以尋找其他資料詳細(xì)了解)。
2、表:將一些相互關(guān)聯(lián)的元素放在一起就是表,這并不是一個(gè)新的概念,2.2.1函數(shù)的賦值中{x,y}這樣的用法就是一個(gè)表,或者叫一個(gè)向量,也可以將表達(dá)式寫成一個(gè)表{x,x2,x3}針對(duì)表也有很多的操作,這里有個(gè)概念就可以了。
3、邏輯表達(dá)式:除了數(shù)字之外,還有一部分變量用來刻畫邏輯,如判斷兩個(gè)變量是否相等的時(shí)候用 == 兩個(gè)等號(hào)進(jìn)行判別,注意不要和賦值運(yùn)算混淆。常見的有x==y如果x和y相等則返回True,如果不相等則返回False,還有x!=y不等于,x>y大于,x>=y大于等于等等
四、【方程】
前面說了很多Mathematica的基礎(chǔ)用法,有人會(huì)說這些用法大部分的編程語言都能見到,那么接下來我們就通過方程來展示下Mathematica的優(yōu)越。
1、方程的表示:以上我們講到了= 賦值和 = = 判斷相等這兩個(gè)符號(hào)(看看3.3)因?yàn)榈忍?hào)是賦值的,而我們通常將方程看為一個(gè)恒等式,其意義和賦值有一定的區(qū)別,所以我們這里用 == 來表示方程的恒等關(guān)系,如定義方程:x^2+2x+1==0
2、方程的求解:解方程需要用到Mathematica的幾個(gè)內(nèi)建函數(shù),Slove[等式,{x}],Roots[等式,{x}],FindRoot[等式,{x,x0}],Mathematica總能對(duì)不高于4次的函數(shù)精確求解,其中Solve和Root用法相同,F(xiàn)indRoot針對(duì)解十分困難的方程時(shí),我們通過圖像大致知道解的范圍,那么我們指定x0,程序會(huì)尋找在x0附近的一個(gè)解。
3、解方程組,我們也可以用Solve解方程組的根,如Solve[{x+y= =0,x+2y= =6},{x,y}]
4、求方程組的通解,在有變量表達(dá)式的方程求解時(shí),Solve[]只能給出部分的解,為了得到各種情況的解我們用Reduce[]來實(shí)現(xiàn),這段話可能說的比較模糊,我們看下面的例子:
五、【微積分的常見操作】
.1、求極限:極限Limit[表達(dá)式,x->x0]表示當(dāng)x趨近于x0時(shí)表達(dá)式的極限,如何求x趨近于無限大時(shí)的極限呢?看看2.1。
2、求微分:微分使用內(nèi)建函數(shù)D[]實(shí)現(xiàn),求f關(guān)于x的微分用D[f,x]表示,求f關(guān)于x的n階微分用D[f,{x,n}]表示,求f關(guān)于x1,x2的雙重偏微分用D[f,x1,x2]表示(D[]的功能非常強(qiáng)大,你可以嘗試用此實(shí)現(xiàn)鏈?zhǔn)椒▌t求導(dǎo))當(dāng)f函數(shù)為單變量的時(shí)候求微分也就變成了求導(dǎo)數(shù),用Dt[]函數(shù),其效果和D[]一致
3、求積分:積分使用函數(shù)Integerate[]實(shí)現(xiàn),用法為Integrate[f,x]或者Integrate[f,{x,min,max}]前者計(jì)算函數(shù)f的不定積分,后者給出積分的上下限,計(jì)算函數(shù)的定積分。注意不是所有的函數(shù)都可以計(jì)算出不定積分或者定積分,也正因如此引出了數(shù)值積分的概念,數(shù)值積分使用指令NIntegrate[f,{x,min,max}]用數(shù)值計(jì)算的方法求得積分的近似值(這里開頭的兩個(gè)字母NI都是大寫)。如果說積分函數(shù)在給出的下限和上限之間有不連續(xù)的點(diǎn),那么我們需要將點(diǎn)補(bǔ)全
六、【微分方程的求解】
1、微分方程求解:微分方程的求解使用Dsolve[]來完成,其中導(dǎo)數(shù)使用跑撇號(hào)’表示,n階導(dǎo)數(shù)用n個(gè)’表示,如求解y關(guān)于x的微分方程DSolve[{微分方程},y[x],x]。求解微分方程組的時(shí)候使用DSolve[{微分方程1,微分方程2},{y[x],z[x]},x],求解帶有初始條件的微分方程組DSolve[{微分方程,初始條件1,初始條件2},y[x],x]。
2、微分方程的數(shù)值解:與積分一樣有的微分方程沒法給出準(zhǔn)確解,所以使用數(shù)值方法逼近,NDSolvep[{微分方程,初始條件},y,{x,min,max}]用這個(gè)方法可以求得微分方程的數(shù)值解,方法類似。
3、微分方程結(jié)果的展示:為了繪制微分方程我們需要用一個(gè)變量不如s表示問分方程的解,如:x關(guān)于y的微分方程s=DSolve[… …],之后使用Plot[y[x]/.s,{x,min,max}]