matlab报告范文.docx

上传人:b****3 文档编号:26544683 上传时间:2023-06-20 格式:DOCX 页数:23 大小:574.10KB
下载 相关 举报
matlab报告范文.docx_第1页
第1页 / 共23页
matlab报告范文.docx_第2页
第2页 / 共23页
matlab报告范文.docx_第3页
第3页 / 共23页
matlab报告范文.docx_第4页
第4页 / 共23页
matlab报告范文.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

matlab报告范文.docx

《matlab报告范文.docx》由会员分享,可在线阅读,更多相关《matlab报告范文.docx(23页珍藏版)》请在冰豆网上搜索。

matlab报告范文.docx

matlab报告范文

课程设计任务书1

1Matlab软件简介3

2设计题目4

3设计内容6

4课程设计心得18

5参考文献19

6本科生课程设计成绩评定表20

课程设计任务书

学生姓名:

陈冲专业班级:

指导教师:

祝立华工作单位:

信息工程学院

题目:

Matlab运算与应用设计7

初始条件:

l.Mat!

ab6.5以上版本软件;

2•课程设计辅导资料:

"Matlab语言基础及使用入门”、“数字信号处理原理与实现”、"Matlab及在电子信息课程中的应用”等;

3•先修课程:

信号与系统、数字信号处理、MatWb应用实践及信号处理类课程等。

要求完成的主要任务:

(包括课程设计工作量及其技术要求,以及说明书撰

写等具体要求)

1.本课程设计统一技术要求:

研读辅导资料对应章节,对选定的设计题U进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。

具体设计要求包括:

1初步了解Matlab.熟悉Matlab界面、进行简单操作;

2MATLAB的数值计算:

创建矩阵、矩阵运算、多项式运算、线性方程组、数值统计;

3基本绘图函数:

plot,plot3.mesh,surf^,要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定等;

4使用文本编辑器编辑m文件,函数调用;

5能进行简单的信号处理Matlab编程;

2.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括:

1目录;

2与设计题目相关的理论分析、归纳和总结;

3与设计内容相关的原理分析、建模、推导、可行性分析;

4程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结;

5课程设计的心得体会(至少500字);

6参考文献;

其它必要内容等。

时间安排:

指导教师签名:

年月日

系主任(或责任教师)签名:

年月日

1Matlab软件简介

MATLAB是美国MathWorks公司生产的一个为科学和工程计算专门设计的交互式大型软件,是一个可以完成各种精确计•算和数据处理的、可视化的、强大的计算工具。

它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到了广泛应用。

它不仅是一个在各类工程设计中便于使用的训“算工具,而且也是一个在数学、数值分析和工程计算等课程教学中的优秀的教学工具,在世界各地的高等院校中十分流行,在各类工业应用中更有不俗的表现。

MATLAB可以在儿乎所有的PC机和大型计算机上运行,适用于Windows.U\IX等多种系统平台。

1.1MATLAB产生的历史背景

MATLAB名称是山两个英文单词Ma'ix和Laboratory的前二个字母组成。

20世纪70年代后期,美国新墨西哥大学计算机系主任Cleve.Moler教授为了便于教学,减轻学生编写Fortran程序的负担,为两个矩阵运算软件包Linpack和Eispack编写了接口程序,这也许就算MATLAB的第一个版本。

1984年,在JackLittle(也称JohnLittle)的建议推动下,由Little、Moler、SteveBangert三人合作,成立rMathWorks公司,同时把MATLAB正式推向市场。

从那时开始,MATLAB的源代码采用C语言编写,除加强了原有的数值讣算能力外,还增加了数据图形的可视化功能。

1993年,MathWorks公司推出TMATLAB的4.0版本,系统平台山DOS改为Windows,推出了功能强大的、可视化的、交互环境的用于模拟非线性动态系统的工具Simulink,第一次成功开发出了符号计算工具包SymbolicMathToolbox1.0,为MATLAB进行实时数据分析、处理和硬件开发而推出了与外部直接进行数据交换的组件,为MATLAB能融科学计算、图形可视、文字处理于一体而制作了Notebook,实现了MATLAB与大型文字处理软件Word的成功对接。

至此,MathWorks使MATLAB成为国际控制界公认的标准计算软件。

1997年,MathWorks公司推岀了MATLAB的5.0版本,紧接着产生了5.1、

5.2版本,至1999年MATLAB发展到5.3版本。

