概念函數(shù)與變換規(guī)那么_第1頁
概念函數(shù)與變換規(guī)那么_第2頁
概念函數(shù)與變換規(guī)那么_第3頁
概念函數(shù)與變換規(guī)那么_第4頁
概念函數(shù)與變換規(guī)那么_第5頁
全文預覽已結(jié)束

下載本文檔

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

文檔簡介

1、第9章概念函數(shù)與變換規(guī)那么前面幾章所介紹的各種函數(shù)都是在Mathematics系統(tǒng)中給好定義、明確功能,提供給用戶直接調(diào)用的。但在實際問題中還有許多函數(shù)因為用戶特殊需要,而系統(tǒng)中沒有定義,在這種情況下需要由用戶自己來給出定義,以供后面使用的方便,這就是下面要介紹的自定義函數(shù)。自概念函數(shù)自概念一元函數(shù)自概念一元函數(shù)方式如下:fx_:=自選表達式例如/#:=24十3等,如果將此式同數(shù)學中常用的函數(shù)定義符號=2%+3相比較,容易看到二者間的差別。按照Mathematka的規(guī)定,應該將圓括號換為專用于函數(shù)的方括號,即/=2#+3,于是二者間的主要差別有二,一是自變量、丁與“力”的差別,二是定義符“:二

2、”與的差別°(D先看X與X功能上的不同(占位符,規(guī)那么變量,模式變量)【例1/f/=2%+3B;/>f3八2欠O一代表“運行后等于、相當于t+畀)五3b+2)5b/1,2,32+36,4+36,6+361gx六24+3b;gx-3b+2xg”f(*無定義,找不到與右端表達式相匹配的人原樣輸出*)(*無定義,同上*)g11,2,31fl,2,3U(*無定義,同上*)上面例子說明:自定義函數(shù)符號/4:=2x+36中的在x后面必須緊跟著加一個下劃線)同數(shù)學函數(shù)符號/Q)中*的功能基本上一樣,都是起著自變量的作用,在MathwUca里將,一稱為規(guī)則變量或模式變量,而力>中的與類似

3、于數(shù)學里的一個常量,即/U只代表/UJ在某一點的值。;工:=24+36中模式變量”.代表著一類重要的實體,它不僅可以取實數(shù),還可以取向量和矩陣,以及由/所規(guī)定的同右端表達式中與式一相匹配的任何結(jié)構(gòu)的量。(2)再看“二”與“:二”功能上的不同(當即賦值,延時賦值)它們的主要差別是:前者為立即賦值,后者為延時賦值,亦即使用“="號時,右邊表達式在定義時被立即賦值,而使用“:=”號時,右邊的表達式在定義時暫不賦值,直到被調(diào)用時才被賦值。請看下面的例子:【例2】clear/,g;x=2;J3-*4g3T上面例子說明Jt%=(2在定義時便被賦值x=2,在調(diào)用它時J3中的值已是好了,而gb=%”

