《Matlab實驗報告,作業(yè),(函數(shù)圖像)本科課程設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《Matlab實驗報告,作業(yè),(函數(shù)圖像)本科課程設(shè)計(13頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、MATLAB實驗報告
MATLAB實驗報告
學(xué) 院 工學(xué)院
班 級
姓 名
學(xué) 號
二〇一〇年六月
一、 Matlab基本知識
1、 說出Matlab有哪幾個主要界面
答:有菜單項file 、edit 、opion 、windows、 help等項可以選擇。
2、 Matlab的主要功能
答:Matlab能夠提供豐富的矩陣運算處理功能。
2、廣泛的符號運算功能,豐富的繪圖功能與計算結(jié)果的可視化,強(qiáng)大的編程語言,許多學(xué)科所涉及的工具箱,單一命令求解線性系統(tǒng)。二維、三維圖形工具。目前,Matlab已經(jīng)成為線性代數(shù)數(shù)值分析、數(shù)理統(tǒng)計、優(yōu)化方法、自動控制、數(shù)字信號處理,動態(tài)系統(tǒng)仿真等高級課程的基本教學(xué)工具。
3、 簡要敘述Matlab主要窗口的主要功能
答:
1) 命令窗口(command window)主要交互窗口,用于輸入命令并顯示除圖形以外所有執(zhí)行結(jié)果。
2) 工作空間窗口(workspace browser)用于存儲各種變量和結(jié)果的內(nèi)存空間。
3) 當(dāng)前目錄窗口和搜索路徑(current directory)是Matla
3、b運行文件時的工作目錄。
4) 命令歷史記錄窗口(command history)保存自安裝起所有用過的命令歷史記錄。
5) 啟動平臺窗口和start按鈕(launch pad)啟動平臺窗口幫助用戶方便地打開和調(diào)用Matlab的各種程序、函數(shù)和幫助文件。Start彈出Matlab的各種工具
6) Editor/debugger m文件編輯調(diào)試器。用于輸入指令較多,結(jié)構(gòu)比較復(fù)雜的文件
4、 簡單介紹一下M文件作用及其建立M文件的方法
答:當(dāng)待解決的問題所需指令較多,結(jié)構(gòu)比較復(fù)雜時通過創(chuàng)建M文件而將所需的問題命令導(dǎo)入Matlab主程序中。
M文件的創(chuàng)建:
i. 在Matlab命令窗口
4、點擊file菜單→new →m-file
ii. 利用記事本創(chuàng)建M文件
二、 Matlab解決線性代數(shù)問題
1、 求矩陣的轉(zhuǎn)置
◆求矩陣的秩:
a=[1 3 -9 3;1 4 -12 7;-1 0 0 9];
>> k=rank(a)
k = 2
◆求矩陣的特征值和特征向量:
A=[1 2 3;5 4 3;0 1 2];
>> [V,D]=eig(A)
V =
0.4012 -0.4082 0.3663
0.8971 0.8165 -0.8190
0.1848 -0.4082 0.4417
D =
6.
5、8541 0 0
0 0.0000 0
0 0 0.1459
◆求矩陣對應(yīng)的行列式的值:
A=[1 2 3;5 4 3;0 1 2];
>> k=det(A)
k =0
◆求矩陣的逆:
A=[1 2 3;5 4 3;4 2 2];
>> k=inv(A)
k =
-0.1667 -0.1667 0.5000
-0.1667 0.8333 -1.0000
0.5000 -0.5000 0.5000
◆求矩陣的加法
6、A=[1 2 3;5 4 3;4 2 2];B=[2 6 7;7 5 4;9 2 5];
>> k=A+B
k =
3 8 10
12 9 7
13 4 7
◆求矩陣的減法
A=[1 2 3;5 4 3;4 2 2];B=[2 6 7;7 5 4;9 2 5];
>> k=A-B
k =
-1 -4 -4
-2 -1 -1
-5 0 -3
◆求矩陣的乘法
A=[1 2 3;5 4 3;4 2 2];B=[2 6 7;7 5 4;9 2
7、 5];
>> k=A*B
k =
43 22 30
65 56 66
40 38 46
◆求矩陣的冪次方
A=[1 2 3;5 4 3;4 2 2];
>> k=A^2
k =
23 16 15
37 32 33
22 20 22
◆求矩陣的除法
A=[1 2 3;5 4 3;4 2 2];B=[2 6 7;7 5 4;9 2 5];
>> k=A*inv(B)
k =
0.4181 -0.1582 0.1412
8、 0.0226 0.8023 -0.0734
-0.0452 0.3955 0.1469
2、 完成兩個以上的線性代數(shù)中線性方程的求解題目
①>> x1=sym(x1);
>> x2=sym(x2);
>> x3=sym(x3);
>> x4=sym(x4);
>> [x1,x2,x3,x4]=solve(x1-x2+x3-x4-1,x1-x2-x3+x4,x1-x2-2*x3+2*x4+1/2,x1,x2,x3,x4)
x1 =x2+1/2
x2 =x2
x3 =1/2+x4
x4 =x4
②>> x1=sym(x1);
x2=sym(x
9、2);
x3=sym(x3);
x4=sym(x4);
>> [x1,x2,x3,x4]=solve(x1+2*x2-x3-4*x4-4,x2-x3+x4+3,x1+x2-3*x4-1,-2*x2+x3+5*x4-1,x1,x2,x3,x4)
x1 =8
x2 =-16
x3 =-16
x4 =-3
3、 利用所講的矩陣尋訪和操作的命令,完成一個矩陣初等變化的過程
B=[2 2 3 1;4 4 6 2;0 0 1 -1;0 0 -2 2];
>> B(2,:)=B(2,:)-2*B(1,:)
B =
2 2 3 1
10、0 0 0 0
0 0 1 -1
0 0 -2 2
>> B(4,:)=B(4,:)+2B(3,:)
B(4,:)=B(4,:)+2*B(3,:)
B =
2 2 3 1
0 0 0 0
0 0 1 -1
0 0 0 0
>> B([2,4],:)=B([4,2],:)
B =
2 2 3 1
0
11、0 0 0
0 0 1 -1
0 0 0 0
三、 Matlab繪圖
繪制基本的二維圖形:
★圓:
t=-5:0.2:5;
>> x=cos(t);
>> y=sin(t);
>> plot(x,y)
★橢圓:
t=-10:0.2:15;
>> x=25*cos(t);
>> y=16*sin(t);
>> plot(x,y)
★拋物線:
x=-10:0.1:10;
>> y=2*x.^2;
>> plot(x,y)
★二元函數(shù)
x=-10:pi/100:2*p
12、i;
>> y=2*(x.^2)+3*x+5;
>> plot(x,y)
★正弦曲線
x=0:pi/100:2*pi;
>> y=sin(2*x+5);
>> plot(x,y)
★指數(shù)函數(shù)
x=-3:1:20;
>> y=2.^x;
>>plot(x,y)
★空間直線
t=-5:0.4:10;
>> x=2*t+2;
>> y=1-t;
>> z=4*t+3;
>> plot3(x,y,z)
★空間曲面
x=-10:0.4:10;
>> y=-10:0.4:10;
>> [x,y]=meshgrid(x,y);
>> z=14*
13、x+9*y-15;
>> surf(x,y,z)
★空間曲面
x=10:1:50;
>> y=10:1:50;
>> [x,y]=meshgrid(x,y);
>> z=2*x+4*y+x.^2+y.^2;
>> surf(x,y,z)
★單葉雙曲面
ezsurf(3*sec(u)*cos(v),4*sec(u)*sin(v),5*tan(u),[-pi/2,pi/2,0,2*pi]);
>> axis auto
★雙曲拋物面
x=-10:1:30;
>> y=-10:1:20;
>> [x,y]=meshgrid(x,y);
>> z=x.^2/3-
14、y.^2/4;
>> surf(x,y,z)
>>
★橢圓拋物面
x=-10:1:30;
>> y=-10:1:20;
>> [x,y]=meshgrid(x,y);
>> z=(x.^2)/5+(y.^2)/6;
>>surf(x,y,z)
★橢球面
ezsurf(2*sin(u)*cos(v),3*sin(u)*cos(v),cos(u),[0,pi,0,3*pi])
★橢圓拋物面
>> ezsurf(r*3*cos(u),r*4*sin(u),r*r/2,[0,10,0,2*pi])
四、 Matlab解決高等數(shù)學(xué)問題
※求極限的運算
sym
15、s x;
>> f=(sqrt(1+tan(x))-sqrt(1+sin(x)))/(x*sqrt(1+sin(x)^2)-x);
>> limit(f)
ans =
1/2
※求導(dǎo)數(shù)的運算
syms t;
>> y=(exp(x)-exp(-x))/(exp(x)+exp(-x));
>> diff(y)
ans =
1-(exp(x)-exp(-x))^2/(exp(x)+exp(-x))^2
※求高階的運算
>> syms x;
>> y=exp(x)*cos(x);
>> diff(y,4)
ans =
-4*exp(x)*cos(x)
※求積分的
16、運算
syms x y z;
>> f=x;
>> int(int(int(f,x,0,1),y,0,1/2),z,0,1)
ans =
1/4
※求泰勒展開
syms x n;
>> s=symsum(x^n/(n+1),n,0,inf)
s =
-1/x*log(1-x)
※求級數(shù)的運算
syms x;
>> taylor((x.^2-3*x+1).^3,x,1,inf)
ans =
x^6-9*x^5+30*x^4-45*x^3+30*x^2-9*x+1
>> pretty(ans)
6 5 4 3 2
x - 9 x + 30 x - 45 x + 30 x - 9 x + 1
五、 對本課程的看法和改進(jìn)意見。
通過對Matlab的學(xué)習(xí),我能真切感受到計算機(jī)技術(shù)在現(xiàn)代生活中所起的舉足輕重的作用,在計算機(jī)的幫助下,人們可以將很復(fù)雜的現(xiàn)實問題輕而易舉的解決,節(jié)省大量的物力、財力、人力。計算機(jī)技術(shù)使我們的生活更加的方便快捷。
當(dāng)初選這門課程的時候我很猶豫,
12