1MATLAB课程设计.docx

上传人:b****1 文档编号:2098906 上传时间:2022-10-26 格式:DOCX 页数:13 大小:35.15KB
下载 相关 举报
1MATLAB课程设计.docx_第1页
第1页 / 共13页
1MATLAB课程设计.docx_第2页
第2页 / 共13页
1MATLAB课程设计.docx_第3页
第3页 / 共13页
1MATLAB课程设计.docx_第4页
第4页 / 共13页
1MATLAB课程设计.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

1MATLAB课程设计.docx

《1MATLAB课程设计.docx》由会员分享,可在线阅读,更多相关《1MATLAB课程设计.docx(13页珍藏版)》请在冰豆网上搜索。

1MATLAB课程设计.docx

1MATLAB课程设计

课程设计任务书

学生姓名:

杨坚专业班级:

电信1006班

指导教师:

阙大顺,李景松工作单位:

信息工程学院

课程设计名称:

Matlab应用课程设计

课程设计题目:

Matlab运算与应用设计3

初始条件:

1.Matlab6.5以上版本软件;

2.课程设计辅导资料:

“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应用”、线性代数及相关书籍等;

3.先修课程:

高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。

要求完成的主要任务:

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

1.课程设计内容:

根据指导老师给定的7套题目,按规定选择其中1套完成;

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

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

具体设计要求包括:

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

2MATLAB的数值计算:

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

3基本绘图函数:

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

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

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

6按要求参加课程设计实验演示和答辩等。

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

1目录;

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

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

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

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

6参考文献(不少于5篇);

7其它必要内容等。

时间安排:

1.5周(分散进行)

参考文献:

[1](美)穆尔,高会生,刘童娜,李聪聪.MATLAB实用教程(第二版).电子工业出版社,2010.

[2]王正林,刘明.精通MATLAB(升级版).电子工业出版社,2011.

[3]陈杰.MATLAB宝典(第3版).电子工业出版社,2011.

[4]刘保柱,苏彦华,张宏林.MATLAB7.0从入门到精通(修订版).人民邮电出版社,2010.

指导教师签名:

年月日

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

年月日

1.MATLAB的简介

MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

  MATLAB是矩阵实验室(MatrixLaboratory)的简称,和Mathematica、Maple并称为三大数学软件。

它在数学类科技应用软件中在数值计算方面首屈一指。

MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。

在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。

可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

MATLAB应用

MATLAB产品族可以用来进行以下各种工作:

  ●数值分析

  ●数值和符号计算

  ●工程与科学绘图

  ●控制系统的设计与仿真

  ●数字图像处理

  ●数字信号处理

  ●通讯系统设计与仿真

  ●财务与金融工程

MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。

附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。

   

2.具体题目分析

2.1算y1=和y2=

2.1.1理论分析

这是利用matlab处理数值运算的题目。

这其中要用到cos()、sqrt()等函数。

>>y1=20*cos(0.5*pi)/(2+sqrt(3))%计算y1的表达式

y1=

3.2814e-016%y1的计算结果

>>y2=5*cos(0.4*pi)/(4+sqrt(3))%计算y2的表达式

y2=

0.2696%y2的计算结果

我们注意到matlab中的pi与真正的有差距,而且数字与因式相乘要使用乘法符号'*'.通过这个计算,我了解到matlab有处理数据计算的功能。

2.2绘制函数在时的曲线。

利用MATLAB软件绘制曲线图。

在这里用到的是plot命令。

熟悉使用plot及一些画图修饰命令:

xlabel,ylabel,title,legend,axis,gridon。

>>x=0:

0.02:

1;%生成数组

>>y=x.*exp(-x);

>>plot(x,y);%用plot命令画图

>>xlabel('x');ylabel('y');%标注x,y轴

>>title('图形曲线');%标注标题

>>legend('y=x*exp(-x)')%标注函数

>>axis([0,1,0,0.5])%限定x,y范围

>>gridon%显示网格

2.2图

plot命令是很好的画二维函数图像的命令,但取变量数组时因注意数组的步长。

结合其他的一些函数它可以很方便的画出所需区域的函数图像。

可以很轻松的描绘处函数运算之后以及符合函数的图像。

还有就是写命令时注意运算符前加“.”与不加的区别。