MATLAB拥有了更丰富的数据类型和结构,更好的面向对象的快速精美的图形界面,更多的数学和数据分析资源,MATLAB工具也达到了25个,儿乎涵盖了整个科学技术运算领域。

在大部分大学里,应用代数、数理统讣、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教材都把MATLAB作为必不可少的内容。

在国际学术界,MATLAB被确认为最准确可靠的科学计算标准软件,在许多国际一流的学术刊物上都可以看到MATLAB在各个领域里的应用。

MATLAB当前推出的最新版本是7.0版(R14),本书无特殊注明均指7.0版。

1.2MATLAB的语言特点和开发环境

MATLAB作为一种科学计算的高级语言之所以受欢迎,就是因为它有丰富的函数资源和工具箱资源,编程人员可以根据自己的需要选择函数,而无需再去编写大量繁琐的程序代码,从而减轻了编程人员的工作负担。

被称为第四代编程语言的MATLAB最大的特点就是简洁开放的程序代码和直观实用的开发环境。

具体地说MATLAB主要有以下特点:

(1)库函数资源丰富

数白种库函数大大减轻了用户子程序的编写工作量,也避免了一些不必要的错误,因而用户也不必担心程序的可弟性问题。

(2)语言精炼,代码灵活

MATLAB的编程语言符合人们的思维习惯,对代码的书写也没有特别严格的控制,语言精炼,程序的亢余度非常小。

(3)运算符多而灵活

MATLAB的内核是用c语言编写的,它为用户提供了和C语言一样多的运算符,用户运用这些运算符可以使程序更加简炼。

(4)面向对象,控制功能优良

MATLAB在5・x各版本中优化了数据结构,使得程序的结构化控制更精良,面向对象的功能更加友善。

特别是当前的7・0版,在可视化编程方面比以前的版本又有了更大的提高,使界面编程更方便、自由。

(5)程序设计自由

MATLAB7.0版支持长变量名达到63个字符,用户可以不对矩阵进行预定义就使用,变量和数组的应用也有了很大的扩展,这为用户编写程序提供了更大的自由度,使编程更加简单、方便。

(6)图形功能强大

在很多程序语言中,绘制图形是一件很麻烦的事情。

但在MATLAB中,只需调用相应的绘图函数即可,既方便乂迅速。

随着硬件的发展和MATLAB7.0推出,MATLAB的图形功能更好,可视化编程能力得到更进一步的提高。

(7)程序的兼容性好

MATLAB可以在各种PC机、大型计算机和各种操作系统上运行。

(8)源代码开放

MATLAB的最重要的特点是源代码的开放性,除了内部函数,所有的MATLAB核心文件和工具箱文件都完全开放,都可渎可改。

用户对源文件修改就可以生成适合自己的源代码文件。

(9)形形色色的工具箱

凡有工具箱的软件大都分为两大部分,就是核心部分和形形色色的匸具箱。

MATLAB有数白个核心内部函数,数十个形形色色的工具箱。

工具箱大致可以分为两大类,一一类是学科性工具箱,另一类是功能性工具箱。

学科性工具箱大都涵盖了本学科所有的已有的基本概念和基本运算,大都十分专业。

如符号数学工具箱,简直就是一个高等数学、工程数学解题器。

极限、导数、微分、积分、级数运算与展开、微分方程求解、Laplace变换等应有尽有。

还有控制系统、信号处理、模糊逻辑、神经网络、小波分析、统计;优化、金融预测等工具箱,无一不是非常优秀的运算工具。

这些工具箱都可以添加自己根据需要编写的函数,用户可以不断更新自己的工具箱,使之更适合于自己的研究和计算

2设计题目

Matlab运算与应用设计7

1.求[100,200]之间第一个能被21整除的整数。

2.绘制余弦曲线尸cos(x)和指数函数y二x"2曲线。

3•计算2+4+6…+100的值,当和大于2000时终止计算。

4.分析下面每条指令的功能并运行,观察执行结果。

a)X二0:

0.25:

3;

Y二X.*exp(-X);

plot(XrY)rxlabel(),ylabel(V).title('y二x*exp(-x)');

(2)A二zeros(2.5)

A(:

)=-4:

5

L=abs(A)>4

islogical(L)

X=A(L)

(3)A=[1:

5;6:

10]

pow2(A)

(4)A=zeros(3,2)

A(:

)=1:

6

A二A*(1+i)

ALA.';

B1二A';

(5)A=ones(2,3)

B二ones

(2)

C二eye(4)

