matlab实验报告
更新时间:2023-10-28 21:31:01 阅读量: 综合文库 文档下载
- matlab推荐度:
- 相关推荐
华中科技大学文华学院
MATLAB实验报告
专业班级:水利工程104班
学 号:10010303135 学生姓名:吴 小
2011年11月31日
1
3??x?2cost??y?2sin3tt?[0,2?]?1.用蓝色虚线绘制星型线在的图形.
源代码:
t=0:0.1:2*pi; x=2*cos(t).^3; y=2*sin(t).^3; plot(x,y,'--*b') 运行结果:
21.510.50-0.5-1-1.5-2-2-1.5-1-0.500.511.52
?0.5xx?2?2.;编写一个函数,使其能产生如下分段函数:f(x)??1.5?0.25x2?x?6,并调用
?0.5x?6?此函数,绘制x在[0,9],y在[0,1.5]上的f(x)的曲线,要求给x,y轴标注,并
指出最大值的位置,写出完整的程序。
源代码: x=0:0.01:9;
y=asd(x); %调用函数 plot(x,y);
xlabel('x((0-9))'); ylabel('y(0-1.5)');
text(2,1,'(2,1)'); %标定最大值 >> axis([0 9 0 1.5]) %标定x,y的范围 函数:
function y=asd(x) n=length(x); for k=1:n
2
if x(k)<=2
y(k)=0.5*x(k); elseif x(k)>2&x(k)<=6 y(k)=1.5-0.25*x(k); else
y(k)=0.5; end end 运行结果:
1.51(2,1)y(0-1.5)0.50012345x((0-9))6789
体会:在我编写函数时显示了错误,说自变量没有定义,但结果却可以输出运行结果,对此我自己不知道,我只能理解是输出的命令与函数结合得到的结果。
?3.已知连续信号卷积的计算式 求下面两个信号的卷积。
f(t)????f(?)*f12(t??)d? ? 2 t t ) sin( t ) , f (?f1(t)?e2,t?0源代码: syms t; z=2;
f=(exp(-2*t)*sin(z-t));
w=int(f,0,inf) %对f进行积分 运行结果: w =
(2*sin(2))/5 - cos(2)/5
4.从键盘输入一串字符,找出该字符串中所有的数字,并保存成数值数组Digital。 源代码:
3
x='hd78346fg873d4efrf'; f=find(x>='0'&x<='9');
s=x((f)); %重新构造字符串 for n=1:length(s)
gitital(n)=str2num(s(n)); %将数字字符转化为数值类型 end
>> gitital 运行结果: gitital =
7 8 3 4 6 8 7 3 4 体会:这道题使我对字符和字符角标有了很深的体会。
6.将一个屏幕分成4幅,在左上福和右下幅分别绘制下列函数的图形:(1)f(x)?|sin(x)| ,绘制x在[-pi/2,pi/2] 的红色曲线图;
2)f(x,y)?x2y2(32?42,?3?x?3,?4?y?4,绘制该函数,蓝色。
源代码:
x=-pi/2:0.01:pi/2;
f=sqrt(abs(sin(x))); subplot(2,2,1); plot(x,f,'r'); subplot(2,2,2); subplot(2,2,3); subplot(2,2,4);
ezplot('z^2/3^2+y^2/4^2-0.5',[-3,3,-4,4]) 运行结果:
110.50.50-2-1012000.51z2/32+y2/42-0.5 = 01420.5z0-2000.51-4-202y
4
7.以构架数组表示3个人的基本信息,构架数组的每一个构架表示一个人的信息。三个人的基本信息如下: 姓名( Name ) 年龄( Age ) 成绩( Score ) Xujia 20 85 wanglibo 21 100 huangweiguo 20 52 成绩按如下划分区域:满分(100),优秀(90-99),良好(80-89),及格(60-79), %不及格(<60),请标出每个学生的成绩等级。 源代码:
for i = 1:10
a(i) = 89+i; b(i) = 79+i;
c(i) = 69+i; %for循环就相当于一个函数。 d(i) = 59+i; end
c = [d,c]; %及格范围60~79 Name = {' Jack','Marry','Peter'}; %元胞数组 Age={21,21,23}; Mark = {83,56,100};
Rank=cell(1,3); %创建一个1*5的构架数组S,它有三个域。 S = struct('Name',Name,'Age',Age,'Mark',Mark,'Rank',Rank); for i = 1:3
switch S(i).Mark case 100 %得分为100时 S(i).Rank = '满分'; %列为'满分'等级
case num2cell(a) %得分在90和99之间 S(i).Rank = '优秀'; %列为'优秀'等级
case num2cell(b) %得分在80和89之间 S(i).Rank = '良好'; %列为'良好'等级
case num2cell(c) %得分在60和79之间 S(i).Rank = '及格'; %列为'及格'等级 otherwise %得分低于60。 S(i).Rank = '不及格'; %列为'不及格'等级 end end
disp(['学生姓名 ',' 年龄 ',' 得分 ',' 等级']);disp(' ') for i=1:3;
disp([S(i).Name,blanks(6),num2str(S(i).Age),blanks(6),num2str(S(i).Mark),blanks(6), S(i).Rank] ); end
5
运行结果:
学生姓名 年龄 得分 等级 Jack 21 83 良好 Marry 21 56 不及格 Peter 23 100 满分
体会:这道题是通过老师的PPT改编过来的,其中弄清楚了结构体的表达。 8.针对信号t2,计算fourier变换和laplace变换. 源代码:
syms t;
v=fourier(t^2) >> s=laplace(t^2) 运行结果: v=
(-2)*pi*dirac(w, 2) s = 2/s^3 9.计算定积分
?basinxexdx ,计算导数(sinxex)/
源代码: syms x a b;
y=sin(x)*exp(x); r1=int(y,a,b) r2=diff(y) 运行结果: r1 =
(exp(a)*cos(a))/2 - (exp(b)*cos(b))/2 - (exp(a)*sin(a))/2 + (exp(b)*sin(b))/2 r2 =
exp(x)*cos(x) + exp(x)*sin(x)
10.读入一幅图像,提取该图像的边缘信息并显示。 源代码:
RGB=imread('e:\\非主流\\017(1).jpg');
I=rgb2gray(RGB); %原图转换为灰度图像 figure(1); imshow(I);
colorbar('horiz');
ω isgray(I); %边缘检测 ED=edge(I,'sobel',0.08); figure(2); imshow(ED); 运行结果:
6
050100150200250
体会:这是根据书上的例子编写的,知道了如何输入图片。 11.针对函数f(x)=
ex在
x∈{0,0.1,0.2,?,5}上的取值,采用多项式进行拟合,并对x∈
{0.15,0,45,0.75} 分别采用最邻近、双线性和三次样条插值方法进行插值。 源代码: x=0:0.1:5; y=exp(x);
p1=polyfit(x,y,8);
y4=polyval(p1,x); %函数取值拟合 hold on; plot(x,y,'rd'); plot(x,y4,'b--'); xi=0.15:0.3:0.75;
yi_nearest=interpl(x,y,xi,'nearest'); %进行插值 三种方式 yi_linear=interpl(x,y,xi);
yi_spline=interpl(x,y,xi,'spline'); figure; hold on;
subplot(2,2,1);
7
plot(x,y,'ro',xi,yi_nearest,'b-'); title('最邻近插值'); subplot(2,2,2);
plot(x,y,'ro',xi,yi_linear,'b-'); title('线性插值'); subplot(2,2,3);
plot(x,y,'ro',xi,yi_spline,'b-'); title('三次样条插值'); 运行结果:
15010050000.511.522.533.544.55
最邻近插值线性插值15015010010050500024600246三次样条插值1501005000246
8
体会:在做这道题时,也是按照书上例子做的,知道了插值函数的格式和用途对以后作图有帮助,或做表格时知道如何应用。
12.计算脉冲信号和单位正弦信号的卷积。 源代码: t=1:40;
x=zeros(size(t));
x(1)=1; %产生单位脉冲信号 y=sin(t); %单位正弦信号 z=conv(x,y) %信号的卷积 figure
subplot(1,1,1); stem(z);
10.80.60.40.20-0.2-0.4-0.6-0.8-10102030405060708012.对比单位脉冲信号经过一个带阻滤波器前后的频谱。 源代码:
t=1:40; %信号的时间 x=zeros(size(t)); x(1)=1;
[b,a]=butter(10,[0.3 0.7],'stop'); %设计带阻滤波器 y=filter(b,a,x); %滤波 figure; hold on;
stem(t,x,'marker','o'); stem(t,y,'marker','.'); xlabel('时间(s)');
legend('原始信号','滤波后信号'); fx=fft(x);
fx=fftshift(fx);
9
fy=fft(y);
fy=fftshift(fy); figure;
subplot(2,1,1); f=(t-20)/20;
plot(f,abs(fx),'b-',f,abs(fy),'b-.'); xlabel('数字频率(rad)'); title('幅频曲线');
legend('原始信号','滤波后信号'); subplot(2,1,2);
plot(f,angle(fx),'b-',f,angle(fy),'b-.'); xlabel('数字频率(rad)'); title('相频曲线');
legend('原始信号','滤波后信号'); 运行结果:
1 原始信号0.8滤波后信号0.60.40.20-0.2-0.4 0510152025303540时间(s)幅频曲线1.5 原始信号1滤波后信号0.50-1 -0.8-0.6-0.4-0.200.20.40.60.81数字频率(rad)相频曲线4 原始信号2滤波后信号0-2-4-1 -0.8-0.6-0.4-0.200.20.40.60.81数字频率(rad)
10
正在阅读:
matlab实验报告10-28
环保奥运07-11
XX集团公司简介08-23
小学英语教学评价反思07-21
SPSS 正态性检验方法03-13
美丽的冬天,美丽的冬天作文500字03-12
关于帕克的城市社会学理论02-03
制作测定反应时间的反应尺05-07
09工程质量检验制度09-16
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 实验
- 报告
- matlab