第一篇:Matlab知識(shí)點(diǎn)總結(jié)
符號(hào)積分變換
傅里葉變換及其反變換
1.傅里葉變換 f=f(x)?F=F(w)syms x w u v f=sin(x)*exp(-x^2);F1=fourier(f)F1 = transform::fourier(sin(x)/exp(x^2), x,-w)>> f=x;F2=fourier(f)F2 = pi*dirac(w, 1)*2*i >> h=x*exp(-abs(x));F3=fourier(h)F3 =-(w*4*i)/(w^2 + 1)^2 >> h=x*exp(-abs(x));F3=fourier(h,u)F3 =-(u*4*i)/(u^2 + 1)^2 2.傅里葉反變換
syms w v x t g=exp(-abs(x));IF2=ifourier(g)IF2 = 1/(pi*(t^2 + 1))拉普拉斯變換及其反變換 1.拉普拉斯變換
syms x s t v
f1=sqrt(t);L1=laplace(f1)L1 =pi^(1/2)/(2*s^(3/2))2.拉普拉斯反變換
syms a s t u v x
f=exp(x/s^2);IL1=ilaplace(f)IL1 =ilaplace(exp(x/s^2), s, t)Z變換及其反變換 方程的解析解
線性方程組的解析解
包括求解線性方程組和非線性方程組的函數(shù)solve(),也有求解常微分方程組的函數(shù)dsolve()
L1='x+y+z=10';L2='3*x+2*y+z=14';L3='2*x+3*y-z=1';
%L1、L2、L3分別是三個(gè)字符串 g=solve(L1,L2,L3)g =
x: [1x1 sym]
y: [1x1 sym]
z: [1x1 sym]
%表明g是一個(gè)結(jié)構(gòu)數(shù)組,其中每個(gè)元素為一
>> g.x
%符號(hào)類(lèi)型的量,用如下方法查看方程解的具體值
ans =1 一般求解方法:
L1='x+y+z=10';L2='3*x+2*y+z=14';L3='2*x+3*y-z=1';[x y z]=solve(L1,L2,L3)x =1 y =2 z =7 線性方程組的解析解
>> f=sym('a*x^2+b*x+c=0');xf=solve(f)xf =
-(b +(b^2(b^24*u*w)^(1/2))/(2*u)(v^2 + 4*u*w*vw z =
-(v + 2*u*w +(v^2 + 4*u*w*v(v^2 + 4*u*w*v(a*x^2)/2 >> y=dsolve('D2y+2*x=2*y','x')y = x + C4*exp(2^(1/2)*x)+ C5/exp(2^(1/2)*x)>> y=dsolve('D2y+2*x=2*y','y(2)=5','Dy(1)=2','x')y =x +(exp(2^(1/2)*x)*(6*exp(2^(1/2))+ 2^(1/2)))/(2*exp(2^(1/2))*(exp(2*2^(1/2))+ 1))3*2^(1/2)))/(2*exp(2^(1/2)*x)*(exp(2*2^(1/2))+ 1))MATLAB程序設(shè)計(jì)
全局變量 global A B C
變量名區(qū)分大小寫(xiě)
腳本文件是m文件中最簡(jiǎn)單的一種輸入頓號(hào)輸出參數(shù),用命令語(yǔ)句可以控制MATLAB命令工作空間的所有數(shù)據(jù)。編程計(jì)算向量元素的平均值:
x=input('輸入向量:x=');%average_1.m計(jì)算向量元素的平均值 [m,n]=size(x);if(m==1|n==1)
average=sum(x)/length(x)else error('必須輸入向量。')End 如果m文件的第一個(gè)可執(zhí)行語(yǔ)句以function開(kāi)始,該文件就是函數(shù)文件,每一個(gè)函數(shù)文件都定義一個(gè)函數(shù)。函數(shù)有自己獨(dú)立的工作空間,它與MATLAB的工作空間區(qū)分開(kāi)。
Function y=average_2(x)%函數(shù)average_2(x)用以計(jì)算向量元素的平均值
%輸入?yún)?shù)x為輸入向量,輸出參數(shù)y為計(jì)算的平均值 MATLAB的程序控制結(jié)構(gòu) For循環(huán)一般形式
For 循環(huán)控制變量=表達(dá)式1:表達(dá)式2:表達(dá)式3 For x=-2.0:0.25:-0.75 While循環(huán)
選擇結(jié)構(gòu):MATLAB中的選擇結(jié)構(gòu)語(yǔ)句有if語(yǔ)句、switch語(yǔ)句和try語(yǔ)句
A=[];
for k=1:5
for j=1:
5if k==j
A(k,k)=5;
elseif abs(k-j)==1 A(k,j)=1;
else
A(k,j)=0;
end
end end A
結(jié)果:A =
0
0
0
0
0
0
0
0
0
0
0
0 程序流的控制 1.break語(yǔ)句
終止本層for或while循環(huán),跳轉(zhuǎn)到本層循環(huán)語(yǔ)句end的下一條語(yǔ)句。2.return語(yǔ)句
終止被調(diào)用函數(shù)的運(yùn)行,返回到調(diào)用函數(shù)。3.pause語(yǔ)句
Pause:暫停程序運(yùn)行,按任意鍵繼續(xù) Pause(n):程序暫停運(yùn)行n秒后繼續(xù)。Pause on/off:允許/禁止其后的程序暫停 4.continue語(yǔ)句
在for循環(huán)或while循環(huán)中遇到該語(yǔ)句,將跳過(guò)其后的循環(huán)體語(yǔ)句,進(jìn)行下一次循環(huán)。數(shù)據(jù)的輸入與輸出 鍵盤(pán)輸入語(yǔ)句 input x=input(‘prompt’);
x=input(‘prompt’,’s’)
%不至于將輸入的數(shù)字看成是數(shù)值型數(shù)據(jù)。屏幕輸出語(yǔ)句disp(x)
M數(shù)據(jù)文件的存儲(chǔ)/加載(save/load)格式化文本文件的存儲(chǔ)/讀取(fprintf/fxcanf)二進(jìn)制數(shù)據(jù)文件的存儲(chǔ)/讀取(fwrite/fread)數(shù)據(jù)文件行存儲(chǔ)/讀取(fgetl/fgets)MATLAB文件操作
MATLAB數(shù)據(jù)可視化
使用函數(shù)figure來(lái)建立圖形窗口,最簡(jiǎn)單的調(diào)用方式figure Close關(guān)閉當(dāng)前圖形窗口 基本二維圖形繪制
(1)plot:x軸和y軸均為線性刻度(2)Loglog:x軸和y軸均為對(duì)數(shù)刻度
(3)Semilogx:x為對(duì)數(shù)刻度,y為線性刻度(4)Semilogy:x為線性刻度,y為對(duì)數(shù)刻度
(5)Plotyy:繪制雙縱坐標(biāo)圖形,繪制兩條具有不同縱坐標(biāo)的曲線,調(diào)用格式
Plotyy(x1,y1,x2,y2)Plot是最基本的二維繪圖函數(shù): Plot(Y),plot(X,Y)>> x=0:0.05:5;y=sin(x.^2);plot(x,y);
>> x=0:0.05:5;y1=0.2*x-0.8;y2=sin(x.^2);plot(x,y1,x,y2);
>> x=0:pi/180:2*pi;
%兩條不同縱坐標(biāo)的曲線,顏色不同加以區(qū)分 y1=exp(-0.3*x).*cos(2*x);y2=10*exp(-1.5*x);plotyy(x,y1,x,y2);
條形圖:
>> x=-2.9:0.2:2.9;bar(x,exp(-x.*x));極坐標(biāo):
t=0:0.1:2*pi;polar(t,abs(cos(2*t)));針狀圖:
>> x=0:0.1:4;y=(x.^0.8).*exp(-x);stem(x,y)階梯圖:
>> x=0:0.25:10;stairs(x,sin(2*x)+sin(x))餅圖:
>> x=[43,78,88,43,21];pie(x)
色彩和線型 >>
x=0:0.2:8;y1=0.2+sin(-2*x);y2=sin(x.^0.5);plot(x,y1,'g-+',x,y2,'r--d');%y1采用綠色、實(shí)線、加號(hào)標(biāo)記;
%y2采用紅色,虛線,菱形表示 坐標(biāo)軸及標(biāo)注
函數(shù)axis指定坐標(biāo)軸的刻度范圍其調(diào)用格式為 Axis([xmin,xmax,ymin,ymax])
hold on/off 保持原有圖形/刷新原有圖形 axis on/off 顯示/取消坐標(biāo)軸
xlabel(‘option’)x軸加標(biāo)注,option表示任意選項(xiàng) ylabel(‘option’)y軸加標(biāo)注 Title(‘option’)
圖形加標(biāo)題 Legend(‘option’)圖形加標(biāo)注 Grid on/off
顯示/取消網(wǎng)格線 Box on/off
給坐標(biāo)加/不加邊框線
>>x=0:0.05:5;
y1=exp(0.4.^x)-1.5;y2=sin(x*4);
plot(x,y1,x,y2,'r-.');
line([0,5],[0,0]);%畫(huà)直線,代替橫坐標(biāo) xlabel('input');ylabel('output');title('two function');
legend('y1=exp(0.4^x)-1.5','y2=sin(x*4)')grid on %畫(huà)網(wǎng)格線
在一個(gè)圖形窗口中用函數(shù)subplot可以同時(shí)畫(huà)出多個(gè)子圖形
x=linspace(0,2*pi,100);
subplot(2,2,1);plot(x,sin(x));
xlabel('x');ylabel('y');title('sin(x)');subplot(2,2,2);plot(x,cos(x));
xlabel('x');ylabel('y');title('cos(x)');subplot(2,2,3);plot(x,exp(x));
xlabel('x');ylabel('y');title('exp(x)');subplot(2,2,4);plot(x,exp(-x));
xlabel('x');ylabel('y');title('exp(-x)');
三維曲線圖
用plot3(x1,y1,z1)繪制三維圖形
t=0:0.5:20;
plot3(sin(t),cos(t),t);grid on
三維曲面圖
格點(diǎn)矩陣:[X,Y]=meshgrid(x,y)Surf(Z),surf(X,Y,Z)Surfc():曲面下繪制曲面的等高線。
球:
[X,Y,Z]=sphere(30);surf(X,Y,Z);Shading faceted:分層網(wǎng)格線 Shading flat:平滑式
第二篇:matlab總結(jié)
班級(jí): 學(xué)號(hào): 姓名:
Matlab學(xué)習(xí)綜述
MATLAB是一種科學(xué)計(jì)算軟件,專(zhuān)門(mén)以矩陣的形式處理數(shù)據(jù)。MATLAB將高性能的數(shù)值計(jì)算和強(qiáng)大的數(shù)據(jù)可視化功能集成在一起,并提供了大量的內(nèi)置函數(shù),從而被廣泛地應(yīng)用于科學(xué)計(jì)算、控制系統(tǒng)、信息處理等領(lǐng)域的分析、仿真和設(shè)計(jì)工作,而且利用MATLAB產(chǎn)品的開(kāi)放式結(jié)構(gòu),可以非常容易地對(duì)MATLAB的功能進(jìn)行擴(kuò)充。
MATLAB產(chǎn)品由若干個(gè)模塊組成,不同的模塊完成不同的功能,其中主要的核心模塊有MATLAB、MATLAB Toolboxex、MATLAB Compiler Simulink、Simulink Blocksets、Real-time Workshop(RTW)Stateflow。這些產(chǎn)品大體上可以分為以MATLAB為基礎(chǔ)的產(chǎn)品和以Simulink為基礎(chǔ)的產(chǎn)品兩大分支。其中,MATLAB是MATLAB產(chǎn)品家族的基礎(chǔ),任何其他MATLAB產(chǎn)品產(chǎn)品都以這個(gè)模塊為基礎(chǔ)。MATLAB的桌面應(yīng)用程序開(kāi)發(fā)工具是以MATLAB Compiler為核心的一組編譯工具。Simulink是基于MATLAB的框圖設(shè)計(jì)環(huán)境,可以用來(lái)對(duì)各種動(dòng)態(tài)系統(tǒng)進(jìn)行建模,分析和仿真,它的建模范圍廣泛,可以針對(duì)任何能夠用數(shù)字來(lái)描述的系統(tǒng)進(jìn)行建模。
一種完整的計(jì)算機(jī)應(yīng)用語(yǔ)言應(yīng)該提供對(duì)數(shù)據(jù)的描述和對(duì)數(shù)據(jù)的操作。在M語(yǔ)言中,最常用的數(shù)據(jù)類(lèi)型表現(xiàn)手段和形式就是變量和常量,由于MATLAB軟件自身的特點(diǎn),它是一種以數(shù)值計(jì)算為基礎(chǔ)的軟件,因此M語(yǔ)言的基本處理單位是數(shù)值矩陣或者數(shù)值向量,在M語(yǔ)言中統(tǒng)一將矩陣或者向量稱之為數(shù)組,因此掌握一些基本的矩陣、向量和數(shù)組操作的基本知識(shí)就成為了掌握MATLAB軟件的基礎(chǔ)。變量和常量是編程語(yǔ)言中類(lèi)型的表現(xiàn)手段和形式,掌握變量和常量的概念也是掌握M語(yǔ)言編程的基礎(chǔ)。所謂變量,就是指在程序運(yùn)行中需要改變數(shù)值的量,每一個(gè)變量都具有一個(gè)名字,變量將在內(nèi)存中占據(jù)一定的空間,以在程序運(yùn)行的過(guò)程中保存其數(shù)值,對(duì)變量的命名有相應(yīng)的要求:變量必須以字母開(kāi)頭,后面可以是字母、數(shù)字或者下劃線之間的組合。所謂常量就是在程序運(yùn)行的過(guò)程中不需要改變數(shù)值的量。
MATLAB專(zhuān)門(mén)以矩陣作為基本的運(yùn)算單位,首先要掌握向量、矩陣、索引和多維數(shù)組的概念,以及在MATLAB環(huán)境下創(chuàng)建向量、矩陣和多維數(shù)組的方法,以及操作矩陣和多維數(shù)值的函數(shù)的使用方法。
目前的MATLAB版本中不僅有多達(dá)十幾種的基本數(shù)據(jù)類(lèi)型。在不同的專(zhuān)業(yè)工具箱中還有特殊的數(shù)據(jù)類(lèi)型,并且MATLAB還支持面向?qū)ο蟮木幊碳夹g(shù),支持用戶自定義的數(shù)據(jù)類(lèi)型。獲取MATLAB的數(shù)據(jù)類(lèi)型可以在MATLAB命令行窗體中鍵入help datatypes。MATLAB的數(shù)據(jù)類(lèi)型包括基本的數(shù)值類(lèi)型,邏輯類(lèi)型數(shù)據(jù)、元胞數(shù)值、結(jié)構(gòu)和字符串等,需要指出一點(diǎn),MATLAB的基本數(shù)據(jù)是雙精度數(shù)據(jù)類(lèi)型和字符類(lèi)型。MATLAB提供了完整的編寫(xiě)應(yīng)用程序的功能,這種能力被稱為M語(yǔ)言的高級(jí)語(yǔ)言來(lái)實(shí)現(xiàn)。這種語(yǔ)言是一種解釋性語(yǔ)言,利用該語(yǔ)言編寫(xiě)的代碼僅能被MATLAB接受,被MATLAB解釋執(zhí)行。其實(shí),一個(gè)M語(yǔ)言文件就是由若干MATLAB的命令組合在一起構(gòu)成的,和C語(yǔ)言類(lèi)似。M語(yǔ)言文件都是標(biāo)準(zhǔn)的純文本格式的文件,其文件的擴(kuò)展名為.m。MATLAB的函數(shù)主要有兩類(lèi),一類(lèi)被稱為內(nèi)建函數(shù),這類(lèi)函數(shù)是由MATLAB的內(nèi)核提供的,能夠完成基本的運(yùn)算,例如三角函數(shù)、矩陣運(yùn)算函數(shù)等。另外一類(lèi)函數(shù)就是利用高級(jí)語(yǔ)言開(kāi)發(fā)的函數(shù)文件,這里的函數(shù)文件包括用C/FORTRAN語(yǔ)言開(kāi)發(fā)的MEX函數(shù)文件,也包括了M函數(shù)文件。
M語(yǔ)言文件可以分為兩類(lèi),其中一類(lèi)是腳本文件,另一類(lèi)是函數(shù)文件,腳本文件是最簡(jiǎn)單的一種M語(yǔ)言文件。所謂腳本文件就是由一系列的M語(yǔ)言文件指令和命令組成的純文本格式的M文件,執(zhí)行腳本文件時(shí),文件中的指令或者命令按照出現(xiàn)在腳本文件中的順序依次執(zhí)行。腳本文件沒(méi)有輸入?yún)?shù),也沒(méi)有輸出參數(shù),腳本文件處理的數(shù)據(jù)或者變量必須在MATLAB的公共工作空間中,腳本文件主要是由注視行和代碼行組成。
函數(shù)文件是M文件最重要的組成部分,M語(yǔ)言函數(shù)文件能夠接受用戶的輸入?yún)?shù),并進(jìn)行計(jì)算,然后將計(jì)算結(jié)果作為函數(shù)的返回值返回給調(diào)用者,M函數(shù)文件和腳本文件不同,函數(shù)文件不僅有自己特殊的文件格式,而且不同的函數(shù)還分別具有自己的工作空間,函數(shù)文件的輸/輸出參數(shù)不同,這些輸入/輸出參數(shù)在定義的時(shí)候不需要指出變量的類(lèi)型,因?yàn)镸ATLAB默認(rèn)這些參數(shù)都使用雙精度類(lèi)型,這樣可以簡(jiǎn)化程序的編寫(xiě)。M語(yǔ)言的函數(shù)文件不僅可以有一個(gè)輸入?yún)?shù)和一個(gè)返回值,還可以為M語(yǔ)言函數(shù)文件定義多個(gè)輸入?yún)?shù)和多個(gè)輸出參數(shù),同一個(gè)M函數(shù)文件中可以包含多個(gè)函數(shù)。如果在同一個(gè)M函數(shù)文件中包含了多個(gè)函數(shù),那么將出現(xiàn)在文件中的第一個(gè)M函數(shù)稱為主函數(shù),其余的函數(shù)稱為子函數(shù)。
經(jīng)過(guò)這么一段時(shí)間的學(xué)習(xí),對(duì)MATLAB有了初步的認(rèn)識(shí)。但是關(guān)于它還有很多知識(shí)我們所不知道,還有待進(jìn)一步的學(xué)習(xí)。以上內(nèi)容是我對(duì)這學(xué)期所學(xué)課程的總結(jié),可能有些地方總結(jié)的不夠到位,因?yàn)橛行┑胤綄W(xué)習(xí)的不夠深入,所以,以后要更加努力,在MATLAB的學(xué)習(xí)上多花一些時(shí)間,為以后的學(xué)習(xí)和工作打下基礎(chǔ)。
第三篇:MATLAB總結(jié)
目錄
一、Matlab相關(guān)說(shuō)明.....................................................................2
二、Matlab操作注意事項(xiàng)..............................................................2
三、Matlab常用代碼(圖像處理相關(guān))......................................5
四、Matlab常用快捷鍵.................................................................7
五、Matlab學(xué)習(xí)心得.....................................................................8
一、Matlab相關(guān)說(shuō)明
Matlab是“Matrix Laboratory”的縮寫(xiě),意為“矩陣實(shí)驗(yàn)室”。MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類(lèi)科技應(yīng)用軟件中在數(shù)值計(jì)算方面首屈一指。MATLAB可以進(jìn)行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語(yǔ)言的程序等,主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通訊、圖像處理、信號(hào)檢測(cè)、金融建模設(shè)計(jì)與分析等領(lǐng)域。
MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB來(lái)解算問(wèn)題要比用C,F(xiàn)ORTRAN等語(yǔ)言完成相同的事情簡(jiǎn)捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點(diǎn),使MATLAB成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件。在新的版本中也加入了對(duì)C,F(xiàn)ORTRAN,C++,JAVA的支持。
我所使用的Matlab版本是2012a,下文所涉及到圖片、專(zhuān)業(yè)術(shù)語(yǔ)等都是以此版本為基礎(chǔ)。
二、Matlab操作注意事項(xiàng)
1.打開(kāi)并運(yùn)行一個(gè)現(xiàn)存的m文件且這個(gè)m文件運(yùn)行時(shí)需用到同一級(jí)文件夾中的其他文件,會(huì)出現(xiàn)如下提示框:
選擇變更文件夾,將當(dāng)前文件夾變更為這個(gè)m文件所在的文件夾。
2.不小心點(diǎn)錯(cuò)或關(guān)閉了各種小窗口,將Matlab恢復(fù)成默認(rèn)布局
點(diǎn)擊桌面—桌面布局—默認(rèn)
3.查看某個(gè)函數(shù)的用法
在命令窗口輸入該變量的名稱,回車(chē)即可。
4.查找某個(gè)函數(shù)的用法
在命令窗口輸入help+函數(shù)的名稱,回車(chē)后會(huì)自動(dòng)顯示該函數(shù)的相關(guān)信息。
5.運(yùn)行文件后報(bào)錯(cuò) 如下圖所示,命令窗口中報(bào)錯(cuò)的第一段是錯(cuò)誤的原因,后面幾段會(huì)顯示發(fā)生錯(cuò)誤的文件夾以及在該文件夾中的位置。
點(diǎn)擊文件的名稱,會(huì)跳轉(zhuǎn)出一個(gè)提示框,上面顯示了該文件的具體實(shí)現(xiàn)功能,如下圖所示。點(diǎn)擊文件名后面的行標(biāo)號(hào),可以直接跳轉(zhuǎn)到發(fā)生錯(cuò)誤的那一行。
6.如何編輯界面?
修改如圖所示的fig文件
1.新建一個(gè)GUI文件
2.選擇打開(kāi)現(xiàn)存的GUI文件,點(diǎn)擊Open,就可以對(duì)當(dāng)前界面進(jìn)行編輯了。
7.如何將MAtlab中默認(rèn)的current folder修改為自己想要的路徑,每次啟動(dòng)后都默認(rèn)是自己 設(shè)定的這個(gè)路徑?
>>右鍵matlab 快捷方式,屬性-快捷方式-起始位置 填入你自己的工作目錄。8.把圖復(fù)制到WORD文件的方法:電機(jī)EDIT—>Copy Figure—>Ctrl+V 9.輸入時(shí),標(biāo)點(diǎn)必須是英文狀態(tài)下的
10.大多數(shù)情況下,matlab對(duì)空格不予處理
11.小括號(hào)代表運(yùn)算級(jí)別,中括號(hào)用于生成矩陣,大括號(hào)用于構(gòu)成單元數(shù)組
12.分號(hào);的作用:不顯示運(yùn)算結(jié)果,但對(duì)圖形窗口不起作用。分號(hào)也用于區(qū)分行,13.逗號(hào),的作用:函數(shù)參數(shù)分隔符,也用于區(qū)分行,顯示運(yùn)算結(jié)果,當(dāng)然不加標(biāo)點(diǎn)也顯示運(yùn)算結(jié)果
14.冒號(hào):多用于數(shù)組
15.續(xù)行號(hào)...不能放在等號(hào)后面使用,不能放在變量名中間使用,起作用時(shí)默認(rèn)顯藍(lán)色 16.雙引號(hào)'string'是字符串的標(biāo)識(shí)符 17.感嘆號(hào)!用于調(diào)用操作系統(tǒng)運(yùn)算
18.百分號(hào)%是注釋號(hào),百分號(hào)后面直到行末的語(yǔ)句matlab跳過(guò)執(zhí)行.另外還有一個(gè)塊注釋?zhuān)磳?duì)多行一次注釋?zhuān)瑫?huì)使用到,格式為(注意%{ 和%}都要單獨(dú)成行)%{ %} 19.矩陣中用圓括號(hào)表示下標(biāo),單元數(shù)組用大括號(hào)表示下標(biāo)
20.對(duì)變量名的基本要求:區(qū)分大小寫(xiě),不超過(guò)63個(gè)字符,以字母開(kāi)頭,只能是字母,數(shù)字和下劃線
三、Matlab常用代碼(圖像處理相關(guān))
1.創(chuàng)建一個(gè)文件夾 mkdir('D:myData');2.將圖片保存到指定的文件夾
image_source=strcat('result',num2str(loop),'.jpg');imwrite(F.cdata,image_source);3.將電影轉(zhuǎn)成圖片序列
fnum=size(mov,2);%讀取電影的禎數(shù) for i=1:fnum strtemp=strcat('C:UsersAdministratorDesktopparticalfiltermyself粒子濾波',int2str(i),'.jpg');%將每禎轉(zhuǎn)成jpg的圖片 imwrite(mov(i).cdata,strtemp,'jpg');end
4、模擬噪聲生成函數(shù)和預(yù)定義濾波器
① imnoise:用于對(duì)圖像生成模擬噪聲,如:
i=imread('104_8.tif');j=imnoise(i,'gaussian',0,0.02);%模擬高斯噪聲 ② fspecial:用于產(chǎn)生預(yù)定義濾波器,如: h=fspecial('sobel');%sobel水平邊緣增強(qiáng)濾波器 h=fspecial('gaussian');%高斯低通濾波器 h=fspecial('laplacian');%拉普拉斯濾波器
h=fspecial('log');%高斯拉普拉斯(LoG)濾波器 h=fspecial('average');%均值濾波器
5、圖像文件I/O函數(shù)命令
imfinfo 返回圖形圖像文件信息
語(yǔ)法:info=imfinfo(filename,fmt)info=imfinfo(filename)imread 從圖像文件中讀?。ㄝd入)圖像
語(yǔ)法:A=imread(filename,fmt)[X,map]=imread(filename,fmt)[...]=imread(filename)[...]=imread(URL,...)[...]=imread(...,idx)(CUR,ICO,and TIFF only)[...]=imread(...,'frames',idx)(GIF only)[...]=imread(...,ref)(HDF only)[...]=imread(...,'BackgroundColor',BG)(PNG only)[A,map,alpha] =imread(...)(ICO,CUR,PNG only)imwrite 把圖像寫(xiě)入(保存)圖像文件中
語(yǔ)法:imwrite(A,filename,fmt)imwrite(X,map,filename,fmt)imwrite(...,filename)imwite(...,Param1,Val1,Param2,Val2...)imcrop 剪切圖像
語(yǔ)法:I2=imcrop(I)X2=imcrop(X,map)RGB2=imcrop(RGB)I2=imcrop(I,rect)X2=imcrop(RGB,rect)[...]=imcrop(x,y,...)[A,rect]=imcrop(...)[x,y,A,rect]=imcrop(...)
6.impixel 確定像素顏色值
語(yǔ)法:P=impixel(I)P=impixel(X,map)P=impixel(RGB)P=impixel(I,c,r)P=impixel(X,map,c,r)P=impixel(RGB,c,r)[c,r,P]=impixel(...)P=impixel(x,y,I,xi,yi)P=impixel(x,y,RGB,xi,yi)P=impixel(x,y,X,map,xi,yi)[xi,yi,P]=impixel(x,y,...)
7.二進(jìn)制圖像操作函數(shù)
applylut 在二進(jìn)制圖像中利用lookup表進(jìn)行行邊沿操作 語(yǔ)法:A=applylut(BW,LUT)bwarea 計(jì)算二進(jìn)制圖像對(duì)象的面積 語(yǔ)法:total=bwarea(BW)bweuler 計(jì)算二進(jìn)制圖像的歐拉數(shù) 語(yǔ)法:eul=bweuler(BW)
8.顏色空間轉(zhuǎn)換函數(shù)
hsv2rgb 轉(zhuǎn)換HSV值為RGB顏色空間:M=hsv2rgb(H)ntsc2rgb 轉(zhuǎn)換NTSC值為RGB顏色空間:rgbmap=ntsc2rgb(yiqmap)RGB=ntsc2rgb(YIQ)rgb2hsv 轉(zhuǎn)換RGB值為HSV顏色空間:cmap=rgb2hsv(M)rgb2ntsc 轉(zhuǎn)換RGB值為NTSC顏色空間:yiqmap=rgb2ntsc(rgbmap)YIQ=rgb2ntsc(RGB)rgb2ycbcr 轉(zhuǎn)換RGB值為YCbCr顏色空間:ycbcrmap=rgb2ycbcr(rgbmap)YCBCR=rgb2ycbcr(RGB)ycbcr2rgb 轉(zhuǎn)化YCbCr值為RGB顏色空間:rgbmap=ycbcr2rgb(ycbcrmap)RGB=ycbcr2rgb(YCBCR)
9.類(lèi)型轉(zhuǎn)換函數(shù)
im2bw 轉(zhuǎn)換圖像為二進(jìn)制圖像
語(yǔ)法:BW=im2bw(I,level)BW=im2bw(X,map,level)BW=im2bw(RGB,level)im2double 轉(zhuǎn)換圖像矩陣為雙精度型
語(yǔ)法:I2=im2double(I1)RGB2=im2double(RGB1)I=im2double(BW)X2=im2double(X1,'indexed')double 轉(zhuǎn)換數(shù)據(jù)為雙精度型 語(yǔ)法:double(X)unit8、unit16轉(zhuǎn)換數(shù)據(jù)為8位、16位無(wú)符號(hào)整型: i=unit8(x)i=unit16(x)im2unit8 轉(zhuǎn)換圖像陣列為8位無(wú)符號(hào)整型
語(yǔ)法:I2=im2unit8(I1)RGB2=im2unit8(RGB1)I=im2unit8(BW)X2=im2unit8(X1,'indexed')im2unit16 轉(zhuǎn)換圖像陣列為16位無(wú)符號(hào)整型
語(yǔ)法:I2=im2unit16(I1)RGB2=im2unit16(RGB1)I=im2unit16(BW)X2=im2unit16(X1,'indexed')
四、Matlab常用快捷鍵
1.在命令窗口(Command Window)中:
1)【上、下鍵】――切換到之前、之后的命令,可以重復(fù)按多次來(lái)達(dá)到你想要的命令
2)clc――清除命令窗口顯示的語(yǔ)句,此命令并不清空當(dāng)前工作區(qū)的變量,僅僅是把屏幕上顯示出來(lái)的語(yǔ)句清除掉
3)clear――這個(gè)才是清空當(dāng)前工作區(qū)的變量命令,常用語(yǔ)句clear all來(lái)完成 4)【Tab】鍵――在command窗口,輸入一個(gè)命令的前幾個(gè)字符,然后按tab鍵,會(huì)彈出前面含這幾個(gè)字符的所有命令,找到你要的命令,回車(chē),就可以自動(dòng)完成。目前討論結(jié)果是:matlab6.5版本中,如果候選命令超過(guò)100個(gè),則不顯示。而在matlab7以后版本中,則沒(méi)有這個(gè)限制,均可正常提示 5)【Ctrl+C】(或【Ctrl+Break】)――在matlab程序運(yùn)行過(guò)程中,可能由于程序編寫(xiě)的失誤,導(dǎo)致程序不停的運(yùn)行,在命令窗口輸入“Ctrl+C”可以將運(yùn)行的程序停下來(lái),而不需要將整個(gè)Matlab程序關(guān)掉。不過(guò)進(jìn)行此操作的前提是能夠激活切換到命令窗口才行。6)edit+函數(shù)名 查看或編輯源文件 7)who 顯示當(dāng)前變量名列表 8)whos 顯示變量詳細(xì)列表
9)which+函數(shù)名 證實(shí)該函數(shù)是否在當(dāng)前路徑 10)what 列出當(dāng)前路徑的所有matlab文件 11)load 加載外部文件 12)save 保存文件到外部 13)20.matlab的幫助函數(shù): 14)help 15)help+函數(shù)名或help+函數(shù)類(lèi)名 精確查詢 16)helpwin 打開(kāi)幫助窗口 17)helpwin+函數(shù)名 精確查詢 18)helpdesk 打開(kāi)幫助窗口 19)doc 打開(kāi)幫助窗口
20)doc+函數(shù)名 打開(kāi)幫助窗口,精確查詢
21)lookfor+關(guān)鍵字 這個(gè)是matlab中的谷歌,模糊查詢
2.在編輯器(Editor)中: 1)【Tab】(或【Ctrl+]】)――增加縮進(jìn)(對(duì)多行有效)2)3)4)5)6)【Ctrl+[】--減少縮進(jìn)(對(duì)多行有效)
【Ctrl+I】--自動(dòng)縮進(jìn)(即自動(dòng)排版,對(duì)多行有效)【Ctrl+R】――注釋?zhuān)▽?duì)多行有效)【Ctrl+T】――去掉注釋?zhuān)▽?duì)多行有效)
【Ctrl+B】――括號(hào)配對(duì)檢查(對(duì)版本6.5有效,但版本7.0無(wú)效,不知道是取消了還是換了另外的快捷鍵,請(qǐng)大牛們指點(diǎn),其他版本沒(méi)有測(cè)試過(guò))7)【F12】――設(shè)置或取消斷點(diǎn) 8)【F5】――運(yùn)行程序
五、Matlab學(xué)習(xí)心得
接觸Matlab一個(gè)多月,從剛開(kāi)始連最基本的操作都不會(huì),到現(xiàn)在能夠熟練地運(yùn)用Matlab解決問(wèn)題。雖然現(xiàn)在學(xué)到的也只是皮毛而已,離精通還相差甚遠(yuǎn),但至少為以后研究生期間的學(xué)習(xí)打下了良好的基礎(chǔ)。下面我就簡(jiǎn)單的談一下這一個(gè)月來(lái)的學(xué)習(xí)感想。
首先,想要學(xué)好Matlab必須有一定數(shù)學(xué)基礎(chǔ)。Matlab軟件是與高等數(shù)學(xué),計(jì)算機(jī)科學(xué)相結(jié)合的軟件。所以,當(dāng)你學(xué)習(xí)Matlab時(shí),你也得會(huì)一定的數(shù)學(xué)。你要盡量多的熟悉matlab自帶的函數(shù),及其作用,因?yàn)閙atlab的自帶函數(shù)特別多,基本上能夠滿足一般的數(shù)據(jù)和矩陣的計(jì)算,所以基本上不用你自己編函數(shù)。這一點(diǎn)對(duì)你的程序非常有幫助,可以使你的程序簡(jiǎn)單,運(yùn)行效率高,可以節(jié)省很多時(shí)間。
其次,要注重基礎(chǔ)知識(shí)于實(shí)際操作結(jié)合。你把基本的知識(shí)看過(guò)之后,就需要找一個(gè)實(shí)際的程序來(lái)動(dòng)手編一下,不要等所有的知識(shí)都學(xué)好之后再去編程,你要在編程的過(guò)程中學(xué)習(xí),程序需要什么知識(shí)再去補(bǔ)充。在遇到問(wèn)題時(shí),不要光看別人如果解決,也不要光想怎么解決,自己坐下來(lái),動(dòng)手自己解決一下,那你就會(huì)把不是你的知識(shí)變成自己的知識(shí)。
最后,也是最重要的一點(diǎn)就是堅(jiān)持。MATLAB涉及的領(lǐng)域太多,每個(gè)領(lǐng)域里面都缺乏足夠的專(zhuān)家分布在你周?chē)?。那么我們很難有機(jī)會(huì)接觸到真正的高手,對(duì)我們的技術(shù)細(xì)節(jié)一一指點(diǎn)。在遇到實(shí)際問(wèn)題時(shí),就只能靠自己去摸索。常常是再堅(jiān)持一兩個(gè)小時(shí),就能夠解決你的問(wèn)題。最大的成就感,就在付出了極大的心血和耐心,才取得一個(gè)艱難的小勝利。
第四篇:Matlab學(xué)習(xí)總結(jié)
學(xué)Matlab有感
姓名:王鴻棟 學(xué)號(hào):20090286 班級(jí): 03310901 我對(duì)于計(jì)算機(jī)編程接觸的比較晚,也沒(méi)有特別大的興趣。不過(guò)對(duì)于Matlab這門(mén)課我還是很喜歡的。一是這個(gè)語(yǔ)言可以變出程序繪出函數(shù)的圖形,這就使得這個(gè)語(yǔ)言可以被“看見(jiàn)”,感覺(jué)比較親切,不是那么縹緲空虛的東西。二是這個(gè)語(yǔ)言卻是很“友好”,很人性化,像我剛學(xué)習(xí)這門(mén)語(yǔ)言,還什么都不會(huì)編的時(shí)候,我隨便打出了一句help,界面上就輸出了幫助文檔。三是這個(gè)語(yǔ)言的強(qiáng)大的功能,1.3G不是白給的,很多C、java里需要用循環(huán)語(yǔ)句來(lái)完成的,在Matlab里只需要一句話就可以搞定了,剛上這門(mén)課時(shí)老師說(shuō)C一堂課講授的內(nèi)容Matlab一句話就可以搞定了,看來(lái)不是假的。四是這門(mén)語(yǔ)言確實(shí)很有用,信號(hào)與系統(tǒng)課上學(xué)的很多內(nèi)容都可以用Matlab來(lái)仿真,另外這門(mén)語(yǔ)言在很多其他的領(lǐng)域也都很有用,所以,我打算好好學(xué)習(xí)這門(mén)語(yǔ)言。
第一次交作業(yè)時(shí)我還只交上了兩道題,那時(shí)候?qū)@門(mén)語(yǔ)言接觸得還比較少,但是就在交作業(yè)的那天我打算好好學(xué)習(xí)這門(mén)語(yǔ)言,而且在寫(xiě)作業(yè)的時(shí)候我確實(shí)喜歡上了這門(mén)語(yǔ)言。雖然第一次由于時(shí)間倉(cāng)促只交上了兩道題,可是那都是我自己寫(xiě)的,我覺(jué)得只有這樣才能學(xué)到東西。第二天,在別人都在做第二次作業(yè)的時(shí)候,我卻仍然在做第一次作業(yè),我打算把第一次的作業(yè)完整的寫(xiě)一遍,即使這對(duì)我的分?jǐn)?shù)一點(diǎn)幫助也沒(méi)有。第二次作業(yè)我提前好幾天就寫(xiě)完了,雖然沒(méi)有完成全部的題目。我把第一第二次作業(yè)一起交了上去,我希望老師能幫我看一看。
上面只是對(duì)這門(mén)課程的一些懷念,課程已經(jīng)結(jié)束了,不過(guò)我會(huì)繼續(xù)學(xué)習(xí)這門(mén)語(yǔ)言的。下面就針對(duì)這次作業(yè)的要求,給這門(mén)課提一些看法,畢竟這才是正題。MATLAB 產(chǎn)品族可以用來(lái)進(jìn)行以下各種工作:
● 數(shù)值分析
● 數(shù)值和符號(hào)計(jì)算
● 工程與科學(xué)繪圖
● 控制系統(tǒng)的設(shè)計(jì)與仿真
● 數(shù)字圖像處理
● 數(shù)字信號(hào)處理
● 通訊系統(tǒng)設(shè)計(jì)與仿真
● 財(cái)務(wù)與金融工程
MATLAB 的應(yīng)用范圍非常廣,包括信號(hào)和圖像處理、通訊、控制系統(tǒng)設(shè)計(jì)、測(cè)試和測(cè)量、財(cái)務(wù)建模和分析以及計(jì)算生物學(xué)等眾多應(yīng)用領(lǐng)域。附加的工具箱(單獨(dú)提供的專(zhuān)用 MATLAB 函數(shù)集)擴(kuò)展了 MATLAB 環(huán)境,以解決這些應(yīng)用領(lǐng)域內(nèi)特定類(lèi)型的問(wèn)題。說(shuō)實(shí)在的想完全掌握全部的基本上是不可能的,就像dsp一樣,應(yīng)用的范圍很廣,想一口吃可能不行,所以要結(jié)合專(zhuān)業(yè)來(lái)學(xué)習(xí)才好!
對(duì)于我們這些學(xué)習(xí)了C語(yǔ)言的學(xué)生,編程基本的語(yǔ)法學(xué)習(xí)起來(lái)很快的,和c語(yǔ)言很類(lèi)似,而且是支持c語(yǔ)言函數(shù)的,或者說(shuō)函數(shù)就是用c語(yǔ)言編的,完全是解釋性的語(yǔ)言,像打草稿一樣,可以一句句的編譯,看結(jié)果的。
等我們編到基本的熟悉之后就可以編輯函數(shù)了,-------這個(gè)其實(shí)用的不多,為了應(yīng)用的話,老師建議開(kāi)始編寫(xiě)M文件,也就是把程序都寫(xiě)在m文件里面,然后編譯,調(diào)試,根據(jù)錯(cuò)誤信息來(lái)調(diào)試。
至于和專(zhuān)業(yè)相關(guān)的方面就說(shuō)說(shuō)自動(dòng)化方面吧!和控制理論,fft,用的比較多,根軌跡,相平面,傳遞函數(shù),拉普拉斯變換,奈氏曲線什么的,基本上都可以解決
03310901班
王鴻棟 20090286 對(duì)于授課方式,我覺(jué)得上課時(shí)老師是結(jié)合信號(hào)與系統(tǒng)來(lái)講的,就是說(shuō)課程的定位就是交給我們解決信號(hào)與系統(tǒng)方面問(wèn)題的一個(gè)方法。我覺(jué)得Matlab功能遠(yuǎn)遠(yuǎn)不止于此。而且老師在課上講程序都是一帶而過(guò),我覺(jué)得講授的程序不必很多,一堂課只講幾個(gè)程序,但是對(duì)于每個(gè)程序,如果老師都能給我們進(jìn)行分析,把這個(gè)程序?qū)⒚靼琢?,那么這堂課我們就能學(xué)到很多東西。而且這樣講課也不會(huì)使我們覺(jué)得枯燥。
對(duì)提高M(jìn)atlab編程能力的方法,我想主要有以下三個(gè): 1.查help 2.多上上論壇,搜索帖子、發(fā)帖子問(wèn)人 3.閱讀別人、特別是牛人的程序
當(dāng)然了,正如所有的程序語(yǔ)言一樣,“3分課本7分上機(jī)”,一定要?jiǎng)邮植判?,不能光看。多想、多思考、多嘗試,才是正路。
最后,整理一下常用的快捷鍵(用【】表示)或命令: 1.在命令窗口(Command Window)中:
1)【上、下鍵】――切換到之前、之后的命令,可以重復(fù)按多次來(lái)達(dá)到你想要的命令 2)clc――清除命令窗口顯示的語(yǔ)句,此命令并不清空當(dāng)前工作區(qū)的變量,僅僅是把屏幕上顯示出來(lái)的語(yǔ)句清除掉
3)clear――這個(gè)才是清空當(dāng)前工作區(qū)的變量命令,常用語(yǔ)句clear all來(lái)完成
4)【Tab】鍵――(在command窗口,輸入一個(gè)命令的前幾個(gè)字符,然后按tab鍵,會(huì)彈出前面含這幾個(gè)字符的所有命令,找到你要的命令,回車(chē),就可以自動(dòng)完成。目前討論結(jié)果是:Matlab6.5版本中,如果候選命令超過(guò)100個(gè),則不顯示。而在Matlab7以后版本中,則沒(méi)有這個(gè)限制,均可正常提示
5)【Ctrl+C】(或【Ctrl+Break】)――在Matlab程序運(yùn)行過(guò)程中,可能由于程序編寫(xiě)的失誤,導(dǎo)致程序不停的運(yùn)行,在命令窗口輸入“Ctrl+C”可以將運(yùn)行的程序停下來(lái),而不需要將整個(gè)Matlab程序關(guān)掉。不過(guò)進(jìn)行此操作的前提是能夠激活切換到命令窗口才行,呵呵。
2.在編輯器(Editor)中: 1)【Tab】(或【Ctrl+]】)――增加縮進(jìn)(對(duì)多行有效)2)【Ctrl+[】--減少縮進(jìn)(對(duì)多行有效)
3)【Ctrl+I】--自動(dòng)縮進(jìn)(即自動(dòng)排版,對(duì)多行有效)4)【Ctrl+R】――注釋?zhuān)▽?duì)多行有效)5)【Ctrl+T】――去掉注釋?zhuān)▽?duì)多行有效)
6)【Ctrl+B】――括號(hào)配對(duì)檢查(對(duì)版本6.5有效,但版本7.0無(wú)效,不知道是取消了還是換了另外的快捷鍵,請(qǐng)大牛們指點(diǎn),其他版本沒(méi)有測(cè)試過(guò))
7)【F12】――設(shè)置或取消斷點(diǎn) 8)【F5】――運(yùn)行程序
其余的例如在Debug狀態(tài)下的快捷鍵可以自己看菜單。
就說(shuō)這么多,通過(guò)這個(gè)小學(xué)期,我覺(jué)得自己真的學(xué)到了很多!
03310901班
王鴻棟 20090286
第五篇:Matlab常用指令總結(jié)
概論
format long顯示更多位數(shù) format short顯示少位數(shù)
format hex將數(shù)字顯示為十六進(jìn)制浮點(diǎn)數(shù),(3fb999999999999a,a-f代表十六進(jìn)制數(shù),前三字符為)
double()將數(shù)字轉(zhuǎn)化為雙精度浮點(diǎn)數(shù) ezplot(f,0,4)繪制f函數(shù)[0,4]圖像 plot(x,y)繪制點(diǎn)或者連線 zeros(n,1)產(chǎn)生n維0向量
fibonacci(n)產(chǎn)生N個(gè)斐波那契數(shù)
求解矩陣
sum(A)對(duì)每一列的矩陣元素求和 a’為將矩陣A轉(zhuǎn)置
sum(diag(A))矩陣A主對(duì)角元素之和 flipud(A)將A翻過(guò)來(lái)(上下)det(A)求A行列式的解 inv(A)求A的逆矩陣
norm(A)矩陣范數(shù)eig(A)特征值svd(A)奇異值 a=A(:,[1 3 2 4])交換矩陣二、三列
AX=B可以為X=AB xA=B可以為X=B/A norm(x,1)計(jì)算x的一階范數(shù)即所有數(shù)的和 norm(x,2)方均根 norm(x,inf)取最大值 插值
v=polyinterp(x,y,u)(基于拉格朗日)可以計(jì)算xy組成的點(diǎn)陣插值結(jié)果,u為輸出v對(duì)應(yīng)的取得x 的值u=[,]完整次數(shù)插值 symx=sym(‘x’)創(chuàng)建符號(hào)變量
symx=polyinterp(x,y,symx)利用符號(hào)變量求解 pretty(p)讓p變得規(guī)整 simplify(p)化簡(jiǎn)p v=piecelin(x,y,u)線性分段插值 v=pchip(x,y,u)v=pchiptx(x,y,u)為分段三次埃米特插值及其簡(jiǎn)化版 v=spline(x,y,u)v=splinetx(x,y,u)為三次樣條插值及其簡(jiǎn)化版 interpgui(x,y)可以繪制上述四種插值圖像,直觀 方程求根 【M=2 a=1 b=2 k=0;while b-a>eps x=(a+b)/2;if x^2 > M b=x else a=x end k=k+1;end】
牛頓法,求一次導(dǎo)法
k=0;x=10;/初值
xprev=12;/初值的初值
while abs(x-xprev)>eps*abs(x)xprev=x;
x=0.5*(x+2/x);/x-f(x)/ f(x)的導(dǎo)數(shù)。k=k+1;end
fzero(f(x),初值)/將二分法和割線法和IQI算法收斂速度結(jié)合 fzerotx(f(x),[,])簡(jiǎn)化版本(fzerogui(f(x),[,]))
fmintx(f(x),a,b)ab為區(qū)間,求區(qū)間最小值
最小二乘法
b1= polyval(a1,x)將x值帶入方程a1 c=polyfit(x,y,n)將x,y帶入并用N次多項(xiàng)式擬合,輸出高次到第次。X = lsqcurvefit(FUN,X0,XDATA,YDATA)FUN:用于擬合的函數(shù) X0:迭代初始值
XDATA:要擬合的所有點(diǎn)的X的坐標(biāo) YDATA:要擬合的所有點(diǎn)的Y的坐標(biāo) 最小二乘法手算公式在doc 11/13 f=inline('a(1)*x.^2+a(2)*x+a(3)','a','x')建立多元方程的簡(jiǎn)便方法。ff=@(x,y)x^2+y^2;
積分:
y=quad(@aaa,0,1)辛普森法則應(yīng)用于0-1區(qū)間函數(shù)要加.y=quadtx(f,0,1)
簡(jiǎn)化版 int(‘fun’,a,b)
>>int(sym('x^2'),0,1)直接出公式的,如果輸入數(shù)則出結(jié)果,輸入syms a b 則出公式 >diff('a*x^2',x)數(shù)值微分 diff(x^2,2)為二次導(dǎo)
ode23 顯示的龍格-庫(kù)塔公式 ode45 比較四階和五階的公式p9 歐拉法:
【其實(shí)就是循環(huán)語(yǔ)句構(gòu)成 X=(3:0.01:3.2);k=1:1:20;Y(k)=0;Y(1)=-1;for j=1:20 Y(j+1)=Y(j)+0.01*(X(j)^2+Y(j)^2);end plot(X,Y);】
[x,y]=ode23(ff,[x1,x2],y0)可以直接顯示出x和y的值 高階常微分解見(jiàn)第七章p19頂部和函數(shù)my fun3 邊界初值問(wèn)題見(jiàn)p21底部
編程,繪圖,設(shè)置坐標(biāo)軸,做出自己的坐標(biāo)軸
1.axis([xminxmaxyminymax])
設(shè)置當(dāng)前圖形的坐標(biāo)范圍,分別為x軸的最小、最大值,y軸的最小最大值
2.V=axis
返回包含當(dāng)前坐標(biāo)范圍的一個(gè)行向量
3.axis auto
將坐標(biāo)軸刻度恢復(fù)為自動(dòng)的默認(rèn)設(shè)置
4.axis manual
凍結(jié)坐標(biāo)軸刻度,此時(shí)如果hold被設(shè)定為on,那么后邊的圖形將使用與前面相同的坐標(biāo)軸刻度范圍
5.axis tight
將坐標(biāo)范圍設(shè)定為被繪制的數(shù)據(jù)范圍
6.axis fill
這是坐標(biāo)范圍和屏幕的高寬比,使得坐標(biāo)軸可以包含整個(gè)繪制的區(qū)域。該選項(xiàng)只有在PlotBoxaApectRatio或DataAspectRatioMode被設(shè)置為‘manual’模式才有效
7.axisij
將坐標(biāo)軸設(shè)置為矩陣模式。此時(shí)水平坐標(biāo)軸從左到有取值,垂直坐標(biāo)從上到下
8.axisxy
將坐標(biāo)設(shè)置為笛卡爾模式。此時(shí)水平坐標(biāo)從左到右取值,垂直坐標(biāo)從下到上取值
9.axis equal 10.axis square
將坐標(biāo)軸設(shè)置為正方形
11.axis normal
將當(dāng)前的坐標(biāo)軸框恢復(fù)為全尺寸,并將單位刻度的所有限制取消
12.axis vis3d
凍結(jié)屏幕高寬比,使得一個(gè)三維對(duì)象的旋轉(zhuǎn)不會(huì)改變坐標(biāo)軸的刻度顯示
13.axis off
關(guān)閉所有的坐標(biāo)軸標(biāo)簽、刻度、背景
14.axis on
打開(kāi)所有的坐標(biāo)軸標(biāo)簽、刻度、背