數學軟體簡介PARTIIMatlab介紹36090.pptx

上传人:jix****n11 文档编号:91087215 上传时间:2023-05-21 格式:PPTX 页数:34 大小:366.11KB
返回 下载 相关 举报
數學軟體簡介PARTIIMatlab介紹36090.pptx_第1页
第1页 / 共34页
數學軟體簡介PARTIIMatlab介紹36090.pptx_第2页
第2页 / 共34页
点击查看更多>>
资源描述

《數學軟體簡介PARTIIMatlab介紹36090.pptx》由会员分享,可在线阅读,更多相关《數學軟體簡介PARTIIMatlab介紹36090.pptx(34页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、上週上機課題目:數值分析n 請利用下列公式算出 f(8.1)、f(8.3)的近似值 f(x0)=1/2h-3f(x0)+4f(x0+h)-f(x0+2h)這裡的 f(x)為 x lnx Note:注意!乘的運算為*a=-3*8.1*log(8.1);%-3f(x0)b=4*8.2*log(8.2);%4f(x0+h)c=-8.3*log(8.3);%-f(x0+2h)1/(2*0.1)*(a+b+c)%(1/2h)(a+b+c)ans=3.09191394208330Note:猜猜!1/(2*0.1)與1/2*0.1有差別嗎?5 0.05事實上,可以簡化成a=8.1;b=0.1;z=1/(2*

2、b)*(-3*a*log(a)+4*(a+b)*log(a+b)-(a+2*b)*log(a+2*b)z=3.09191394208330這樣有個好處:可以隨意的修改a,b的值來調整z的值數學軟體簡介 PART IIMatlab 介紹今天進度:Matlab基本環境操作n重複命令與邏輯命令n M檔案n基本二維空間繪圖for 迴圈n 最簡單的重複命令是for迴圈 其基本形式為:for 變數=a:b;運算式;endn 其中變數的值會被依次設定為ab,來執行介於for和end之間的運算式。因此,若無意外情況,運算式執行的次數會等於b-a+1。n 例如:format long%算至小數點下14位數b=z

3、eros(1,10);%b是一個1x10的零矩陣 for i=1:10;b(i)=1/(10i);endb0.1 0.01 0.001 0.0001 0.00001 0.000001 0.00000010.00000001 0.000000001 0.0000000001for 迴圈n 例如:for i=1:10;%i從 1到 10a=8.1;h=1/(10i);%從0.1到0.0000000001z(i)=1/(2*h)*(-3*a*log(a)+4*(a+h)*log(a+h)-(a+2*h)*log(a+2*h);endzz=3.09191394208334 3.091864568791

4、00 3.09186406675011 3.09186406168394 3.09186406113326 3.09186405367257 3.09186402702721 3.09186507507775 3.09186809488438 3.09183789681811for 迴圈for迴圈也可以是多層的,下例產生一個6 x 6的Hilbert矩陣h,其中Ai,j為:1/(i+j-1)format ratfor i=1:6;for j=1:6;h(i,j)=1/(i+j-1);end end 1 1/2 1/3 1/4 1/5 1/61/2 1/3 1/4 1/5 1/6 1/71/3

5、1/4 1/5 1/6 1/7 1/81/4 1/5 1/6 1/7 1/8 1/9 1/5 1/6 1/7 1/8 1/9 1/101/6 1/7 1/8 1/9 1/10 1/11n 另一個重複命令是while迴圈 基本形式為:while 條件式;運算式;end 也就是說,只要條件是成立,運算式就會一再被執行。右例是產生一數列 x:1 1/2 1/3 1/4 1/5 1/6 while 迴圈i=1;while i=6,x(i)=1/i;i=i+1;end 邏輯命令n 最簡單的邏輯命令是if,.,end 其基本形式為:if 條件式;運算式;endif min(x)0.02;disp(Very

6、 Big!);%disp印出elsedisp(So tiny!);end Very Good!M檔案n Matlab可以將一連串命令貯存在一個檔案中,以後再將這群指令以你訂的檔案名稱為新指令,集體同時執行。這種可執行的檔案稱為M-files,因為其檔案名稱之字尾均以.m附檔名。n 例如;myfirst.m 即表示其檔案名稱為 myfirst,檔案型式為 M-file,你只要將目錄指向存放該檔案之檔案夾,就可在指令窗下打入 myfirst,開始執行該檔內之指令群。n M-檔案類型之檔案純為文字檔,故可在任何文書處理軟體中進行編輯或修改。Matlab也有一個程式編輯器,可以在此編輯器中偵錯(Deb

7、ug)或編輯,這個編輯器比其他文書處理具有不同的功能。在指令窗中亦可直接打入type之指令,觀察該檔案之內容。n M-files依執行時之實質型式分為兩種,一為敘述檔(script),二為函數檔(function)。敘述檔為一連串之正常指令之組合,故其名稱亦可作為指令在指令窗中直接執行。例如,有一個敘述檔之名稱為 mylove.m,則可在 Matlab 指令窗中直接下mylove這個指令執行這個檔案之內容。M檔案n 敘述檔常用於輸入大量資料,以構成一個新的矩陣,如此可以大大減少輸入時所可能發生之錯誤。設有一個名叫 mydata.m 的資料內容如下:n A=1 2 3;4 5 6A=1 2 3

8、4 5 6n 以 Matlab 鍵入mydata 這個指令則會使上項內容被執行,因此一個以A為名之矩陣即刻產生,將來有用到它的時候,即會跳出來為你效勞。n 注意:大寫 A與小寫 a 是不同的名稱。M檔案n 函數檔案與敘述檔主要差別是:開頭一行需有一個函數名稱之宣告以及輸入參數,函數名稱前可以有等號,在此等號之左方為其輸出之參數,方位不能弄錯,通式如下:輸出參數=函數名稱(輸入參數)n 特別注意的是這些參數變數,無論是輸入或輸出,均可能代表一個數值或一個矩陣。一般以代表一個矩陣為多。在函數檔案中,其所屬之變數均屬區域性的,除非特別另宣告為整體性參數。M檔案n 例如:function P=prod

9、sqr(A,B)P=A2*B2 n 此時函數之名稱為 prodsqr,其輸入參數為、。輸出為。在函數中,、均為區域性函數,只在這個函數執行期間有效,離開這個函數就不認得了。n 由於這是一個函數檔,它是不能自己執行的,而且它要能被呼叫,必須在存檔時,以 prodsqr.m儲存,方能對應主程式的呼叫。M檔案基本二維空間繪圖n Matlab不但擅長矩陣相關的數值運算,也適用在各種科學目視表示(Scientific visualization)。這裡介紹Matlab基本xy平面及xyz空間的各項繪圖命令,包含一維曲線及二維曲面的繪製、列印及存檔。n plot是繪製一維曲線的基本函數,但在使用此函數之前

10、,我們需先定義曲線上每一點的x及y座標。x=linspace(0,2*pi);%在0到2間,等分取100個點(它也是預設值)y=sin(x);%對應的y座標 plot(x,y);%進行二維作圖 基本二維空間繪圖 x=linspace(0,2*pi);plot(x,sin(x),x,cos(x);基本二維空間繪圖 Matlab在畫出多條曲線時,會自動輪換曲線顏色,以利分辨。n plot(x,sin(x),bo,x,cos(x),y+);n 曲線sin(x)藍色(b)及 圓形格式(o)n 曲線cos(x)黃色(y)及 十字格式(+)基本二維空間繪圖n 顏色參數:黃(y)、黑(k)、白(w)、藍(b

11、)、綠(g)、紅(r)n 格式參數:點(.)、圓(o)、x(x)、+(+)、*(*)、實線(-)、點線(:)、點虛線(-.)、虛線(-)基本二維空間繪圖n 一般而言,plot會根據所給的座標點來自動決定圖軸的範圍,但也是可以用axis指令來指定,其用法如下:axis(x最小,x最大,y最小,y最大)n 例如:n axis(-inf,inf,0,1)n inf 並不是指無限大,而是代表以資料點的最大值來取代,此處作用等於min(x)基本二維空間繪圖n 此外,Matlab 也可對圖形加上各種註解與處理:xlabel(Input Value);%x軸註解 ylabel(Function Value)

12、;%y軸註解 title(Two Trigonometric Functions);%圖形標題 legend(y=sin(x),y=cos(x);%圖形註解 grid on;%顯示格線 基本二維空間繪圖 前頁的所有功能加在圖形之後,圖形完整的繪製。基本二維空間繪圖n 分割畫面的圖形x=0:4*pi;subplot(2,2,1);plot(x,sin(x);subplot(2,2,2);plot(x,cos(x);subplot(2,2,3);plot(x,x);subplot(2,2,4);plot(x,2*x);subplot(m,n,p)表示將視窗劃分為m x n個視窗,而下一個plot指

13、令會繪圖於第p個區域。基本二維空間繪圖n 對於變化劇烈的函數,可用fplot來進行較精確的繪圖,會對劇烈變化處進行較密集的取樣,如下例:fplot(sin(1/x),0.02 0.2);0.02 0.2是繪圖範圍 基本二維空間繪圖n 若要產生極座標圖形,可用polar:theta=linspace(0,2*pi);r=cos(4*theta);polar(theta,r);基本二維空間繪圖n 長條圖:當資料點數量不多時,長條圖是很適合的表示方式:close all;x=1:10;y=abs(sin(x);bar(x,y);基本二維空間繪圖n 對於大量的資料,我們可用hist來顯示資料的分佈情況

14、和統計特性。下面幾個命令可用來驗證randn產生的高斯亂數分佈:x=randn(5000,1);%產生5000個亂數 hist(x,20);%20代表長條的個數 基本二維空間繪圖n rose和hist很接近,只不過是將資料大小視為角度,資料個數視為距離,並用極座標繪製表示:x=randn(1000,1);rose(x);基本二維空間繪圖n stairs可畫出階梯圖:n x=linspace(0,10,50);n y=sin(x).*exp(-x/3);n stairs(x,y);基本二維空間繪圖n stems可產生針狀圖,常被用來繪製數位訊號:n x=linspace(0,10,50);n y=sin(x).*exp(-x/3);n stem(x,y);基本二維空間繪圖n stairs將資料點視為多邊行頂點,並將此多邊行塗上顏色:x=linspace(0,10,50);y=sin(x).*exp(-x/3);fill(x,y,b);%b為藍色 基本二維空間繪圖5/8 上機課n 畫出今天教的圖形中的三種:n 一般曲線圖、長條圖、極座標圖、階梯圖、針狀圖n 試著加上註解,讓圖形更完整

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com