D=diag(0

E=repmat(C.1,3)

5利用while…end循环结构编程求出1+3+5…+101的值。

6.随机生成一个10000X3的矩阵,并绘制其柱状图。

7.利用switch・・・case编写以下程序:

某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):

无折扣

5%折扣

10%折扣

15%折扣

price<200

200

500

Price>1000

输入所售商品的价格,求其实际销售价格。

8.利用函数调用编写函数文件,求半径r分别为0.5与5时圆的面积与周长。

9.已知y=Jcos(t),其中t的范围是[010],计算y的微分和积分并给出曲线图。

10.编写程序,用plot(x,y)绘制下图所示曲线。

3设计内容

3.1求[100,200]之间第一个能被21整除的整数。

3.1.1分析:

利用for循环语句控制,并结合rem函数求得个符合条件的数。

3.1.2程序编码:

»forn=100:

200辻rem(n,21)^=0continue

end

break

end

»n

%控制n从100开始以1为步长出个取值至200:

%判断条件:

整数对21取余不等于0

%结束本次循环,开始下一次循环

%if语句结束标志

%跳岀循环体执行下面的语句

%提示输出n

105

3.1.3程序流程图如(图3~1):

图3-1

3.1.4实验结果进行分析和总结:

利用for语句逐个去值,然后通过if语对rem(n,21)^0进行判断满足条件时,循环继续。

不满足时,结束循环。

输出n的值为105.

3.2绘制余弦曲线y=cos(x)和指数函数y二x"2曲线。

3.2.1分析:

在matlab中绘制函数图像有很多的函数可以完成。

如:

fplot函数plot函数等,不同的函数使用规则是有区别的,合理使用任何一个画图函数得到预期的结果。

3.2.2程序编码:

»y=@(x)cos(x);

»subplot(1,2,1),plot(y,[一pi,pi]);

»y二@(x)x2

»subplot(1,2,2),plot(y,[0,2])

3.2.3函数图像如(图3-2)

图3-2

3.2.4实验结果分析和总结:

利用@创建匿名函数,随机选择2个函数的自变量x的范III。

利用subplot函数将2个函数的图像在同一个窗口中不同的区域显示图像。

3.3计算2+4+6...+100的值,当和大于2000时终止计算。

3.3.1分析:

利用for循环语句来的到累加的效果,并利用while语句控制和大于2000时终止计算。

3.3.2程序编码:

»y二0;

»n=100;

»fori=2:

2:

100

y=y+i;

ify>2000

break;

end

end

»y

y=

2070

3.3.3实验结果分析和总结:

利用for语句使i从2到100逐个取值,利用y二y+i语句实现累加,利用辻y>2000语句最终达到题目要求,求得y二2070。

3.4分析下面每条指令的功能并运行,观察执行结果。

3.4.1X=0:

0.25:

3;

Y=X.*exp(-X);

plot(X,Y),label('x'),label('y'),title(y=x*exp(~x)1;

3.4.1.2程序编码

»X二0:

0.25:

3;

»Y=X.*exp(-X);

»pIot(X,Y),xIabeI('x'),yIabeICy'),titleCy=x*exp(~x)');

3.4.1.3函数图像如(图3-3)

3.4.2A二zeros(2.5)

A(:

)=-4:

5

L=abs(A)>4

islogical(L)

X=A(L)

3.4.2.1分析:

zeros函数建立一个3*5全0矩阵赋给A,在将-4到5内的整数赋给乩形成新的矩阵。

L=abs(A)>4,获得新的矩阵L,通过逻辑函数islogical

得到新的矩阵赋给X。

3.4.2.2程序编码:

»A二zeros(2,5)

A=

00

0

0

0

00

0

0

0

»A(:

)=-4:

5

A=

-4-2

0

2

4

»L二abs(A)>4

L二

00

0

0

0

00

0

0

1

»islogical(L)ans=

1

»X=A(L)

X=

-3

1

3

5

5

3.4.3A=[1:

5;6:

10]

pow2(A)

3.4.3.1分析:

pow2函数的使用。

3.4.3.2程序编码:

»A=[1

:

5;6:

10]

A=

12

3

45

67

8

910

»pow2(A)

ans=

2

4

8

16

32

64

128

256

512

1024

3.4.4A二zeros(3.2)

A(:

)=1:

6

A=A*(1+i)

A1=A.5;

B1二A';

3.4.4.1分析:

A=zeros(3,2)A(:

)=l:

6获得一个新的矩阵,主要是区别…的用法。

