matlab结课论文.doc
《matlab结课论文.doc》由会员分享,可在线阅读,更多相关《matlab结课论文.doc(8页珍藏版)》请在冰点文库上搜索。
山西大同大学matlab课程结课作业
MATLAB程序应用
姓名:
课程序号:
2
班级:
学号:
2013年12月
2013-2014学年MATLAB程序应用结课作业
1.实验内容:
已知,编写一个程序求满足的最大的值以及此时的值。
functionn
n=2;m=1;
whilem<=10^100
m=m.*n;n=n+1;
end
m=m/(n-1);n=n-2;
mn
m=1.7112e+098n=69
2.设,试根据公式编出计算pi的Matlab主程序文件,pi的精度为0.00001。
程序:
k=0;n=1;b=0;a=0;
whileabs((pi-a))>0.00001
a=2*sqrt
(2)*k;
k=(bcos(*pi/2)+sin(b*pi/2))/n+k;
n=n+2;
b=b+1;
end
a
输出a=3.141602572083633;a-pi=9.918493839577991e-006
3.有两个矩阵A和B如下:
,,
将A中所有等于-1的元素改为-2,将B中所有小于0的元素改为1,然后将B中等于0的元素的值改为A的相应位置元素的值。
请用Matlab函数文件实现上述运算。
clear;
clc;
A=[1-168;23-10;-2457;1-177];
B=[-3-76-5;-213-1;0013;26-10];
C=A;A(A==-1)=-2;U=A;
D=B;B(B<0)=1;V=B;
A=C;B=D;[i,j]=find(B==0);A(i,j)=0;W=A;
A=C;B=D;
A,B,W,U,V
%用函数文件实现矩阵中元素的变换。
%A、B为输入变量。
%U、V、W分别存放A、B中间变换结果。
;
4.用matlab主程序文件产生动画:
呈现一小圆(半径为1)在一大圆(半径为3)的圆周外部滚动的动画,要求连续滚动20周。
cleaclose;clc;r;
axis([-66-66],'equal','manual');holdon;
ezplot('x^2+y^2-9');
h=ezplot('x^2+y^2-1');
x=get(h,'xdata');
y=get(h,'ydata');
fort=1:
7200
set(h,'xdata',x+4*cosd(t),'ydata',y+4*sind(t));
drawnow;
end
5.matlab画图命令,以为心,绘制一个正七边形,并填涂成红色。
写出执行语句并画出图形。
提示:
利用fill命令绘图。
theta=linspace(0,2*pi,8);
a=1+sin(theta);
b=cos(theta);
plot(a,b,'r');
axisequal;
fill(a,b,'r')
8
6、(自选题)根据自己专业的信号与系统分析以及个人兴趣,完成一个matlab的综合应用
【题目】
证明时域卷积定理
【思路和方法】
用矩阵形式表示两个函数
算出两个函数的卷积
扩充两个函数的范围以及卷积的范围
写出卷积的傅里叶变换形式
写出两个函数的傅里叶变换形式
比较卷积的傅里叶变换形式和两个函数傅里叶变换的乘积是否相等
【源程序】
f1=[1,2;3,4];
f2=[5,6;7,8];
f3=conv2(f1,f2);%两个函数的卷积
f3(4,4)=0%矩阵扩充
Fa=fft2(f3)%卷积的傅里叶变换
f1(4,4)=0;%矩阵扩充
f2(4,4)=0;%矩阵扩充
F1=fft2(f1);
F2=fft2(f2);
Fb=F1.*F2%两个函数傅里叶变换的乘积
Fa-Fb
【运行结果】
f3=
516120
2260400
2152320
0000
Fa=
1.0e+002*
2.6000-0.3600-1.2800i0.0400-0.3600+1.2800i
-0.7200-1.2200i-0.5600+0.5400i0-0.0200i0.6400-0.1800i
0.16000-0.0800i00+0.0800i
-0.7200+1.2200i0.6400+0.1800i0+0.0200i-0.5600-0.5400i
Fb=
1.0e+002*
2.6000-0.3600-1.2800i0.0400-0.3600+1.2800i
-0.7200-1.2200i-0.5600+0.5400i0-0.0200i0.6400-0.1800i
0.16000-0.0800i00+0.0800i
-0.7200+1.2200i0.6400+0.1800i0+0.0200i-0.5600-0.5400i
ans=
0000
0000
0000
0000
7.意见和建议
尊敬的老师您好:
matlab的学习已经就要结束了,感觉时间飞快,虽然也经历了好几周,但我总感觉时间过的太快,这么说的原因很简单,因为这是我上大学以来唯一一门感觉学着有意思而且用处颇多的课程,还有很多课能用matlab,这让我再一次认识到这个软件的强大与简单易懂,以往枯燥无味而且复杂的自控原理也头一次在这个软件中看起来不那么讨厌了,我没有上网查一大堆的有关MATLAB的资料,简单的几句话就是我学习MATLAB的最真实感想,我喜欢这个软件,我也会花更多的时间去学习这个软件,相信它会给我更大的裨益,虽然实验课上的不理想,使之难以消化,但我想通过我的认真学习,也不算什么,我相信借助matlab它以后会让我们的学习更方便,更简单