4、在定義時暫時不賦值,直到調(diào)用時43才被賦值g3=32。在使用自定義函數(shù)時,要特別注意到它與數(shù)學中已經(jīng)習慣使用的函數(shù)符號共也在這兩點上的不同,以避免一些不必要錯誤的發(fā)生。例2中設(shè)置開頭語句clearlAg,是為了清除掉的面對/與g的所有定義,否則容易引起同例1中f,g的混淆,常用的消除函數(shù)有:.清除/%_的定義clear(/清除/的所有定義自概念多元函數(shù)自概念二元函數(shù)的一樣形式是fu_,v_:二自選表達式例如在第2章的2,5.3節(jié)參數(shù)式繪圖中,繪制螺旋面時我們曾引入了4=w*Cos.v;y=Siirv_9v_s=a*u+b1、共有3個自定義二元函數(shù)。這為我們繪制參數(shù)曲線面提供了很大的方便。類似的

5、還可以定義三元、四元以及更多元的自定義函數(shù)。例如從。一,上一,“:-a*Expl-K2*/2(*帶參數(shù)的概率函數(shù)ae-*)Sac_,%_:=a*4n-3*%+匕(*帶參數(shù)的簡諧運動函數(shù)”)Zhouer自概念函數(shù)的保留與從頭調(diào)出已經(jīng)自概念好的函數(shù),若是希望以后多次利用,這就需要妥帖保留與從頭調(diào)出,保留的方式如下:Save”文件名”,自概念函數(shù)名序列f,g,【例3】將函數(shù)/(%)=丁二保存到文件中。1+4/*_:=1/<1+%A2);Savefileln,/如果還有新的函數(shù)想要追加到文件fHel中,則有g(shù)uv_:=*2+tT2;Ka.,4r,y二:=a*Expi-(af2+/2);Save&

6、quot;fiLel”,g,/i*如果想要查看一下文件Glel中的內(nèi)容,有!file!/%_:=1/(142)=iT2”2無。_,笈一,y_:=a*Exp;(of2+,2)J保存在文件filel中名為f人九的函數(shù)如果要重新調(diào)用,方法如下:首先進入Mathematica,然后調(diào)出file文件,便可直接使用文件中的函數(shù)了0例如卅算幾l+gl,2的值有:In1:=«file)In2;=/11+gl,2Out=11/2Note:Save”文件名”,變量名1,變量名2,查看內(nèi)容:!文件名顯示已經(jīng)利用的全數(shù)變量:?Global'*純函數(shù)在Mathematica中還經(jīng)常使用到一種沒有函數(shù)名

7、字的函數(shù),這種特殊形式的函數(shù)稱為純函數(shù)。純函數(shù)的一樣形式Function自變量,函數(shù)表達式例如In1:=Function1%42+«;(*定義純函數(shù)/+4*)In2::Function*,H2+%2(*計算,+欠在力=2處的值*)Out=6In3:=FunctionD2+x*yl,2Out3=3純函數(shù)的縮寫形式上面純函數(shù)的一樣形式與通常函數(shù)的書寫形式相較還較麻煩,至少需要輸入更多的字符,若是采納函數(shù)的縮寫形式就會簡便得多,縮寫形式如下:函數(shù)表達式&式中用&代替了Function,省略了自變量,如果是一元函數(shù)自變量,用符號#表示,多元時則用#n表示第n個自變量。例如上面

8、例子的縮寫形式為:/二(曠2+#)&-2=6g=+#2。2-#1*#2)&屋1,21=3另外,符號期表示所有的自變量,掰n表示從第n個起往后的所有自變量。f#.#2&x,y,zfx,y,z,y,zEg.a=Range10;Selecta,Mod#,2=0&表達式求值與變換規(guī)那么表達式求值在Mathematica系統(tǒng)中,所有輸入的實體都可稱為表達式,系統(tǒng)對表達式的處置進程稱為求值進程,求值的結(jié)果可能是一個數(shù)值、一個圖形、一個表達式等等。求值的對象是表達式,求值的結(jié)果也是表達式,因此可將求值進程看做是從表達式到表達式的一種變換,或是一種映射。Mathematica對

9、表達式的處置系統(tǒng)是由一個求值系統(tǒng)和一個變換規(guī)那么庫組成。變換規(guī)那么庫通常由系統(tǒng)內(nèi)部已有的函數(shù)組成,用戶也可新建一些函數(shù)加入到規(guī)那么庫中。求值的進程是系統(tǒng)運用庫中的各類規(guī)那么對表達式進行變換,一直到庫中沒有變換規(guī)那么可利用為止。新取得的表達式確實是對原輸入表達式求值的結(jié)果。系統(tǒng)的求值能力那么是由變換規(guī)那么庫中有些什么規(guī)那么直接決定。下面先看一個簡單例子來講明一下表達式的求值進程:【例1】aJoint,lc|(*將-I。例I與I4連接起來*)Outll=Ia,6,c)上面表達式輸人并開始執(zhí)行后,系統(tǒng)在已有的變換規(guī)則庫里找到一條與Join有關(guān)的投則,然后進行相應的變換,毋后得到結(jié)果I。,C1并輸出。

10、【例2】In2:=3x=2;y=3;/»=+4;gy=7-1;=尢*yOut=9上面輸入的5個表達式,分別由用戶定義了5條變換規(guī)則,系統(tǒng)將按照用戶的這些規(guī)則迸行變換,得到結(jié)果(數(shù)值9)后并輸出°系統(tǒng)剛啟動時,用戶定義的規(guī)則集合為空,規(guī)則庫里只有系統(tǒng)內(nèi)部的規(guī)則,接著用戶定義的變換規(guī)則也將被加入到規(guī)則庫中,用戶在使用時不會感到系統(tǒng)規(guī)則與用戶規(guī)則有什么根本的區(qū)別。變換規(guī)那么變換規(guī)那么可分為自動利用的規(guī)那么與非自動利用的規(guī)那么兩類。(1)自動利用的規(guī)那么由上述內(nèi)容知道,時表達式的求值過程就是系統(tǒng)對表達式進行一系列的使用變換規(guī)則的過程,系統(tǒng)原有的變換規(guī)則與用戶新建的變換規(guī)則(函數(shù)或表

11、達式)均被存入系統(tǒng)的規(guī)則庫里,在求值時系統(tǒng)將會自動查閱與使用。其中用“="與'=”號定義的規(guī)則都閾于這一類,可稱之為自動使用的規(guī)則,比如在前面表達式求值中所舉的例1、例2就是這樣的例子。(2)非自動利用的規(guī)那么非自動使用的規(guī)則不能放入系統(tǒng)的規(guī)則庫中,求值系統(tǒng)無法找到它們,因而系統(tǒng)不能自動使用,要由用戶來說明這些規(guī)則,并要求它們做某些變換時,這些規(guī)則才能對表達式發(fā)揮作用。在數(shù)學里有許多用等式描述的演算規(guī)則,它們經(jīng)常從兩個不同的方向被人們使用,例如一一1=(%十)(%-1),根據(jù)不同的需要,可以要求它從左到右展開,也可以要求它從右到左合并,像這樣的演算規(guī)則就應該放人非自動使用的規(guī)則中。因為在定義自動使用規(guī)則時,總是依照一個方向來考慮和進行變換的.Eg.2x"y/.x->2,y->3帶有條件的規(guī)那么在延時賦值號“:=”與“:”號定義的變換規(guī)則中,還可附加條件,它們定義的形式如V:模式:二表達式/;條件;模式:>表達式/;條件其中/;是附加條件用的操作符?!纠?】利用帶條件的規(guī)則定義階乘函數(shù):討。/0=1;/._:=n*/n-1/;Integer9LnJ&題>0其中附加條件的內(nèi)容是當為整數(shù)時其值為真;

溫馨提示

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

評論

0/150

提交評論