前者是求矩阵的共轨转置,后者实现非共轨转置。

3.4.4.2程序编码:

»A=zeros(3,2)

A=

»A(:

)=1:

6

A=

14

25

36»A二A*(1+i)A=

101

404

202

505

303

606

»A1=A.*;B1二A';

3.4.5A二ones(2.3)B=ones

(2)C二eye(4)D二drag(C)E二repeat(C.1,3)

3.4.5.1分析:

ones函数以及eye,drag,repmat函数的使用。

3.4.5.2程序编码:

»A二ones(2.3)

»B=ones

(2)

»C二eye(4)

1000

3.7利用switch…case编写以下程序:

ice来表

某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用pr示):

price<200无折扣

200^price<5005%折扣

500

Price^100015%折扣

输入所售商品的价格,求其实际销售价格。

3.7.1分析:

switch语句根据表达式的取值不同,分别执行不同的语句,其

语句格式为:

switch表达式

case表达式1

语句组1

case表达式2

语句组2

case表达式m语句组motherwise语句组n

end

当表达式的值等于表达式1的值时,执行语句组1,当表达式的值等于表达式2的值时,执行语句组2,…,当表达式的值等于表达式m的值时,执行语句组m,当表达式的值不等于sse所列的表达式的值时,执行语句组n。

当任意一个分支的语句执行完后,直接执行switch语句的下一句。

这个题需要建立mfile文件,来将进行求解。

3.7.2M-file文件程序:

price二input('请输入商品价格');

 

price=

3.7.3程序流程图

3.7.4实验结果分析和总结:

当输入900,fix(price/100)得到为9,符合casenum2cell(5:

9)条件,则rate等于10%,price=900*(1-10%)=810。

3.8利用函数调用编写函数文件,求半径r分别为0.5与5时圆的面积与周长。

3.8.1分析:

在matlab中新建Function~M-fi1e,建立一个函数,求得结果。

3.8.2函数文件:

function[sI]=si(r)s二pi*r"2;

l=2*pi*r;

s

1

%确定变量为s,r,自变量为"

%求面积

%求周长

%显示面积

%显示周长

end

3.8.3程序代码:

»sl(0.5);

0.7854

I=

3.1416»si(5);

78.5398

31.4159

3.9已知y=Jcos⑴,其中t的范围是[010],计算y的微分和积分并给出曲线图

3.9.1分析:

分别利用d辻f,以及int函数求的函数的微分和积分,利用ezplot画图函数得到函数的图像。

注意此处「(-1),用exp(-1)表示。

3.9.2程序编码:

»symsty

»y=exp(-1)*cos(t);

»int(y,0,10)

ans=

(828390857088487*sin(10))/2251799813685248

»pretty(ans)

828390857088487sin(10)

»diff(y.O.10)ans=-(828390857088487*cos(t))/2251799813685248»pretty(a)

828390857088487cos(t)

2251799813685248

»ezplot(y.[0,10])

3.10.1分析:

观察第一个函数图像可以得到函数解析式为,y=3*x+l,X的范圉为:

0=

位是2・观察第二个函数图像,山2条直线组成,yl=-x+l,y2=2*x.纵坐标最小单位为:

0.2,且范围为[1,3],横坐标最小单位为0.1,范围为[0,llo利用holdon语句在同一个坐标下画出2个函数的图像。

3.10.2程序编码:

»x二0:

0.001:

5;

»y=3*x+l:

»plot(x,y),label),label('x‘);

图(3-7)

3.10.4程序编码:

»x二0:

0.1:

1;

»yl二-x+3;

»y2=x+l:

»plot(x,yl),xlabel('x'),ylabel('y');

»holdon

»plot(x,y2)

3.10.5函数图像如(图3-8):

图3-8

4课程设计心得

5参考文献

[1]谭浩强著.C程序设计(第二版)•北京:

清华大学出版社,1999

[2]吴传生主编.经济数学.线性代数(第二版)•北京高等教育出版社,2009

[3]石博强赵金编著.Matlab数学计算与工程分析范例教程北京:

中国铁道出版社

[4]亨赛尔.精通matlab7.北京:

清华大学出版社,2006

本科生课程设计成绩评定表

姓名

陈冲性别男

专业、班级

电信0804

课程设计题目:

Matlab运算与应用设计

课程设计答辩或质疑记录:

成绩评定依据:

最终评定成绩(以优、良、中、及格、不及格评定)

指导教师签字:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1