2.3用图形表示离散函数。

这道题目中要用到scatter()函数来画离散图。

其中还用到绝对值的函数abs(),还有就是前一题用到的一些修饰命令。

>>n=-44:

56;%生成数组

>>y=abs(n-6).^-1;

>>scatter(n,y,3);%用函数scatter画离散图,3是设定离散点的形状函数还可设定离散点的颜色。

>>xlabel('n');

>>ylabel('y');

>>title('y=abs(n-6).^-1的散点图形');

得到的图像为:

2.3图

2.3.3总结

做这一题时应注意“y=abs(n-6).^-1;”不要写成“y=1/abs(n-6)”不然会出现警告,因为abs(n-6)不能为0。

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

X=0:

0.25:

3;

功能:

生成一向量X,第一个元素为0,最后一个元素的限定值为3,变化步长为0.25。

运行:

因有冒号运行后结果不会显示。

Y=X.*exp(-X);

功能:

由向量X运算得向量Y,指令中exp(-X)是自然数e得-X次方。

运行:

因有冒号运行后结果不会显示。

plot(X,Y),xlabel(‘x’),ylabel(‘y’),title(‘y=x*exp(-x)’);

功能:

绘制以X和Y为横,纵坐标得二维曲线,并且在x轴和y轴标注x,y,还有图形加标题:

y=x*exp(-x)

2.4图

A=zeros(3,5)

功能:

生成3*5阶的全0矩阵

A(:

)=-4:

5

功能:

将数组赋给矩阵

运行结果:

出错因数组的元素个数与矩阵元素个数不等。

我将其改成A(:

)=-4:

10

L=abs(A)>4

功能:

取A的绝对值判断是否大于4生成逻辑值L

islogical(L)

功能:

若L为逻辑值则为真

X=A(L)

运行结果:

>>A=zeros(3,5)

A=

00000

00000

00000

>>A(:

)=-4:

10

A=

-4-1258

-30369

-214710

>>L=abs(A)>4

L=

00011

00011

00011

>>islogical(L)

ans=

1

>>X=A(L)

X=

5

6

7

8

9

10

A=[1:

5;6:

10]

功能:

生成一二维数组

运行结果:

A=

12345

678910

pow2(A)

功能:

求2的A次方

运行结果:

ans=

2481632

641282565121024

A=zeros(3,2)

功能:

生成3*2阶的全0矩阵

运行结果:

A=

00

00

00

A(:

)=1:

6

功能:

将数组赋给矩阵

运行结果:

A=

14

25

36

A=A*(1+i)

功能:

用A成以复数(1+i)转换成复数在赋还给A

运行结果:

A=

1.0000+1.0000i4.0000+4.0000i

2.0000+2.0000i5.0000+5.0000i

3.0000+3.0000i6.0000+6.0000i

A1=A.’;

功能:

生成A的转置矩阵并赋给A1

结果:

A1=

1.0000+1.0000i2.0000+2.0000i3.0000+3.0000i

4.0000+4.0000i5.0000+5.0000i6.0000+6.0000i

B1=A’;

功能:

生成A的转置共轭矩阵并赋给B1

运行结果:

B1=

1.0000-1.0000i2.0000-2.0000i3.0000-3.0000i

4.0-4.0000i5.0000-5.0000i6.0000-6.0000i

A=ones(2,3)

功能:

生成2*3阶的全1矩阵并赋给A

运行结果:

A=

111

111

B=ones

(2)

功能:

生成2*2阶的全1矩阵并赋给B

运行结果:

B=

11

11

C=eye(4)

功能:

生成4*4阶的单位矩阵并赋给C

运行结果:

C=

1000

0100

0010

D=diag(C)

功能:

抽取C的对角向量并赋给D

运行结果:

D=

1

1

1

1

E=repmat(C,1,3)

功能:

将三个矩阵C连接在一起生成一新矩阵并赋给E

运行结果:

E=

Columns1through11

10001000100

01000100010

00100010001

00010001000

Column12

0

0

0

1

2.5计算在x=0.1与10处的值。

2.5.1理论分析

这道题目是运用MATLAB计算多项式。

这里运用到的是polyval()命令。

通过polyval()命令可以很快的计算出在相应值下的多项式的值。

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

当前位置:首页 > 自然科学 > 数学

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

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