版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
附錄 附錄附錄PAGEPAGE2PAGEPAGE3MATLAB
附錄AMATLAB用法簡介A.1MATLAB簡介是美國MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于數(shù)據(jù)分析、無線通信、深度學(xué)習(xí)、圖像處理與計算機(jī)視覺、信號處理、量化金融與風(fēng)險管理、機(jī)器人,控制系統(tǒng)等領(lǐng)域。MATLAB是matrix&laboratory兩個詞的組合,意為矩陣工廠矩陣實驗室語言如C、MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計算方面首屈一指。行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等。MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點,使MAT?LAB成為一個強(qiáng)大的數(shù)學(xué)軟件。在新的版本中也加入了對C,F(xiàn)ORTRAN,C++,JAVA的支持。編程環(huán)境MATLAB由一系列工具組成。這些工具方便用戶使用MATLAB的函數(shù)和文件,其中許多工具采用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調(diào)試器、路徑搜索和用于用戶瀏覽幫助、工作空間、文件的瀏覽器。隨著MATLAB的商業(yè)化以及軟件本身的不斷升級,MATLAB的用戶界面也越來越精致,更加接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性更強(qiáng),操作更簡單。而且新版本的MATLAB提供了完整的聯(lián)機(jī)查詢、幫助系統(tǒng),極大的方便了用戶的使用。簡單的編程環(huán)境提供了比較完備的調(diào)試系統(tǒng),程序不必經(jīng)過編譯就可以直接運(yùn)行,而且能夠及時地報告出現(xiàn)的錯誤及進(jìn)行出錯原因分析。簡單易用MATLAB是一個高級的矩陣/陣列語言,它包含控制語句、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入和輸出和面向?qū)ο缶幊烫攸c。用戶可以在命令窗口中將輸入語句與執(zhí)行命令同步,也可以先編寫好一個較大的復(fù)雜的應(yīng)用程序)后再一起運(yùn)行。新版本的MAT?LAB語言是基于最為流行的C++語言基礎(chǔ)上的,因此語法特征與C++語言極為相似,而且更加簡單,更加符合科技人員對數(shù)學(xué)表達(dá)式的書寫格式。使之更利于非計算機(jī)專業(yè)的科技人員使用。而且這種語言可移植性好、可拓展性極強(qiáng),這也是MATLAB能夠深入到科學(xué)研究及工程計算各個領(lǐng)域的重要原因。強(qiáng)大處理MATLAB是一個包含大量計算算法的集合。其擁有600多個工程中要用到的數(shù)學(xué)運(yùn)算函數(shù),可以方便的實現(xiàn)用戶所需的各種計算功能。函數(shù)中所使用的算法都是科研和工程計算中的最新研究成果,而且經(jīng)過了各種優(yōu)化和容錯處理。在通常情況下,可以用它來代替底層編程語言,如C和C++。在計算要求相同的情況下,使用MATLAB的編程工作量會大大減少。MATLAB的這些函數(shù)集包括從最簡單最基本的函數(shù)到諸如矩陣,特征向量、快速傅立葉變換的復(fù)雜函數(shù)。函數(shù)所能解決的問題其大致包括矩陣運(yùn)算和線性方程組的求解、微分方程及偏微分方程的組的求解、符號運(yùn)算、傅立葉變換和數(shù)據(jù)的統(tǒng)計分析、工程中的優(yōu)化問題、稀疏矩陣運(yùn)算、復(fù)數(shù)的各種運(yùn)算、三角函數(shù)和其他初等數(shù)學(xué)運(yùn)算、多維數(shù)組操作以及建模動態(tài)仿真等。圖形處理MATLAB自產(chǎn)生之日起就具有方便的數(shù)據(jù)可視化功能,以將向量和矩陣用圖形表現(xiàn)出來,并且可以對圖形進(jìn)行標(biāo)注和打印。高層次的作圖包括二維和三維的可視化、圖象處理、動畫和表達(dá)式作圖??捎糜诳茖W(xué)計算和工程繪圖。新版本的MATLAB對整個圖形處理功能作了很大的改進(jìn)和完善,使它不僅在一般數(shù)據(jù)可視化軟件都具有的功例如二維曲線和三維曲面的繪制和處理等)件所沒有的功能例如圖形的光照處理、色度處理以及四維數(shù)據(jù)的表現(xiàn)等同樣表現(xiàn)了出色的處理能力。同時對一些特殊的可視化要求,例如圖形對話等,MAT?LAB也有相應(yīng)的功能函數(shù),保證了用戶不同層次的要求。另外新版本的MATLAB還著重在圖形用戶界面(GUI)的制作上作了很大的改善,對這方面有特殊要求的用戶也可以得到滿足。模塊工具M(jìn)ATLAB對許多專門的領(lǐng)域都開發(fā)了功能強(qiáng)大的模塊集和工具箱。一般來說,它們都是由特定領(lǐng)域的專家開發(fā)的,用戶可以直接使用工具箱學(xué)習(xí)、應(yīng)用和評估不同的方法而不需要自己編寫代碼。諸如數(shù)據(jù)采集、數(shù)據(jù)庫接口、概率統(tǒng)計、樣條擬合、優(yōu)化算法、偏微分方程求解、神經(jīng)網(wǎng)絡(luò)、小波分析、信號處理、圖像處理、系統(tǒng)辨識、控制系統(tǒng)設(shè)計、LMI控制、魯棒控制、模型預(yù)測、模糊邏輯、金融分析、地圖工具、非線性控制設(shè)計、實時快速原型及半物理仿真、嵌入式系統(tǒng)開發(fā)、定點仿真、DSP與通訊、電力系統(tǒng)仿真等領(lǐng)域,都在工具箱(Toolbox)家族中有了自己的一席之地。程序接口新版本的MATLAB可以利用MATLAB編譯器和C/C++數(shù)學(xué)庫和圖形庫,將自己的MATLAB程序自動轉(zhuǎn)換為獨立于MATLAB運(yùn)行的C和C++代碼。允許用戶編寫可以和MATLAB進(jìn)行交互的C或C++語言程序。另外,MATLAB網(wǎng)頁服務(wù)程序還容許在Web應(yīng)用中使用自己的MATLAB數(shù)學(xué)和圖形程序。MATLAB的一個重要特色就是具有一套程序擴(kuò)展系統(tǒng)和一組稱之為工具箱的特殊應(yīng)用子程序。工具箱是MATLAB函數(shù)的子程序庫,每一個工具箱都是為某一類學(xué)科專業(yè)和應(yīng)用而定制的,主要包括信號處理、控制系統(tǒng)、神經(jīng)網(wǎng)絡(luò)、模糊邏輯、小波分析和系統(tǒng)仿真等方面的應(yīng)用。軟件開發(fā)在開發(fā)環(huán)境中,使用戶更方便地控制多個文件和圖形窗口;在編程方面支持了函數(shù)嵌套,有條件中斷等;在圖形化方面,有了更強(qiáng)大的圖形標(biāo)注和處理功能,包括對性對起連接注釋等;在輸入輸出方面,可以直接向Excel和HDF5進(jìn)行連接。應(yīng)用方面MATLAB產(chǎn)品族可以用來進(jìn)行以下各種工作:數(shù)值分析數(shù)值和符號計算工程與科學(xué)繪圖控制系統(tǒng)的設(shè)計與仿真數(shù)字圖像處理技術(shù)數(shù)字信號處理技術(shù)通訊系統(tǒng)設(shè)計與仿真財務(wù)與金融工程管理與調(diào)度優(yōu)化計算)MATLAB的應(yīng)用范圍非常廣,包括信號和圖像處理、通訊、控制系統(tǒng)設(shè)計、測試和測量、財務(wù)建模和分析以及計算生物學(xué)等眾多應(yīng)用領(lǐng)域。附加的工具箱單獨提供的專用MATLAB函數(shù)集)MATLAB環(huán)境,以解決這些應(yīng)用領(lǐng)域內(nèi)特定類型的問題。A.2MATLAB的工作界面這里主要介紹初學(xué)者在使用MATLAB時需要經(jīng)常打交道的幾個界面窗口。主窗口(MATLAB)MATLAB2018a的默認(rèn)工作界面(見圖1)上方有“主頁”、“繪圖”和“APP”三個標(biāo)簽頁,每個標(biāo)簽頁下方由多個快捷按鈕組成。下方有3個窗口,分別是“當(dāng)前文件夾”、“命令行窗口”、“工作區(qū)”。它們是主窗口、命令窗口、命令歷史記錄窗口、當(dāng)前目錄窗口、工作窗口、幫助窗口和評述器窗口。以下簡要說明各主要窗口的功能。圖1MATLAB的工作界面MATLAB2018a命令窗口是主要工作窗口之一。當(dāng)MATLAB啟動完成,命令窗口顯示以后,窗口處于準(zhǔn)備編輯狀態(tài)。符號“>>”為運(yùn)算提示符,說明系統(tǒng)處于準(zhǔn)備狀態(tài)。當(dāng)用戶在提示符后輸入表達(dá)式按回車鍵之后,系統(tǒng)將給出運(yùn)算結(jié)果,然后繼續(xù)處于系統(tǒng)準(zhǔn)備狀態(tài)。在命令窗口內(nèi)單擊鼠標(biāo)右鍵,可以彈出對命令窗口內(nèi)容進(jìn)行各種操作的命令菜單。圖2MATLAB命令窗口命令歷史記錄窗口見圖。在默認(rèn)情況下,命令歷史記錄窗口會保留自安裝以來所有用過的命令的歷史記錄,并詳細(xì)記錄了命令使用的日期和時間,為用戶提供了所使用的命令的詳細(xì)查詢,所有保留的命令都可以單擊后執(zhí)行。調(diào)出歷史命令窗口的方法是在命令窗口輸入狀態(tài)下,單擊鍵盤上向上的箭頭鍵“△”調(diào)出,從中選擇所需命令后按回車鍵或者雙擊鼠標(biāo)左鍵執(zhí)行。圖3命令歷史記錄窗口當(dāng)前目錄窗口(見圖4)的主要功能是顯示或改變當(dāng)前目錄,可以顯示當(dāng)前目錄下的文件,通過上面的目錄選擇下拉菜單,用戶可以輕松地選擇目標(biāo)目錄,還可以提供搜索。單擊右側(cè)的按鈕,可以打開路徑選擇對話框,在這里用戶可以設(shè)置和添加路徑。也可以通過上面一行超鏈接來改變路徑。圖4當(dāng)前目錄窗口工作空間窗口圖是MATLAB的一個重要組成部分。該窗口的顯示功能有顯示目前內(nèi)存中存放的變量名、變量存儲數(shù)據(jù)的維數(shù)、變量存儲的字節(jié)數(shù)、變量類型說明等。雙擊工作空間內(nèi)某個變量,可以打開變量內(nèi)容,以表格形式顯示。在工作空間內(nèi)單擊鼠標(biāo)右鍵,可以彈出對工作空間進(jìn)行操作的命令菜單。實時腳本窗口
圖5工作空間窗口實時腳本窗口是MATLAB見圖。在MATLAB主頁標(biāo)簽下面,單擊“新建實時腳本”快捷按鈕,打開實時腳本編輯窗口,可在窗口編輯順序命令語句流形)按鈕執(zhí)行程序代碼。在實時腳本編輯器代碼右側(cè)區(qū)域可以顯示程序執(zhí)行結(jié)果。在實時編輯器窗口內(nèi)單擊鼠標(biāo)右鍵,可以彈出編輯相關(guān)操作的命令菜單。實時編輯器窗口的程序可以以“mlx”后綴名保存為程序文件。編輯器窗口
圖6實時編輯器窗口在MATLAB主頁標(biāo)簽下面,單擊“新建腳本”快捷按鈕,打開腳本程序編輯窗口見圖,可在窗口編輯順序命令語句流,編輯完成后,可在上方“編輯器”標(biāo)簽下,單擊綠色三角形運(yùn)行按鈕執(zhí)行程序代碼,執(zhí)行結(jié)果在命令窗口顯示,繪制的圖形在彈出的圖形窗口呈現(xiàn)。在編輯器窗口內(nèi)單擊鼠標(biāo)右鍵,可以彈出對編輯操作相關(guān)的命令菜單。腳本編輯器窗口的程序可以以“m”后綴名保存為程序文件。圖形顯示與控制窗口
圖7編輯器窗口命令窗口或腳本編輯器內(nèi)的程序如果有繪圖指令,則程序執(zhí)行后會彈出圖形顯示與控制窗口見圖,在其中顯示程序所繪制的圖形,并可通過菜單項或者快捷工具對圖形進(jìn)行操作和控制。
圖8圖形顯示與控制窗口MATLAB2018a見圖中心。MATLAB的幫助系統(tǒng)主要包括三大系統(tǒng):聯(lián)機(jī)幫助系統(tǒng)、聯(lián)機(jī)演示系統(tǒng)、遠(yuǎn)程幫助系統(tǒng)和命令查詢系統(tǒng),用戶可根據(jù)需要選擇任何一個幫助系統(tǒng)尋求幫助。PAGEPAGE10PAGEPAGE11圖9幫助窗A.3MATLAB的基本命令與基本函數(shù)基本的系統(tǒng)命令typeMATLAB基本的系統(tǒng)命令不多,常用的有exit/quit、load、save、diary、type/db?type、what/dir/ls、cd、pwd、path等,各命令功能如表1。表1MATLAB系統(tǒng)基本命令表命令字功能exit/quit退出MATLABcd改變當(dāng)前目錄pwd顯示當(dāng)前目錄path顯示并設(shè)置當(dāng)前路徑what/dir/ls列出當(dāng)前目錄中文件清單type/dbtype顯示文件內(nèi)容load在文件中裝載工作區(qū)save將工作區(qū)保存到文件中diary文本記錄命令!后面跟操作系統(tǒng)命令iskeyword顯示MATLAB中的關(guān)鍵字工作區(qū)和變量的基本命令MATLAB工作區(qū)和變量的基本命令及功能見表2。表2MATLAB工作區(qū)和變量命令命令或符號功能或意義clear清除所有變量并恢復(fù)除eps外的所有預(yù)定義變量。sym/syms定義符號變量,sym一次只能定義一個變量,syms一次可以定義一個或多個變量。who顯示當(dāng)前內(nèi)存變量列表,只顯示內(nèi)存變量名。whos顯示當(dāng)前內(nèi)存變量詳細(xì)信息,包括變量名、大小、所占用二進(jìn)制位數(shù)whos顯示當(dāng)前內(nèi)存變量詳細(xì)信息,包括變量名、大小、所占用二進(jìn)制位數(shù)size/length顯示矩陣或向量的大小命令。pack重構(gòu)工作區(qū)命令。format輸出格式命令casesen切換字母大小寫命令which+<函數(shù)名>查詢給定函數(shù)的路徑。exist(‘變量名/函數(shù)名’)查詢變量或函數(shù),返回0,表示查詢內(nèi)容不存在;返回1,表示查詢內(nèi)容在當(dāng)前工作空間;返回2,表示查詢內(nèi)容在MATLAB搜索路徑中的M文件;返回3,表示查詢內(nèi)容在MATLAB搜索路徑中的MEX文件;返回4,表示查詢內(nèi)容在MATLAB搜索路徑的MDL文件;返回5,表示查詢內(nèi)容是MATLAB的內(nèi)部函數(shù);返回6,表示查詢內(nèi)容在MATLAB搜索路徑中的P文件;返回7,表示查詢內(nèi)容是一個目錄;返回8,表示查詢內(nèi)容是一個Java類。MATLAB中的預(yù)定義變量MATLAB中有很多預(yù)定義變量,這些變量都是在MATLAB啟動以后就已經(jīng)定義好了的,它們都具有特定的意義。詳細(xì)情況見表3。表3MATLAB預(yù)定義變量表變量名預(yù)定義ans分配最新計算的而又沒有給定名稱的表達(dá)式的值。當(dāng)在命令窗口中輸入表達(dá)式而不賦值給任何變量時,在命令窗口中會自動創(chuàng)建變量ans,并將表達(dá)式的運(yùn)算結(jié)果賦給該變量。但是變量ans僅保留最近一次的計算結(jié)果。續(xù)表變量名預(yù)定義eps返回機(jī)器精度,定義了1與最接近可代表的浮點數(shù)之間的差,為2.2204e-016。在一些命令中也用作偏差??芍匦露x,但不能由clear命令恢復(fù)。realmax返回計算機(jī)能處理的最大浮點數(shù)為1.7977e+308。realmin返回計算機(jī)能處理的最小的非零浮點數(shù)為2.2251e-308pi即π,若eps足夠小,則用16位十進(jìn)制數(shù)表達(dá)其精度。inf1定義為0,即當(dāng)分母或除數(shù)為0時返回inf,不中斷執(zhí)行而繼續(xù)運(yùn)算。nan0 定義為“notanumber0或i/j定義為虛數(shù)單位 1??梢詾镮和j定義其它值但不再是預(yù)定義常數(shù)。nargin給出一個函數(shù)調(diào)用過程中輸入自變量的個數(shù)。nargout給出一個函數(shù)調(diào)用過程中輸入自變量的個數(shù)。computer給出本臺計算機(jī)的基本信息,如pcwin。version給出MATLAB的版本信息。算術(shù)表達(dá)式和基本數(shù)學(xué)函數(shù)MATLAB的算術(shù)表達(dá)式由字母或數(shù)字用運(yùn)算符號聯(lián)結(jié)而成,十進(jìn)制數(shù)字有時也可以使用科學(xué)記數(shù)法來書寫,如2.71E+3表示2.71×103,3.86E-6表示3.86×10-6。MATLAB的四則運(yùn)算符有:+加 - 減* 乘 .* 兩矩陣的點乘元素對元素乘)/ 右除正常除) \ 左除./點右除矩陣元素對元素的除).\ 點左除矩陣元素對元素左除)^乘方 .^ 點冪矩陣中每個元素取冪運(yùn))a例如:a^3/b+c表示a3÷b+c或,a^2\(b-c)÷a2bc,A.*B表示矩陣aA與B的點乘(條件是A與B必須具有相同的維數(shù)),即A與B2素相乘。A*B表示元矩陣A與B的正常乘法條件是A的列數(shù)必須等于B。a3cb==
MATLAB的關(guān)系運(yùn)算符有六個:< 小于 <= 小于等于> 大于 >= 大于等于等于 ~= 不等于>=3ab3,a~=2a2。MATLAB的邏輯運(yùn)算符有:&、|、~、&&、||)注意,標(biāo)量和標(biāo)量之間的“與”用“&&||MATLAB的數(shù)學(xué)函數(shù)很多,可以說涵蓋了幾乎所有的數(shù)學(xué)領(lǐng)域。下表列出的僅是最簡單最常用的見表。表4MATLAB常用數(shù)學(xué)函數(shù)函數(shù)數(shù)學(xué)含義函數(shù)數(shù)學(xué)含義abs(x)求x的絕對值,即|x|,若x是復(fù)數(shù),即求x的模csc(x)求x的余割函數(shù),x為弧度sign(x)求x的符號,x為正得1,x為負(fù)得-1,x為零得0asin(x)求x的反正弦函數(shù)sin-1xsqrt(x)求x的平方根xacos(x)求x的反余弦函數(shù)cos-1xexp(x)求x的指數(shù)函數(shù)exatan(x)求x的反正切函數(shù)tan-1xlog(x)求x的自然對數(shù)lnxacot(x)求x的反余切函數(shù)cot-1xlog10(x)求x的常用對數(shù)lgxasec(x)求x的反正割函數(shù)sec-1xlog2(x)求x的以2為底的對數(shù)log2xacsc(x)求x的反余割函數(shù)csc-1xsin(x)求x的正弦函數(shù),x為弧度round(x)求最接近x的整數(shù)。cos(x)求x的余弦函數(shù),x為弧度rem(x,y)求整除x/y的余數(shù)。tan(x)求x的正切函數(shù),x為弧度real(z)求復(fù)數(shù)z的實部。cot(x)求x的余切函數(shù),x為弧度imag(z)求復(fù)數(shù)z的虛部。iec(x)求x的正割函數(shù),x為弧度conj(z)求復(fù)數(shù)z的共軛,即求z數(shù)值的輸出格式在MATLAB中,數(shù)值的屏幕輸出通常以不帶小數(shù)的整數(shù)格式或帶4位小數(shù)的浮點格式輸出結(jié)果。如果輸出結(jié)果中所有數(shù)值都是整數(shù),則以整數(shù)格式輸出;如果結(jié)果中有一個或多個元素是非整數(shù),則以浮點數(shù)格式輸出結(jié)果。MATLAB的運(yùn)算總是以所能達(dá)到的最高精度計算,輸出格式不會影響計算的精度,一般為32位小數(shù)。使用命令format可以改變屏幕輸出的格式,也可以通過命令窗口的下拉菜單來改變。有關(guān)format命令格式及其它有關(guān)的屏幕輸出命令列于表5。表5數(shù)值輸出格式命令命令及格式說明formatshot以4位小數(shù)的浮點格式輸出。formatlong以14位小數(shù)的浮點格式輸出。formatshorte以4位小數(shù)加e+000的浮點格式輸出。formatlonge以15位小數(shù)加e+000的浮點格式輸出。formathex以16進(jìn)制格式輸出。format+提取數(shù)值的符號。formatbank以銀行格式輸出,即只保留2位小數(shù)。formatrat以有理數(shù)格式輸出。moreon/off屏幕顯示控制。moreon表示滿屏停止,等待鍵盤輸入;moreoff表示不考慮窗口一次性輸出。more(n)如果輸出多于n行,則只顯示n行。時間和日期格式MATLAB可以告訴你有關(guān)時間和日期的有關(guān)信息,不僅可以顯示當(dāng)前的日期和時間,而且可以計算時間間隔,與flops一起使用,可以分析一種算法的是否迅速有效。有關(guān)時間和日期的操作命令和函數(shù)列于表6。表6時間和日期操作命令與函數(shù)說明tic啟動一個記時器。toc顯示記時以來的時間。如果計時器沒有啟動則顯示0。clock顯示表示日期和時間的具有6個元素的向量,依次為yyyy00mm00dd00hh00mm00ss,前五個元素是整數(shù),第六個元素是小數(shù)。etime(t1,t2)計算從t1到t2時間間隔所經(jīng)過的時間,以秒計。t1、t2分別是表過日期和時間的向量。cputime顯示自MATLAB啟動以來CPU運(yùn)行的時間。date顯示以dd-mm-yyyy格式的當(dāng)前日期。calendar(yyyy,mm)顯示當(dāng)年當(dāng)月按6×7矩陣排列的日歷。datenum(yyyy,mm,dd)顯示當(dāng)年當(dāng)月當(dāng)日的序列數(shù),從公元0000年1月1日起算。datestr(d,form)顯示序列數(shù)d表示的form表示形式的日期。form參數(shù)從0-18共19個整數(shù),各代表0:dd-mmm-yyyy,1:dd-mmm-yyyy,2:mm/dd/yy,3:mmm(月的前三個字母),4:m(月的首寫字母),5:m#(月分的阿拉伯?dāng)?shù)字),6:mm/dd,7:dd,8:ddd(顯示星期),9:d(顯示星期的大寫),10:yyyy,11:yy,12:mmmyy,13:HH:MM:SS,14:HH:MM:SSPM,15:HH:MM,16:HH:MMPM,17:QQ-YY,18:QQ(幾刻鐘)datetick(axis,form)用于在坐標(biāo)軸上寫數(shù)據(jù)。datevec(d)將日期序列數(shù)d顯示為日期yyyymmdd形式。續(xù)表命令與函數(shù)說明eomday(yyyy,mm)顯示當(dāng)年當(dāng)月的天數(shù)。now顯示當(dāng)天當(dāng)時的序列數(shù)。[daynr,dayname]=weekday(day)顯示參數(shù)day的星期數(shù)。daynr表示星期的數(shù)字,dayname表示星期的前三個字母。參數(shù)day是字符型或序列型日期。2022101日的序列數(shù)和當(dāng)月的月歷?!窘狻枯斎胍韵翸ATLAB指令:clock %顯示當(dāng)前日期和時間向量datenum(2022,08,22) %顯示2022,08,22的序列數(shù)calendar(2022,10) %顯示2022年10月的月歷【例2】顯示日期序列數(shù)為738755的日期?!枯斎胍韵翸ATLAB指令:datestr(738755,1) %使用datestr函數(shù)datevec(738755) %使用datevec函數(shù)[daynr,dayname]=weekday(738755)%使用weekday函數(shù)取整命令及相關(guān)命令MATLAB中有多種取整命令,連同相關(guān)命令列于表7。表7取整命令及相關(guān)命令命令格式說明round(x)求最接近x的整數(shù)。如果x是向量,用于所有分量。fix(x)求最接近0的x的整數(shù)。floor(x)求小于或等于x的最接近的整數(shù)。ceil(x)求大于或等于x的最接近的整數(shù)。rem(x,y)求整除x/y的余數(shù)。gcd(x,y)求整數(shù)x和y的最大公因子。[g,c,d]=gcd(x,y)求g,c,d使之滿足g=xc+yd.lcm(x,y)求正整數(shù)x和y最小公倍數(shù)。[t,n]=rat(x)求由有理數(shù)t/n確定的x的近似值。這里t和n都是整數(shù),相對誤差小于10-6。[t,n]=rat(x,tol)求由有理數(shù)t/n確定的x的近似值。這里t和n都是整數(shù),相對誤差小于tol。rat(x)求x的連續(xù)的分?jǐn)?shù)表達(dá)式。rat(x,tol)求帶相對誤差tol的x的連續(xù)的分?jǐn)?shù)表達(dá)式。【例3】采用不同的命令求常數(shù)3.9801的整數(shù)。【解】輸入以下MATLAB指令,x=3.9801; %輸入x的數(shù)值round(x) %使用round函數(shù)fix(x) %使用fix函數(shù)floor(x) %使用floor函數(shù)ceil(x) %使用ceil函數(shù)x=36,y=4求x、y的最大公因子和最小公倍數(shù)。【解】輸入以下MATLAB指令,x=36;y=4; %輸入數(shù)值x、yrem(x,y) %求x/y整除后的余數(shù)gcd(x,y) %求x、y的最大公因子lcm(x,y) %求x、y的最小公倍數(shù)m文件像其他一些高級計算機(jī)語言一樣,MATLAB也可以通過編程來完成特定的工作。MATLAB的程序總是保存成后綴名為.m的文件,通常稱為m文件。依照m文件的內(nèi)容可把m文件分為兩類:一類是命令流m文件,另一類是函數(shù)m文件。第一類:命令流m文件,沒有特定的程序格式,只是把完成工作所需要的一系列MATLAB命令依次編輯到m文件中,運(yùn)行該文件從而使文件中的MATLAB命令序列得到執(zhí)行。第二類:函數(shù)m文件,由于MATLAB的內(nèi)部函數(shù)是有限的,是為了計算某個函數(shù)或研究函數(shù)各種性態(tài)而編寫的具有特定格式的用戶自定義函數(shù)文件。注意:函數(shù)m文件必須是保存成與函數(shù)名同名且后綴名為.m的文件,這類文件的第一行必須是一以標(biāo)識符function開始,格式為:function因變量名=函數(shù)名(自變量名)%這里可以寫有關(guān)于該函數(shù)的注釋說明文字%接下來編寫實現(xiàn)函數(shù)功能的MATLAB語句函數(shù)值必須通過函數(shù)中設(shè)定的具體的運(yùn)算完成,最后把計算結(jié)果賦值給因變量。函數(shù)m文件一經(jīng)建立,就可像使用MATLAB系統(tǒng)定義的函數(shù)一樣使用它。m文件建立方法:在MATLAB在編輯窗口中輸入程序內(nèi)容;點擊保存按鈕,保存文件到MATLAB可以搜索到的某一路徑中,函數(shù)m文件名必須與函數(shù)名一致,命令流m文件可以自由取名。但要注意不要以數(shù)字開頭,也不能用漢字和中文標(biāo)點符號,不要與系統(tǒng)函數(shù)或保留字同名,并且符合Windows的文件名要求。例如:定義函數(shù)f(x1x2)=100(x2-x1)2+(1-x1)2,步驟:在編輯窗口建立m文件:fun.mfunctionf=fun(x)f=100*(x(2)-x(1)^2)^2+(1-x(1))^2;可以直接使用函數(shù)fun.m例如,現(xiàn)在需要計算f(1,2),只需在MATLAB命令窗口鍵入命令:x=[12]fun(x)基本賦值與運(yùn)算利用MATLAB可以做任何簡單運(yùn)算和復(fù)雜運(yùn)算,可以直接進(jìn)行算術(shù)運(yùn)算,也可以利用MATLAB定義的函數(shù)進(jìn)行運(yùn)算;可以進(jìn)行向量運(yùn)算,也可以進(jìn)行矩陣或張量運(yùn)算。這里只介紹最簡單的算術(shù)運(yùn)算、基本的賦值與運(yùn)算。簡單數(shù)學(xué)計算一般的簡單數(shù)學(xué)運(yùn)算可以在實時編輯器或者命令窗口直接鍵入后運(yùn)行。以命令窗口方式為例說明如下。在命令窗口或?qū)崟r腳本編輯窗口鍵入:3721+7428/24 %直接進(jìn)行表達(dá)式計算abs(-27) %求-27的絕對值sin(29) %求29的正弦值在同一行上可以有多條命令,中間必須用逗號分開,例如:3^46^3*(3+2) %一行輸入多個表達(dá)式簡單賦值運(yùn)算MATLAB中的變量用于存放所賦的值和運(yùn)算結(jié)果,有全局變量與局部變量之分。一個變量如果沒有被賦值,MATLAB將結(jié)果存放到預(yù)定義變量ans之中。x=18 %將18賦值給變量xy=3*x^2-78 %將3*x^2-78賦值給變量yu=x+y; %將x+y賦值給變量uv=x-y; %將x-y賦值給變量vtan(2*u/3*v) %求tan(2*u/3*v)的值這里命令行尾的分號的作用是MATLAB的執(zhí)行賦值命令后在命令窗口或者實時編輯器窗口上不顯示計算結(jié)果。當(dāng)用戶不需要計算機(jī)回顯信息時,常在命令行結(jié)尾加上分號。向量或矩陣的賦值和運(yùn)算一般MATLAB的變量多指向量或矩陣,向量或矩陣的賦值方式是:變量名=[變量值]如果變量值是一個向量,數(shù)字與數(shù)字之間用空格隔開;如果變量值是一個矩陣,同一行的數(shù)字間用空格或者逗號隔開,行與行之間用分號隔開。例如一個行向量A=(1,2,3,4,5)的輸入方法是:A=[12345] %定義向量A13B34一個列向量的輸入方法是:B=[1;2;3;4] %定義向量B一個3×4維矩陣的輸入方法是:3 0C1 3 3
215 28 7C=[3021;-1452;3587] %定義矩陣C函數(shù)可以用于向量或矩陣操作。如輸入:sqrt(A) %求向量A的平方根向量sin(B) %求B的正弦向量C' %求矩陣C的轉(zhuǎn)置矩陣在MATLAB中,可使用who命令顯示變量列表,用clear命令清除所有變量。who %查看當(dāng)前變量clear %清除當(dāng)前所有變量另外,向量也可以通過元素操作運(yùn)算符來生成,矩陣再通過向量來生成。如要創(chuàng)建如下3個向量:A1依次鍵入下列命令即可:A1=[0:2:10] %定義向量A1A2=[1:6] %定義向量A2A3=[0.5:0.5:3] %定義向量A3對向量A2進(jìn)行函數(shù)sqrt和sin操作,生成B1和B2兩個向量,最后創(chuàng)建由這3個行向量組成的3×6矩陣C。創(chuàng)建的方法是:B1=sqrt(A2) %求向量A2中各元素的算術(shù)平方根B2=sin(A2) %求向量A2中各元素的正弦值C=[A2;B1;B2]還可以對矩陣進(jìn)行數(shù)乘等運(yùn)算。C1=3*C %對矩陣進(jìn)行數(shù)乘等運(yùn)算C2=C1-C/2 %矩陣的減法運(yùn)算14410
3 698 925 det
如有一個方陣Matr_A=,現(xiàn)在求它的行列式、逆矩陣。求方陣行列式的操作命令為,求非奇異方陣的逆矩陣的操作函數(shù)為inv。輸入命令如下:A=[136;489;102578] %定義方矩陣Adet(A) %計算方矩陣A的行列式AN=inv(A) %計算方陣A的逆矩陣?yán)L制圖形圖形窗口及其操作MATLAB中不僅有用于輸入各種命令和操作語句的命令窗口,而且有專門用于顯示圖形和對圖形進(jìn)行操作的圖形窗口。圖形窗口的操作可以在命令窗口輸入相應(yīng)命令對其進(jìn)行操作,也可以直接在圖形窗口利用圖形窗口的本身所帶的工具按鈕、相關(guān)的菜單對其進(jìn)行操作。下面將介紹一些對圖形窗口進(jìn)行基本操作的命令和函數(shù)。圖形窗口操作命令對圖形窗口的控制和操作的命令很多,這里主要介紹常用的figure、shg、clf、clg、home、hold、subplot等常用命令。它們的調(diào)用格式及有關(guān)說明了見表8。表8圖形窗口操作命令命令及函數(shù)說明figure/figure(gcf)顯示當(dāng)前圖形窗口。用于創(chuàng)建新的圖形窗口,也可以用來在兩個圖形窗口中間進(jìn)行切換。gcf/shg顯示當(dāng)前圖形窗口,同figure/figure(gcf)。clf/clg清除當(dāng)前圖形窗口。如果在holdon狀態(tài),圖形窗口內(nèi)的內(nèi)容將被清除。clg與clf功能相同,是MATLAB早期版本中的清除圖形窗口內(nèi)圖象命令。clc清除命令窗口。相當(dāng)于命令窗口edit菜單下的clearcommandwindow選項。PAGEPAGE20PAGEPAGE21續(xù)表命令及函數(shù)說明home移動光標(biāo)到命令窗口的左上角。holdon保持當(dāng)前圖形,并允許在當(dāng)前圖形狀態(tài)下,用同樣的縮放比例加入另一個圖形。holdoff釋放圖形窗口,將holdon狀態(tài)下加入的新圖形作為當(dāng)前圖形。hold在holdon和holdoff兩種狀態(tài)下進(jìn)行切換。ishold測試當(dāng)前圖形的hold狀態(tài)。若是holdon狀態(tài),則顯示1;若是holdoff狀態(tài),則顯示0。subplot(m,n,p)將圖形窗口分成m×n個窗口,并指定第p個子窗口為當(dāng)前窗口。子窗口的編號是從左至右、再從上到下進(jìn)行編號。subplot將圖形窗口設(shè)定為單窗口模式,相當(dāng)于subplot(1,1,1)。坐標(biāo)軸、刻度和圖形窗口縮放的操作命令MATLAB中對圖形窗口中的坐標(biāo)軸的操作命令是axis,其用法見表9;坐標(biāo)刻度的操作命令是xlim、ylim、zlim等,其使用方法見表10。表9axis函數(shù)的調(diào)用格式調(diào)用格式說明axis([xminxmaxyminymax])根據(jù)向量[xminxmaxyminymax]設(shè)置二維圖形窗口中坐標(biāo)軸的最大、最小值。axis([xminxmaxyminymaxzminzmax])根據(jù)向量[xminxmaxyminymaxzminzmax]設(shè)置三維圖形窗口中坐標(biāo)軸的最大、最小值。axis([xminxmaxyminymaxzminzmaxcmincmax])根據(jù)向量[xminxmaxyminymaxzminzmaxcmincmax]設(shè)置三維圖形窗口中坐標(biāo)軸的最大、最小值和顏色。axisauto將當(dāng)前圖形窗口的坐標(biāo)軸刻度設(shè)置為缺省狀態(tài)。axismanual固定坐標(biāo)軸刻度,若當(dāng)前圖形窗口為holdon狀態(tài),則后面的圖形將采用同樣的刻度。axistight采用與X方向和Y方向相同的坐標(biāo)軸刻度,即只繪制包含數(shù)據(jù)的部分坐標(biāo)。axisfill設(shè)定坐標(biāo)軸邊界,用來適應(yīng)數(shù)據(jù)值的范圍。axisequal設(shè)置X軸、Y軸為同樣的刻度。axisij翻轉(zhuǎn)Y軸,使之正數(shù)在下,負(fù)數(shù)在上。axisxy復(fù)位Y軸,使之正數(shù)在上,負(fù)數(shù)在下。axisimage重新設(shè)置圖形窗口的大小,與axisequal相同,以適應(yīng)數(shù)據(jù)的范圍。axissquare重新設(shè)置圖形窗口的大小,使窗口為正方形。axisnormal將圖形窗口復(fù)位至標(biāo)準(zhǔn)大小。axisvis3d鎖定坐標(biāo)軸之間的關(guān)系。一般用于圖形旋轉(zhuǎn)時。續(xù)表調(diào)用格式說明axisoff不顯示坐標(biāo)軸及刻度。axison顯示坐標(biāo)軸及刻度。axis(v)根據(jù)向量v設(shè)置坐標(biāo)軸刻度,使xmin=v1,xmax=v2,ymin=v3,ymax=v4,zmin=v5,zmax=v6。對于對數(shù)圖形,使用原數(shù)值而不使用對數(shù)值。axis(axis)固定坐標(biāo)軸刻度,即當(dāng)圖形窗口位于holdon狀態(tài)下也不改變坐標(biāo)軸刻度。表10box、lim、grid及相關(guān)函數(shù)的調(diào)用格式函數(shù)及調(diào)用格式說明box是否圖形四周都設(shè)定坐標(biāo)軸。boxon則開啟該功能,boxoff則關(guān)閉該功能,box則在boxon和boxoff之間切換。datetick(axis,format)根據(jù)日期格式format格式化坐標(biāo)軸上的文本。參數(shù)axis可以是'x'(默認(rèn)值),'y','z'。helpdatetick可以顯示更多用法和信息。dragrect(x,step)允許用戶在屏幕上拖動矩形。helpdragrect可以顯示更多的用法。xlim([xminxmax])設(shè)定X軸的最大、最小值,使xmin=xmin,xmax=xmax。xlim測定X軸的最大、最小值。ylim([yminymax])設(shè)定Y軸的最大、最小值,使ymin=ymin,ymax=ymax。ylim測定Y軸的最大、最小值。zlim([zminzmax])設(shè)定Z軸的最大、最小值,使zmin=zmin,zmax=zmax。zlim測定Z軸的最大、最小值。gridon根據(jù)圖形窗口中圖形的坐標(biāo)形式,繪制圖形窗口的網(wǎng)格。gridoff清除圖形窗口中的網(wǎng)格。grid在gridon和gridoff之間切換。線型、點型及顏色參數(shù)不管是在二維繪圖還是在三維繪圖當(dāng)中,在所有能產(chǎn)生線條的命令中一律用參數(shù)S來定義線條的線型、點型和顏色。以繪制平面曲線的plot()函數(shù)調(diào)用方式為例:plot(x,y,S) %x、y為曲線上指定點的橫坐標(biāo)和縱坐標(biāo),S為線型及顏色控制字符串在繪圖命令中參數(shù)S的輸入采用字符串形式,兩端加單引號。有關(guān)線型、點型和顏色的定義見表11~表13。表11線型定義符線型實線(默認(rèn)值)點線劃線點劃線定義符-:.表12點型定義點型實點加號交叉號小圓圈星號棱形正方形定義符.+xo*ds點型上三角下三角左三角右三角正六角星正五角形定義符^v<>hp表13顏色定義符顏色定義符顏色定義符紅色(red)r綠色(green)g藍(lán)色(blue)b青色(cyan)c品紅(magenta)m黃色(yellow)y黑色(black)k白色(white)w例如:plot(x,y,'-*k)表示繪制的曲線用實線,數(shù)據(jù)點(x,y)用星號*繪出,曲線和數(shù)據(jù)點都用黑色。fplot('fun',lim,'-.r')表示繪制參數(shù)fun決定的函數(shù)在參數(shù)lim給定范圍內(nèi)的曲線,曲線用紅色的點劃線繪出。當(dāng)參數(shù)S省略時,則使用系統(tǒng)默認(rèn)的線型和顏色繪制圖形。二維圖形的繪制MATLAB具有強(qiáng)大的圖形處理功能,不管是二維圖形還是三維圖形,作圖方法都非常簡便。繪制二維圖形有很多,現(xiàn)在把常用的四個繪圖函數(shù)的函數(shù)名、功能列表如下見表表14MATLAB繪圖函數(shù)函數(shù)式操作功能plot(X,Y)對向量X繪制向量Y的圖形。以X為橫坐標(biāo),以Y為縱坐標(biāo),將有序點集(xi,yi)連成曲線??梢约哟_定圖形線型和著色的參數(shù)。fplot(‘fcn’,[xmin,xmax])繪制由fcn表示的函數(shù)在區(qū)間[xmin,xmax]上圖形。fcn可以是代表某一函數(shù)的變量,也可以是X和Y的數(shù)學(xué)表達(dá)式。中括號內(nèi)最多可以是4個值,前兩個是自變量X的范圍,后兩個是Y的范圍。在中括號后還可以加確定圖形線型和著色的參數(shù)。polar(theta,rho)繪制極坐標(biāo)函數(shù)rho=f(theta)的圖象。其中theta是極角,以弧度為單位,rho是極徑。續(xù)表函數(shù)式操作功能polar(theta,rho,S)同polar(theta,rho),參數(shù)S確定要繪制的曲線的線型、點型、顏色。bar(X,Y)以X為橫坐標(biāo)繪制Y的條形圖。X必須是嚴(yán)格遞增向量。legend('str1','str2',…)在圖的右上角加線形標(biāo)注。str1是plot函數(shù)中的第一對數(shù)組[x1,y1],str2是plot函數(shù)中的第二對數(shù)組[x2,y2],標(biāo)注的線型也取處plot函數(shù)中相應(yīng)的線型。向量作圖在利用向量作圖時,首先要創(chuàng)建一個有值的向量,然后對這個向量的每一個元素求另一向量函數(shù)值,最后畫出向量圖形。?íy=cos(3t)yx2在[-2,2]?íy=cos(3t)【解】(1)輸入以下MATLAB指令,X=-2:1/20:2; %創(chuàng)建向量X,確定X的范圍Y=X.^2; %創(chuàng)建向量Y,確定Y的范圍plot(X,Y) %繪圖gridon %顯示背景網(wǎng)格線繪制出的圖形見圖8。圖8y=x2在[0,2]上的圖形(2)方法一:輸入以下指令t=linspace(0,2*pi,100);x=cos(3*t);y=sin(2*t);plot(x,y,'LineWidth',1);gridon方法二:輸入以下指令xt=@(t)cos(3*t);yt=@(t)sin(2*t);fplot(xt,yt,'LineWidth',1)gridon上述兩種方法繪圖結(jié)果相同,見圖9。函數(shù)作圖
圖9plot、fplot繪制的參數(shù)方程曲線利用MATLAB自帶的作圖函數(shù)作二維或三維圖形,既方便又快捷。ysin1x【例6】作在[-2,2]上的圖形,操作及結(jié)果如下:【解】輸入以下MATLAB指令:fplot(@(x)sin(1./x),[-2,2])繪制出的圖形見圖10。極坐標(biāo)繪圖
圖10y=sin1/x在[-2,2]上的圖形】繪制心形線r=2(1-cosθ)的極坐標(biāo)圖形?!窘狻枯斎胍韵翸ATLAB指令,theta0:0.01:2*pi; %建立數(shù)據(jù)點向量thetah=polar(theta,2*(1-cos(theta)))%繪制r=2(1-cosθ)的極坐標(biāo)圖形h.LineWidth=1; %設(shè)置曲線的線寬繪制的心形線如圖11所示。圖11心形線r=2(1-cosθ)的極坐標(biāo)圖形【例8】在同一窗口用不同的線型繪制y=sinx,y=cosx在[0,2π]上的圖象,并加上標(biāo)注?!窘狻枯斎胍韵翸ATLAB指令,x=linspace(0,2*pi,60);y=sin(x);y1=cos(x);plot(x,y,'r-',x,y1,'b--','LineWidth',1)%繪制不同線型的兩根曲線%加注圖例xlabel('x'); %標(biāo)注橫坐標(biāo)軸變量名稱ylabel('y') %標(biāo)注縱坐標(biāo)軸變量名稱title('正弦曲線與余弦曲線')%標(biāo)注圖的標(biāo)題gridon %顯示背景網(wǎng)格線繪制出的圖形見圖12。圖12在同一窗口不同線型繪制的正、余弦曲線空間曲線與空間曲面繪制MATLAB提供了多種函數(shù)來顯示三維圖形,這些函數(shù)可以在三維空間中畫曲線或曲面,MATLAB還提供了用顏色來代表第四維,即偽色彩,我們還可以通過改變視角看三維圖形的不同側(cè)面。這里我們介紹三維圖形的作圖方法及其修飾。三維曲線作圖用plot3函數(shù)繪制空間三維曲線。其主要調(diào)用格式為:plot3(X1,Y1,Z1,...)X1,Y1,Z1為曲線上指定點處的三維坐標(biāo);省略號部分可以設(shè)置圖形效果控制參數(shù),同plot函數(shù)一樣。?x=rcost】繪制柱面螺旋線的圖形,參數(shù)方程是:íy=rsint,t∈[0,8π。??z=t?【解】輸入命令如下:r=1;t=linspace(0,8*pi,300); %自變量參數(shù)離散化x=r*sin(t); %計算曲線上各點的x坐標(biāo)y=r*cos(t); %計算曲線上各點的y坐標(biāo)z=t; %計算曲線上各點的z坐標(biāo)h=plot3(x,y,z,'LineWidth',1.5) %作圖,控制線的寬度為1.5boxon;gridon; %打開邊框,打開網(wǎng)格程序運(yùn)行結(jié)果見圖13。三維曲面作圖
圖13柱面螺旋線繪圖可用函數(shù)surf()、surfc()、mesh()來繪制三維曲面圖。當(dāng)然,這幾個作圖函數(shù)要與meshgrid函數(shù)配合使用。假設(shè)現(xiàn)在需要繪制曲面z=f(x,y),(x,y)∈[a,b]×[c,d],作圖主要步驟如下:xa,b范圍內(nèi)取自變量x的nyc,d內(nèi)取自變量y的m個離散點,通常實現(xiàn)命令為假定abcdmnx=linspace(a,b,n);%n為離散點的數(shù)量y=linspace(c,d,m);%m為離散點的數(shù)量用meshgrid()函數(shù)生成繪圖區(qū)域內(nèi)的網(wǎng)格點,方法如下:[X,Y]=meshgrid(x,y);返回值X和Y中存放著所有網(wǎng)格點的橫坐標(biāo)和縱坐標(biāo)數(shù)據(jù)。計算網(wǎng)格點處的曲面點的豎坐標(biāo)z的值,方法是:Z=f(X,Y)%注意,函數(shù)f中的乘、除、冪運(yùn)算通常要用點乘、點除、點冪運(yùn)算調(diào)用surf()或mesh()函數(shù)繪制曲面,調(diào)用格式為:surf(X,Y,Z)mesh(X,Y,Z) 例】畫出函數(shù)z=sin(π x2+y2)的圖形?!窘狻烤帉憁文件運(yùn)行以下程序作圖:xlinspace(-4,4,60); %分割x的取值區(qū)間Y=linspace(-4,4,60); %分割y的取值區(qū)間[X,Y]=meshgrid(x,Y); %生成繪圖區(qū)域網(wǎng)格點Z=sin(pi*sqrt(X.^2+Y.^2)); %計算網(wǎng)格點處的函數(shù)值subplot(1,2,1) %橫排分成兩塊區(qū)域,在第一塊區(qū)域畫圖surf(X,Y,Z); %利用surf函數(shù)作圖axisequal;title('surf(X,Y,Z)')subplot(1,2,2) %橫排分成兩塊區(qū)域,在第一塊區(qū)域畫圖mesh(X,Y,Z); %利用mesh函數(shù)作圖axisequal;title('mesh(X,Y,Z)')程序運(yùn)行結(jié)果見圖14。圖14用surf()、mesh()函數(shù)畫的曲面圖A.6MATLAB程序設(shè)計計算機(jī)程序就是計算機(jī)指令的集合,不同的編程語言指令與功能是不一樣的。MATLAB語言是一種面向?qū)ο蟮母呒壵Z言,它具有編程效率高、易學(xué)易用的優(yōu)點.MATLAB與其它大部分高級語言一樣,有它自己的控制流語句??刂屏鳂O其重要,因為它使過去的計算影響將來的運(yùn)算。MATLAB提供如下幾種控制流結(jié)構(gòu):for循環(huán),While循環(huán),If-Else-End結(jié)構(gòu)和switch-case-end結(jié)構(gòu)。由于這些結(jié)構(gòu)經(jīng)常包含大量的MATLAB命令,故經(jīng)常出現(xiàn)在M文件中。MATLAB支持的控制流語句和C語言支持的控制流語句在調(diào)用格式上非常相似。for循環(huán)for循環(huán)允許一條語句或一組語句被重復(fù)執(zhí)行預(yù)先指定的次數(shù)。For循環(huán)的一般形式是:forx=array語句end執(zhí)行過程:在for和end語句之間的語句按數(shù)組中的每一列執(zhí)行一次。在每一次迭代中,x被指定為數(shù)組的下一列,即在第n次循環(huán)中,x=array(:,n)。例如,forn=1:10x(n)=sin(n*pi/10);endPAGEPAGE30PAGEPAGE31x輸出為:x=0.30900.58780.80900.95111.00000.95110.80900.58780.30900.0000換句話,第一語句是說:對n110,執(zhí)行所有語句,直至下一個end語句。第一次通過for循環(huán)n=1,第二次,n=2,如此繼續(xù),直至n=10。在n=10以后,for循環(huán)結(jié)束,然后執(zhí)行end語句后面的任何命令。注意,該循環(huán)結(jié)束后,n=10。for循環(huán)的其它重要方面是:for循環(huán)不能用for循環(huán)內(nèi)重新賦值循環(huán)變量n來終止。forn=1:10x(n)=sin(n*pi/10);n=9;endxn輸出結(jié)果為:x=0.30900.58780.80900.95111.00000.95110.80900.58780.30900.0000n=9執(zhí)行結(jié)果表明,循環(huán)體中的語句n=9并沒有影響循環(huán)的執(zhí)行。在for循環(huán)內(nèi)接受任何有效的MATLAB數(shù)組。鍵入命令:data=[39456;716-15];forn=datax=n(1)-n(2)end輸出:x= -4x= -7x= 46x= 1for循環(huán)可按需要嵌套。例如:forn=1:5form=1:5A(n,m)=n^2+m^2;enddisp(n)end當(dāng)有一個等效的數(shù)組方法來解給定的問題時,應(yīng)避免用for循環(huán)。例如,上面的第一個例子可被重寫為n=1:10;x=sin(n*pi/10)輸出結(jié)果:x0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 0.5878 0.30900.0000兩種方法得出同樣的結(jié)果,而后者執(zhí)行更快,更直觀,要求較少的輸入。為了得到最大的速度,在for循環(huán)(while循環(huán))被執(zhí)行之前,應(yīng)預(yù)先分配數(shù)組。例如,前面所考慮的第一種情況,在for循環(huán)內(nèi)每執(zhí)行一次命令,變量x的大小增加1。迫使MATLAB每通過一次循環(huán)要花費時間對x分配更多的內(nèi)存。為了消去這個步驟,for循環(huán)的例子應(yīng)重寫為x=zeros(1,10);forn=1:10x(n)=sin(n*pi/10);endx現(xiàn)在,只有x(n)的值需要改變?!肯鄠鞴糯《葒跻勊穆斆髂芨傻脑紫噙_(dá)依爾國際象棋發(fā)明者二個格子上放二粒麥子,以后每個格子的麥子數(shù)都按前一格的兩倍計算。如果陛下按此法給我64人扛了一袋麥子,但很快用光了,再扛出一袋還不夠,請你為國王算一下共要給達(dá)依爾多少小麥(1m3小麥約1.4108粒)?【解】所需麥??倲?shù)為,輸入以下MATLAB命令計算:64s 2kk0a=1;s=0fori=1:64s=s+a;a=2*a;ends=s/1.4/10^8運(yùn)行后得:s=1.3176e+011這就是說,放滿64格,共需要麥子1.31761011立方米!】公元前五世紀(jì)我國古代數(shù)學(xué)家張丘建在《算經(jīng)》一書中提出了“百雞問幾何?x為雞翁數(shù),則x的范圍:0~19;y為雞母數(shù),則y的范圍:0~33;z:雞雛數(shù),則z的范圍:0~100,由題意得:x+y+z=1005x+3y+z/3=100這是一個不定方程,可利用遍歷法搜索求解。輸入命令計算:forx=0:19fory=0:33forz=0:100if(x+y+z==100)&&(5*x+3*y+z/3==100)d=[x,y,z]endendendend運(yùn)行后得結(jié)果:d=0 25 75d=4 18 78d=8 11 81d=12 4 84while循環(huán)與for循環(huán)以固定次數(shù)求一組命令的值相反,while循環(huán)以不定的次數(shù)重復(fù)執(zhí)行一組語句。while循環(huán)的一般形式是:while表達(dá)式1語句1end只要表達(dá)式1里的所有元素為真,就執(zhí)行while和end之間的語句1,否則,就結(jié)束循環(huán)。通常,表達(dá)式的值給出一個標(biāo)量值,但數(shù)組值也同樣有效。在數(shù)組情況下,當(dāng)數(shù)組的所有元素為真)時,就執(zhí)行語句1,數(shù)組中有一個元素為假就結(jié)束循環(huán)?!纠?3】按下面的公式計算:e1111使誤差小于給定的?!窘狻堪炎鳛檎`差,程序如下:x=1;y=0;n=1;whilex>errory=y+x;x=x/n;n=n+1;ende=y運(yùn)行如下:
error=input('請輸入誤差:');
1 (n請輸入誤差:0.001e=2.7181if-else-end結(jié)構(gòu)很多情況下,命令的序列必須根據(jù)關(guān)系的檢驗有條件地執(zhí)行。在編程語言里,這種邏輯由某種if-else-end結(jié)構(gòu)來提供。最簡單的if-else-end結(jié)構(gòu)是:if表達(dá)式1語句1end作用是:如果在表達(dá)式1中的所有元素為真(非零),那么就執(zhí)行if和end語言之間的語句1。假如有兩個選擇,if-else-end結(jié)構(gòu)是:if表達(dá)式1語句1else語句2end在這里,如果表達(dá)式1為真,則執(zhí)行語句1;如果表達(dá)式是假,則執(zhí)行語句2。當(dāng)有三個或更多的選擇時,if-else-end結(jié)構(gòu)采用形式if表達(dá)式1語句1elseif表達(dá)式2語句2elseif……else語句end如果表達(dá)式1為真,則執(zhí)行語句1,結(jié)束循環(huán);如果表達(dá)式1為假,則檢驗表達(dá)式2,如果表達(dá)式2為真,則執(zhí)行語句2,結(jié)束循環(huán);如果表達(dá)式2為假,則檢驗表達(dá)式3,如此下去,如果所有表達(dá)式都為假時,則執(zhí)行最后的語句。即只執(zhí)行第一個真值表達(dá)式相關(guān)的語句;接下來的表達(dá)式不檢驗,跳過其余的if-else-end結(jié)構(gòu)。而且,最后的else命令可有可無?!枯斎胍粋€字符,若為大寫字母,則輸出其對應(yīng)的小寫字母;若為小寫字母,則輸出其對應(yīng)的大寫字母;若為數(shù)字字符則輸出其對應(yīng)的數(shù)值,若為其他字符則原樣輸出?!窘狻砍绦蛉缦拢篶=input('請輸入一個字符','s');ifc>='A'&&c<='Z'disp(char(abs(c)+abs('a')-abs('A')));elseifc>='a'&&c<='z'disp(char(abs(c)-abs('a')+abs('A')));elseifc>='0'&&c<='9'disp(abs(c)-abs('0'));elsedisp(c);endswitch-case-end結(jié)構(gòu)如果在一個程序中,必須針對某個變量不同取值情況進(jìn)行相應(yīng)操作,switch語句比ifelse語句更方便。switch語句的一般形式為:switch分支條件(數(shù)值或字符串)case數(shù)值)1語句1case數(shù)值)2語句2caseotherwise語句end其中分支條件可以是一個函數(shù)、變量或者表達(dá)式。如果條件1與分支條件匹配就執(zhí)行語句1,退出循環(huán);否則,檢驗條件2,如果條件2與分支條件匹配執(zhí)行語句2,退出循環(huán);否則,檢驗條件3,...,當(dāng)所有條件都不與分支條件匹配時就執(zhí)行最后的語句。注意otherwise是可以省略的?!纠?5】某商場對顧客所購買的商品實行打折銷售,標(biāo)準(zhǔn)如下(商品價格用price來表示):price<200 沒有折扣200≤price<500 3折扣500≤price<1000 5折扣1000≤price<2500 8折扣2500≤price<5000 10折扣5000≤price 14折扣輸入所售商品的價格,求其實際銷售價格。price=input('請輸入商品價格');%交互輸入命令switchfix(price/100)case0,1} %價格小于200rate=0;case2,3,4} %價格大于等于200但小于500rate=3/100;casenum2cell(5:9) %價格大于等于500但小于1000rate=5/100;casenum2cell(10:24) %價格大于等于1000但小于2500rate=8/100;casenum2cell(25:49) %價格大于等于2500但小于5000rate=10/100;otherwise %價格大于等于5000rate=14/100;endprice=price*(1-rate) %輸出商品實際銷售價格PAGEPAGE37PAGEPAGE38附錄BGeoGebra軟件用法簡介GeoGebra簡介GeoGebra=Geometry+Algebra,即幾何+代數(shù),也就是同時擁有處理幾何繪圖與代數(shù)運(yùn)算的能力。GeoGebra最早是由一位年輕的奧地利數(shù)學(xué)家MarkusHohenwarter設(shè)計的一款開放源代碼的動態(tài)幾何免費軟件其結(jié)合幾何、代數(shù)與微積分、統(tǒng)計學(xué)和3D數(shù)學(xué)于。目前,GeoGebra由眾多的跨國團(tuán)隊共同開發(fā),并且擁有數(shù)百名翻譯志愿者將其譯成多國語言,至今,GeoGebra已被譯為69種語言。GeoGebra是為了從小學(xué)到大學(xué)各學(xué)段的教學(xué)而設(shè)計的動態(tài)數(shù)學(xué)軟件,是進(jìn)行數(shù)學(xué)教學(xué)、數(shù)學(xué)學(xué)習(xí)和數(shù)學(xué)研究的有力工具。該軟件功能強(qiáng)大、使用簡單、交互性強(qiáng),可以利用其自帶的幾何工具直接畫點、線段、直線、平面、多邊形、圓錐曲線、向量和空間幾何體等幾何對象,也可以直接通過代數(shù)輸入點的坐標(biāo)、函數(shù)解析式、多元函數(shù)、曲線方程和曲面方程等繪制幾何對象,還可以通過內(nèi)置的命令繪制區(qū)間函數(shù)、分段函數(shù)、參數(shù)曲線和參數(shù)曲面等對象,具有處理集合、微積分、矩陣、統(tǒng)計與概率等運(yùn)算分析功能,從小學(xué)到大學(xué)的幾乎所有數(shù)學(xué)基本知識都可以用它直觀地展示出來,并且每個對象都可以改變其屬性。另外,還可以利用它開發(fā)創(chuàng)作出許多數(shù)學(xué)藝術(shù)作品,特別是利用它可以揭示數(shù)學(xué)本質(zhì),品味數(shù)學(xué)內(nèi)涵,體會數(shù)學(xué)魅力,從而提高學(xué)生的學(xué)習(xí)興趣。該軟件是數(shù)學(xué)學(xué)習(xí)的助手、數(shù)學(xué)教學(xué)的平臺、構(gòu)建數(shù)學(xué)模型的工具。同其他數(shù)學(xué)軟件相比,GeoGebra的特點主要集中在以下幾個方面。可視化功能GeoGebra設(shè)計定位于數(shù)學(xué)教育,非常重視運(yùn)用于數(shù)學(xué)教學(xué)中的演示,具有強(qiáng)大的可視化功能。GeoGebra不僅可以繪制二維圖形,而且能繪制很精美的三維圖形,幫助用戶進(jìn)行直觀分析。圖形的各種屬性,如動畫、色彩、標(biāo)簽、說明等都可以進(jìn)行詳細(xì)設(shè)置。最重要的是它將數(shù)形結(jié)合的要求體現(xiàn)得淋漓盡致,能實現(xiàn)幾何圖形與函數(shù)方程的同步變化。GeoGebra幾乎能將從初等數(shù)學(xué)到高等數(shù)學(xué)的基本知識都直觀地展示出來,使教學(xué)過程更加生動、形象,從而幫助學(xué)習(xí)者更好地發(fā)現(xiàn)數(shù)學(xué)、理解數(shù)學(xué)、構(gòu)建數(shù)學(xué)。解決數(shù)學(xué)問題利用GeoGebra能解決常見的數(shù)學(xué)問題,除了基本的幾何繪圖與代數(shù)計算外,還包括微積分、概率、統(tǒng)計、圖論、最優(yōu)化、微分方程等諸多領(lǐng)域。其中既包括無誤差的符號計算,也包括滿足一定精確度要求的數(shù)值計算,如它可以做多項式的運(yùn)算、展開和分解,可以求方程的精確解和近似解,求函數(shù)的極限、導(dǎo)數(shù)、積分和冪級數(shù)展開等。 附錄 附錄附錄操作簡單相對于眾多的數(shù)學(xué)軟件,GeoGebra的操作比較容易上手。即使是沒有任何編程經(jīng)驗的用戶,只需要熟悉計算機(jī)的基本操作,并有相應(yīng)的數(shù)學(xué)知識和思維基礎(chǔ),就能完成大部分的簡單操作。GeoGebra集成了大量作圖工具圖標(biāo),只需點擊鼠標(biāo)就可繪制點、線段、直線、向量、多邊形、平面、空間幾何體等對象,也可以通過輸入簡單的指令來繪制函數(shù)、隱式曲線、參數(shù)曲線、參數(shù)曲面等對象。GeoGebra還具有指令聯(lián)想補(bǔ)全功能,會自動顯示與輸入接近的指令。在指令欄右側(cè)有指令說明區(qū),通過雙擊或復(fù)制可直接調(diào)用,所以無須記憶相關(guān)指令參數(shù)格式便能操作。支持腳本程序GeoGebra除了具有簡單便捷的操作外,還為用戶提供了更深層次的功能,也就是腳本程序。GeoGebra支持兩種腳本,一種是GeoGebra專屬腳本,一種是JavaScript通用腳本。利用腳本程序可以擴(kuò)充軟件的功能,進(jìn)行更高級的操作,這樣可以使用戶從軟件設(shè)計者所制定的框架中解放出來,編寫出用途更廣、功能更強(qiáng)的課件。免費開源軟件收費的高低是制約數(shù)學(xué)軟件在教學(xué)中推廣應(yīng)用的一大障礙。GeoGebra完全免費,可以從互聯(lián)網(wǎng)上自由下載,軟件的使用不受任何相關(guān)因素的制約,能滿足不同地區(qū)、不同層次學(xué)校師生教學(xué)的需要,這也是GeoGebra能在歐美國家盛行的原因之一。GeoGebra不但使用時完全免費,而且源碼是開放的,所以GeoGebra的更新速度很快,功能也日益強(qiáng)大。易于交流學(xué)習(xí)GeoGebra直接基于Java程序編寫,所以它具有Java的很多優(yōu)點:GeoGebra具有良好的網(wǎng)頁支持功能。即使對沒有安裝GeoGebra的設(shè)備,只需打開GeoGebra導(dǎo)出的網(wǎng)頁文件就能瀏覽和操作;GeoGebra可以跨平臺使用,如可在Windows、MacOS、Linux、Android、iOS等操作系統(tǒng)中無障礙地運(yùn)行,特別是能在智能手機(jī)、平板電腦等移動終端上使用,對有移動學(xué)習(xí)需求的學(xué)習(xí)者提供了便利,使他們能在任何地方進(jìn)行個性化的數(shù)學(xué)學(xué)習(xí)。GeoGebra的用戶界面場景在Windows操作系統(tǒng)下,運(yùn)行GeoGebra5.0.656.0-d版為操)1所示的默認(rèn)界面。GeoGebra列出了大量常用的工具圖標(biāo)讓用戶能直觀便捷地操作。當(dāng)軟件的某個視圖處于激活狀態(tài)時,該視圖區(qū)域可用的工具圖標(biāo)會相應(yīng)顯示在工具欄中。有些工具圖標(biāo)帶有下拉三角箭頭,可以下拉選擇更多同類的工具。GeoGebra提供了500多個指令,并支持中文指令注意:指令中的標(biāo)點為英文。通過在指令欄輸入指令可以完成幾乎所有的軟件操作,其中許多操作是利用工具圖標(biāo)無法完成的。掌握GeoGebra指令是熟練使用軟件的關(guān)鍵?!皞?cè)邊欄”:點擊軟件界面右邊框上的三角箭頭,顯示軟件的側(cè)邊欄,通過點擊側(cè)邊欄上相應(yīng)的按鈕可以快速切換視圖。圖1視圖在GeoGebra界面中,最主要的工作窗口就是視圖。視圖是構(gòu)造、操作、顯示對象的區(qū)域,是軟件的主要工作空間。GeoGebra視圖包括“代數(shù)區(qū)”“表格區(qū)”“運(yùn)算區(qū)”3D行切換。PAGEPAGE40PAGEPAGE41代數(shù)區(qū)默認(rèn)情況下,代數(shù)區(qū)會出現(xiàn)在軟件界面的最左側(cè)圖。GeoGebra中的每一個對象,不論是用戶主動命名的,還是由GeoGebra自動命名的,都會顯示在代數(shù)區(qū)。除了對象的名稱外,對象包含的各種代數(shù)屬性:坐標(biāo)、長度、面積、數(shù)值、方程等也會顯示在這里。圖2代數(shù)區(qū)內(nèi)的對象依據(jù)類別分成不同的群組,用戶可按從屬關(guān)系、對象類型、圖層、作圖順序等方式將對象重新排列。例如,從屬關(guān)系是將對象分成自由對象和從屬對象。如果一個新構(gòu)建的對象沒有使用已有對象,就稱為自由對象;否則就是從屬對象圖。圖3表格區(qū)GeoGebra的表格區(qū)類似Excel,具有處理、分析數(shù)據(jù)的功能,為研究概率統(tǒng)計問題提供了條件。表格區(qū)如圖4所示。圖4單元格是表格區(qū)的最小組成元素,每個單元格有唯一的地址方便引用,如第一行第一列的單元格地址為“A1”。單元格的地址可用于指令中以引用單元格。類似于Excel的“R1C1”引用,GeoGebra也可以用行號和列標(biāo)的數(shù)字形式來引用單元格,如指令“單元格(<列序>,<行序>)在GeoGebra中,單元格的引用也有所謂相對引用和絕對引用之分。如復(fù)制一個單元格的內(nèi)容到另一個單元格時,會默認(rèn)將所有的相對引用關(guān)系也復(fù)制到目標(biāo)位置,若要使用絕對引用,可以在涉及的單元格的行號或列標(biāo)前插入“$除了可以儲存數(shù)字外,其他類型的對象也可以存儲在單元格內(nèi)見圖。向單元格中輸入數(shù)據(jù),除直接輸入外,還可以采用從代數(shù)區(qū)拖拽對象、在指令欄輸入有關(guān)指令、導(dǎo)入數(shù)據(jù)文件、記錄到表格等方式。其中記錄到表格的操作方式:右擊繪圖區(qū)中的對象,在快捷菜單中選擇“記錄到表格坐標(biāo)、角度、長度、面積等記錄到單元格中。在單元格中輸入任何數(shù)據(jù),都將創(chuàng)建新的對象,并且新建的對象不會隨原對象的刪除而刪除。例如,將點A=(3,5)從代數(shù)區(qū)拖拽到單元格中,會生成新點A1=(3,5),刪除點A后,點A1不會隨之刪除。運(yùn)算區(qū)運(yùn)算區(qū)主要包括表達(dá)式的符號計算、數(shù)值計算,表達(dá)式的分解、展開、檢查,方程或方程組的精確求解、近似求解,導(dǎo)數(shù)、積分、概率統(tǒng)計的運(yùn)算等功能,軟件所支持的數(shù)學(xué)運(yùn)算都能在這里完成。運(yùn)算區(qū)由多個可執(zhí)行塊組成,每個可執(zhí)行塊上方為指令域,下方為執(zhí)行的結(jié)果圖。可以在運(yùn)算區(qū)的指令域內(nèi)直接輸入運(yùn)算區(qū)指令,使用方式與軟件下方的指令欄相同。除了直接輸入指令外,也可以利用運(yùn)算區(qū)上方的工具欄進(jìn)行運(yùn)算。圖5運(yùn)算區(qū)區(qū)別于其他視圖的主要特點是能進(jìn)行符號計算。所謂符號計算,是相對于數(shù)值計算而言的,符號計算處理的對象和結(jié)果都是符號。運(yùn)算區(qū)的符號計算是基于軟件的計算機(jī)代數(shù)系統(tǒng)實現(xiàn)的。例如,在運(yùn)算區(qū)的指令域輸入指令“解常微分方程(y’’+4y’+4y=0)5所示。繪圖區(qū)繪圖區(qū)是顯示對象圖形的區(qū)域,是GeoGebra的核心視圖。通過繪圖區(qū)左上角的樣式欄可以設(shè)置繪圖區(qū)的坐標(biāo)軸、網(wǎng)格等樣式。如需更詳細(xì)地設(shè)置,可以右擊繪圖區(qū)的空白處,在快捷菜行右側(cè)單中單擊“齒輪”狀按鈕,在下拉列表框中選擇“繪圖區(qū)打開繪圖區(qū)的設(shè)置窗口,在此可以設(shè)置坐標(biāo)軸的范圍、比例、線型、顏色、標(biāo)簽、刻度等,也可以設(shè)置網(wǎng)格的類型直角坐標(biāo)、等距線、極坐標(biāo)、線型、顏色、刻度等樣式圖。通過點擊工具欄上的工具圖標(biāo)或在指令欄輸入指令等方式都可以在繪圖區(qū)構(gòu)建對象,當(dāng)然對象的代數(shù)式會同步顯示在代數(shù)區(qū)。如果繪圖區(qū)中的對象發(fā)生改變時,它在代數(shù)區(qū)的代數(shù)式也會動態(tài)更新。圖6圖7點擊菜單欄中的“視圖”,可以打開繪圖區(qū)2。當(dāng)同時打開兩個繪圖區(qū)時,只有其一是激活的,此時通過指令建立的對象會顯示在該激活的繪圖區(qū)。用戶可以右擊對象,在快捷菜單中選擇“屬性”,在“屬性”對話框的“高級”選項卡中選擇對象要顯示在哪個繪圖區(qū)。分別顯示于兩個繪圖區(qū)上的同一對象或有從屬關(guān)系的對象是互相關(guān)聯(lián)的,即在一個繪圖區(qū)上操作某對象時,另一繪圖區(qū)上的關(guān)聯(lián)對象也會同步變化。利用這一特點,可以很方便地演示一些數(shù)學(xué)問題。繪圖區(qū)3D在3D繪圖區(qū)中,可以繪制點、線、面、棱錐、棱柱、圓錐、圓柱、正多面體、球體等幾何體,也可以繪制空間曲線和空間曲面。用戶可根據(jù)需要自定義3D繪圖區(qū)樣式,如調(diào)整視線方向:可以選擇視線指向xOy平面、xOz平面、yOz平面圖。圖8與繪圖區(qū)類似,在3D繪圖區(qū)同樣可以通過點擊工具欄上的工具圖標(biāo)或在指令欄輸入指令構(gòu)建對象。如此時繪圖區(qū)是開啟狀態(tài),則會以xOy平面為輔助視圖,將3D繪圖區(qū)中構(gòu)建的該平面上的對象顯示在繪圖區(qū)。如在3D繪圖區(qū)中構(gòu)建一個底面在xOy平面上的圓錐,底面的圓會顯示在繪圖區(qū)圖。事實上,可以指定任意平面為輔助視圖,構(gòu)建在該平面內(nèi)的對象,都會直接顯示在一個新的視圖中。圖9概率統(tǒng)計分布。只要從下拉列表中選擇分布類型,就能繪制相應(yīng)的“概率密度函數(shù)”或“累積分布函數(shù)”的圖形,也可以計算隨機(jī)變量在某一區(qū)間上的概率圖卡可進(jìn)行各種統(tǒng)計檢驗。選擇相應(yīng)的統(tǒng)計檢驗類型,設(shè)定好參數(shù)后,就可顯示出檢驗的結(jié)果圖。
圖10新增數(shù)學(xué)對象的時候,如果沒有主動為對象命名,系統(tǒng)會自動按英文字母的順序為其命名。數(shù)學(xué)對象(如點坐標(biāo)、數(shù)值、方程和函數(shù))的名稱都會顯示在代數(shù)區(qū)中,若要建立或更改數(shù)學(xué)對象,可通過GeoGebra視窗底部的指令欄來直接輸入代數(shù)式,輸入結(jié)束后必須按Enter鍵確認(rèn)。另外,任何時候按Enter鍵都可以快速將光標(biāo)切換到指令欄與繪圖區(qū)。點的命名規(guī)則點是用大寫字母(首字母大寫)命名的,只要在點的坐標(biāo)前面加上對象名稱與等號即可。范例:①直角坐標(biāo)點:在指令欄中輸入“A=(2,3)②極坐標(biāo)點:在指令欄中輸入“Br=(4;60°)”,注意坐標(biāo)中的兩個數(shù)字要用“;”隔開。③復(fù)數(shù)對應(yīng)的點:在指令欄中輸入“M=2+i向量的命名規(guī)則向量是用小寫字母命名的,只要在向量的坐標(biāo)前面加上對象的名稱與等號即可。范例:①直角坐標(biāo)向量:在指令欄中輸人“u=(2,-1)②極坐標(biāo)向量:在指令欄中輸入“v=(5;30°)函數(shù)的命名規(guī)則函數(shù)的命名規(guī)則通常與函數(shù)的書寫規(guī)則相同。范例:在指令欄中依次輸人“f(x)=3*x-2g(m)=m^2trm(x)=sin(x)若在指令欄中輸人“x^3h(x)=x^3。m^2
注意:①函數(shù)的自變量不一定要用x,可以是任意的字母。②若輸人函數(shù)“g(m)=”前,已經(jīng)有數(shù)值m=6,那么函數(shù)g(m)中的變量m與m=6沒有任何關(guān)系。直線、圓錐曲線與不等式的命名規(guī)則直線、圓錐曲線與不等式的命名規(guī)則是在方程式前面加上名稱與冒號。范例:①直線:在指令欄中輸入“a:y=x-2②圓:在指令欄中輸入“c:(x-1)^2+(y-2)^2=1③橢圓:在指令欄中輸入“tuo:x^2/9+y^2/4=1④不等式:在指令欄中輸入“d:x-2*y>=1GeoGebra代數(shù)輸入基本操作GeoGebra中定義的特定常數(shù)和運(yùn)算符輸入方法列表如下:表1特定常數(shù)和運(yùn)算符輸入方法待輸入對象快捷鍵說明圓周率piAlt+p或者字母pi也可由虛擬鍵盤輸入歐拉數(shù))eAlt+e也可由虛擬鍵盤輸入虛數(shù)單位iAlt+i也可由虛擬鍵盤輸入續(xù)表待輸入對象快捷鍵說明角度單位符號°Alt+o也可由虛擬鍵盤輸入根號√Alt+R也可以輸入為sqrt()運(yùn)算符號?Shift+Alt+8也可由虛擬鍵盤輸入運(yùn)算符號⊕Alt+=∞Alt+u也可由虛擬鍵盤輸入≤Shift+Alt+<也可由虛擬鍵盤輸入≥Shift+Alt+>也可由虛擬鍵盤輸入冪指數(shù)0~9Alt+0~9也可用^表示冪指數(shù)下角標(biāo)_{下標(biāo)內(nèi)容}注意,GeoGebra中,字母e這個名稱(無論是自動命名還是主動命名的)沒有被用過的話,那么它第一次被引用,例如,在指令欄內(nèi)輸入“a=2+e”,此時e會被當(dāng)做歐拉數(shù);但是,如果e已經(jīng)被命名過成為別的對象名,此時鍵盤上直接鍵入的字母e不會被當(dāng)做歐拉數(shù)。此后若需用歐拉數(shù),必須用Alt+e來輸入。數(shù)學(xué)中常用的希臘字母可由GeoGebra自帶的虛擬鍵盤輸入。部分希臘字母設(shè)有快捷鍵,列表如下。表2希臘字母輸入方法希臘字母快捷鍵希臘字母快捷鍵αAlt+aΩShift+Alt+wβAlt+bΘShift+Alt+tγAlt+gΦShift+Alt+fδAlt+dΔShift+Alt+dθAlt+tΠShift+Alt+pλAlt+lΣShift+Alt+sμAlt+mΓShift+Alt
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 砌體作業(yè)分包勞務(wù)合同
- 代工代銷合同協(xié)議
- 高效軟件運(yùn)維服務(wù)合同
- 個人勞務(wù)分包合同范本
- 婚車租賃合同版
- 采伐森林植物協(xié)議
- 農(nóng)舍買賣協(xié)議示范文本
- 用電質(zhì)量承諾協(xié)議
- 品牌年度服務(wù)合同的簽訂與履行
- 磚材料銷售合同
- 電氣焊安全操作規(guī)程15篇
- 校園安全教育(完美版)ppt
- 游戲王統(tǒng)一規(guī)則
- 小學(xué)語文人教一年級上冊(統(tǒng)編)-富全學(xué)校語文教案丁代英
- 水庫建設(shè)項目施工組織設(shè)計
- 系統(tǒng)集成類項目施工組織計劃方案
- 國家開放大學(xué)實驗學(xué)院生活中的法律第三單元測驗答案
- 詩朗誦社團(tuán)活動記錄
- 第3章 細(xì)胞命運(yùn)的決定(章節(jié)課程)
- 《積極心理學(xué)》課程教學(xué)大綱.docx
- 2014年吉林省長春市中考模擬數(shù)學(xué)
評論
0/150
提交評論