当前位置:文档之家› Matlab课程设计报告

Matlab课程设计报告

Matlab课程设计报告
Matlab课程设计报告

课程设计任务书

学生姓名:董航专业班级:电信1006班

指导教师:阙大顺,李景松工作单位:信息工程学院

课程设计名称:Matlab应用课程设计

课程设计题目:Matlab运算与应用设计5

初始条件:

1.以上版本软件;

2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应

用”、线性代数及相关书籍等;

3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)

1.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成;

2.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析,

针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括:

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

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

③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简

单图形标注、简单颜色设定等;

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

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

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

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

①目录;

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

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

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

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

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

⑦其它必要内容等。

时间安排:周(分散进行)

参考文献:

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

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

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

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

指导教师签名:年月日

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

目录

1 MATLAB的简介 (1)

2课程设计内容 (4)

(5)

(2)

(2)

(2)

(2)

(2)

(2)

(2)

(2)

(2)

3课程设计心得体会 (1)

4参考文献 (1)

1 Matlab 软件简介

MATLAB产生的历史背景

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

MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple 并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用 MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB 成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

MATLAB的应用:利用MATLAB可以进行以下各种工作

数值计算

数值和符号计算

工程和科学绘图

控制系统的设计与仿真

数字图像处理

数字信号处理

通讯系统设计与仿真

财务与金融工程

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

MATLAB作为一种科学计算的高级语言之所以受欢迎,就是因为它有丰

富的函数资源和工具箱资源,编程人员可以根据自己的需要选择函数,而无需再去编写大量繁琐的程序代码,从而减轻了编程人员的工作负担。被称为第四代编程语言的MATLAB最大的特点就是简洁开放的程序代码和直观实用的开发环境。具体地说MATLAB主要有以下特点:

(1)库函数资源丰富

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

(3)运算符多而灵活

(4)面向对象控制功能优良,使界面编程更方便、自由。

(5)程序设计自由

(6)图形功能强大

(7)程序的兼容性好

(8)源代码开放

(9)形形色色的工具箱

2.课程设计内容

已知t=linspace(0,2*pi,6),求t的正弦和正弦的绝对值。

2.1.1理论分析

该函数linspace()为赋值向量函数,还要用到简单的正弦sin()

和绝对值abs()函数。

程序代码

t = linspace(0,2*pi,6); %产生6维的从0到2*pi等分行向量

sin(t) %求t的正弦值

abs(sin(t)) %求sin(t)的的绝对值

2.1.3程序运行结果

ans =

ans =

2.1.4总结

在matlab中乘号不能不写,也不能写成‘×’。只能写成‘*’。

制函数x

=在1

xe

y-

≤x时的曲线。

0≤

2.2.1理论分析:

这是一个简单的函数,但要了解该函数用程序代码书写的正确和规范,以及了解绘制二维曲线的函数。

2.2.2程序代码

x = 0::1; %x轴上以的速度从0递增到1的数组

y = x.*exp(-x); %y关于x的表达式

plot(x,y) %以x为横坐标y为纵坐标画出二维曲线

2.2.3程序运行结果

2.2.4总结:

在matlab中两数之间应该用‘*’符号,不能省略,而且注意如果是进行向量的运算得用‘.*’运算。

已知a=[1,3,0;2,0,1;4,6,5],a1=logical([1 0 1]),a2=logical([1 1 0]),b=a>1,求a(a1,a2)和a(b)。

2.3.1理论分析:

注意矩阵的赋值以及各种运算

2.3.2程序代码

a = [1,3,0;2,0,1;4,6,5]; %定义a的矩阵并赋值

a1 = logical([1 0 1]); %a1的逻辑值数组

a2 = logical([1 1 0]); %a2的逻辑值数组

b = a > 1; %a,b的逻辑表达式

a(a1,a2) %求矩阵a的1,3行和1,2列的子矩阵

a(b) %求a中大于1的数

2.3.3程序运行结果

ans =

1 3

4 6

ans =

2

4

3

6

5

2.3.4总结

在matlab中矩阵的形式各种各样,还有各种赋值形式,我们要了解矩阵的各种形式以及运算

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

(1) X=0::3;

Y=X.*exp(-X);

plot(X,Y),xlabel(‘x’),

ylabel(‘y’),title(‘y=x*exp(-x)’);

(2)A=zeros(3,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)

A1=A.’;

B1=A’;

(5)A=ones(2,3)

B=ones(2)

C=eye(4)

D=diag(C)

E=repmat(C,1,3)

2.4.1理论分析:

该大题是让我们练习编写代码,观察执行结果,根据结果去了解各个函数的功能及用法,所以我们必须熟练了解一些常用函数的用法。

2.4.1.2程序代码

X=0::3; %生成数组

Y=X.*exp(-X); %y1的表达式

plot(X,Y),xlabel('x'), ylabel('y'),title('y=x*exp(-x)'); %标注x,y轴及标题

2.4.1.3程序运行结果

2.4.2.2程序代码

A = zeros(2,5) %生成一个2×5的全0矩阵

A(:) = -4:5 %将A矩阵赋值

L = abs(A) > 4 %将A中绝对值与4比较后的逻辑值矩阵

islogical(L) %求L的逻辑值

X = A(L) %求出L中逻辑值为1的那个元素对应A的值

2.4.2.3程序运行结果

A =

-4 -2 0 2 4

-3 -1 1 3 5

L =

0 0 0 0 0

0 0 0 0 1

ans =

1

X =

2.4.

3.2程序代码

A = [1:5;6:10] %生成一个二维数组

pow2(A) %求该数组的每个元素的平方值

2.4.

3.3程序运行结果

A =

1 2 3 4 5

6 7 8 9 10

ans =

2 4 8 16 32 64 128 256 512 1024

2.4.4.2程序代码

A=zeros(3,2) %生成一个3行2列的全0 矩阵

A(:)=1:6 %将A从新赋值

A=A*(1+i) %将A中的每个元素进行运算

A1=A.' %求A的转置矩阵

B1=A' %求A的共轭转置矩阵

2.4.4.3程序运行结果

A =

0 0

0 0

0 0

A =

1 4

2 5

3 6

A =

+ +

+ +

+ +

A1 =

+ + +

+ + +

B1 =

- - -

- - -

2.4.5.2程序代码

A = ones(2,3) %生成一个2×3的全为1的矩阵

B = ones(2) %生成一个2×2的全为1的方阵

C = eye(4) %生成一个4阶单位矩阵

D = diag(C) %取C矩阵中的对角元素作为列向量

E = repmat(C,1,3) %将C矩阵复制为1×3块的矩阵

2.4.5.3程序运行结果

A =

1 1 1

1 1 1

B =

1 1

1 1

C =

1 0 0 0

0 1 0 0

0 0 1 0

0 0 0 1

D =

1

1

1

1

E =

1 0 0 0 1 0 0 0 1 0 0 0

0 1 0 0 0 1 0 0 0 1 0 0

0 0 1 0 0 0 1 0 0 0 1 0

0 0 0 1 0 0 0 1 0 0 0 1

总结:

在该程序编程题中,有很多函数,要注意他们的用法以及他们之间的联系,比如A (:) = -4 : 5,是给矩阵数组赋值,在之前zeros()是确定A 的矩阵形式,所以赋值是应与A 数组矩阵有相同多的元素个数,本来原题中是zeros(3,5),但运行时却有错误,是因为zeros (3,5)赋给A ,A 是3×5矩阵共有15个元素,而后来赋值时又只赋给 -4:5 只有10个元素所以就出错了;当改成zeros (2,5)就可以了。还有各种其他函数的功能和用法。

计算101.0235-+=x x y 在x=与10处的值。

2.5.1理论分析:

该题是简单的二元方程带值求解问题,只需用matlab 编写出该方程的表达式,带值即可求解。

2.5.2程序代码

x = ; %将x 初始化为

y = 2*x^5+*x^3-10; %y 关于x 的表达式

y %求当x=时y 的值

x = 10; %将x 赋值为10

y = 2*x^5+*x^3-10; %y 关于x 的表达式

y %求当x=10时y 的值

2.5.3程序运行结果

y =

y =

200090

2.5.4总结:

在写出表达式之前一定要定义出表达式中的变量

求函数333131211n ++++

Λ, n =100的值

2.6.1理论分析:

该题是一道用循环函数编写的数学题

2.6.2程序代码

s = 0; %为s 变量赋初值为0

for i = 1:100 %循环函数,从1到100

s = s+1/i^3; %s 的累加求和表达式

end

s %求s 的值

2.6.3程序运行结果

s =

2.6.4总结:

在这个题目中应该注意s = s+1/i^3的通式的表达,这是一个累加表达式,但是还要注意等比数列的写法。

求1500个元素的随机数向量A中大于的元素个数。

2.7.1理论分析:

该题看起来很简单,其实涉及到了很多方面,产生1500个元素得用的随机函数,依次比较1500个数得用到循环函数,还要看是否大于,所以得用到if函数,再其次就是要用到累加表达式。

2.7.2程序代码

A = rand(1500); %随机函数产生1500个随机数向量赋给一维数组A

s = 0; %给s赋初值0

for i = 1:1500 %循环语句,从1到1500循环1500次

if A(i)> %判断数组A中1500是否大于

s = s+1; %如果大于,则将s的值加1,累计个数

end

end

s %求出s最后的累计值

2.7.3程序运行结果

s =

760

2.7.4总结

要注意随机函数的用法,以及要分析好函数的嵌套,那个rand()是随机函数所以每次产生的数都是不一样的,即每次运行的结果应该是不同的。应该巧妙运用到for函数与if函数的嵌套。

用图形表示连续调制波形)9

y ,运行下面的程序,观察结

t

sin(

)

sin(t

果,并简单说明。

t1=(0:11)/11*pi;

y1=sin(t1).*sin(9*t1);

t2=(0:100)/100*pi;

y2=sin(t2).*sin(9*t2);

subplot(2,2,1),plot(t1,y1,'r.'),axis([0,pi,-1,1]),ti tle('子图 (1)')

subplot(2,2,2),plot(t2,y2,'r.'),axis([0,pi,-1,1]),ti tle('子图 (2)')

subplot(2,2,3),plot(t1,y1,t1,y1,'r.')

axis([0,pi,-1,1]),title('子图 (3)')

subplot(2,2,4),plot(t2,y2)

axis([0,pi,-1,1]),title('子图 (4)')

2.8.1理论分析:

这题是用图形表示连续调制函数y=sin(t)sin(9t)的波形,注意比较几个图得到不同。

2.8.2程序代码

t1 = (0:11)/11*pi; %生成一个0到1/π步距为1/(11*π)的数组

y1 = sin(t1).*sin(9*t1); %y1关于t1的数学表达式

t2 = (0:100)/100*pi; %生成一个0到1/π步距为1/(100*π)的数组

y2 = sin(t2).*sin(9*t2); %y2关于t2的数学表达式

subplot(2,2,1),plot(t1,y1,'r.'),axis([0,pi,-1,1]),title('子图(1)') %指定分成一个图到指定位置,以r的格式画出t1,y1点图形,x轴从0到π,y轴-1到1,标记为子图(1)

subplot(2,2,2),plot(t2,y2,'r.'),axis([0,pi,-1,1]),title('子图(2)') %指定分成一个图到指定位置,以r的格式画出t2,y2点图形,x轴从0到π,y轴-1到1,标记为子图(2)

subplot(2,2,3),plot(t1,y1,t1,y1,'r.') axis([0,pi,-1,1]),title('子图(3)') %指定分成一个图到指定位置,以r的格式画出t1,y1连线的折线图形,x轴从0到π,y轴-1到1,标记为子图(3)

subplot(2,2,4),plot(t2,y2)

axis([0,pi,-1,1]),title('子图(4)') %指定分成一个图到指定位置,以r的格式画出t2,y2默认的曲线图形,x轴从0到π,y轴-1到1,标记为子图(4)

2.8.4总结:

在这几个图中,子图(1)描写函数的能力最差,子图(3)也有较大的失真,因为数据太少。对于离散数据,Plot指令默认处理方法是:自动地把这些离散点用直线连接,使之成为连续曲线。Subplot是指定几号子图。Axis设置平面轴的范围、坐标分割线。

已知方程组

123

123

123

3x x2x9

-5x x+3x5

x x4x8

-+=

?

?

+=

?

?-+=

?

,用矩阵除法来解线性方程组。

2.9.1理论分析:

本题是运用矩阵法来求解线性方程组,在matlab中有很简单实用的方法求解线性方程组

2.9.2程序代码

A = sym([3,-1,2;-5,1,3;1,-1,4]); %将方程组的各个元素的系数定义为符号数组

b = sym([9;5;8]); %将方程组等号后的值定义为符号列向量

X = A\b %解出方程组

2.9.4总结:

将各个方程组的各个元素的的系数赋给A,用到方程组的符号解,矩阵计算是求解线性方程组最简便有效的方法。用sym()符号函数,注意b要用sym(9;5;8),不能用sym(9,5,8)。

已知-1

y e cos(t)

=,其中t的范围是[0 10],计算y的微分和积分并给出曲线图。

2.10.1理论分析:

这是一个求积分和微分的题,以及也涉及到画图函数。有各种不同的画图函数,注意选择方便的。

2.10.2程序代码以及结果:

syms t,y = exp(-1)*cos(t); %定义符号变量

df = diff(y,'t') %将符号t视作变量求y对t的微分

jf = int(y,t) %将符号t作为变量求y对t的积分

subplot(2,1,1),ezplot(df,[0,10]) %在分成后的指定地方绘制微分在0到10之间的曲线图

subplot(2,1,2),ezplot(jf,[0,10]) %在分成后的指定地方绘制积分在0到10之间的曲线图

2.10.3程序运行结果

2.10.4总结

要了解积分和微分函数的运用,该题用到了符号积分和符号微分,对ezplot ()画图函数的运用;

3心得体会

通过这次MATLAB的学习,我对MATLAB有了一个基础的认识,matlab是一个可以完成各种精确计算和数据处理的、可视化的、强大的计算工具。它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到了广泛应用。MATLAB是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程的特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂程序(M文件)后再一起运行。

在这短短的一周内从开始的一头雾水,到自己看书学习,到同学讨论,再进行整个题目的理论分析和计算,参考课程上的代码,写出自己的代码。

我们也明白了学无止尽的道理,在我们所查的很多参考书中,很多知识是我们从没有接触过的,我们对它的了解还仅限于皮毛,对它的很多功能以及函数还不是很了解,所以在这个学习的过程中我们穿越在知识的海洋中,一点一点吸取着它的知识。在MATLAB编程中需要很多的参考书,要尽量多的熟悉matlab自带的函数及其作用,因为matlab的自带函数特别多,基本上能够满足一般的数据和矩阵的计算,所以基本上不用你自己编函数。这一点对程序非常有帮助,可以使程序简单,运行效率高,可以节省很多时间。本次课设中用了很多MATLAB自带的函数,使程序变得很简单。

把基本的知识看过之后,就需要找一个实际的程序来动手编一下,不要等所有的知识都学好之后再去编程,你要在编程的过程中学习,程序需要什么知识再去补充,编程是一点一点积累的,所以你要需做一些随手笔记什么的。

在编写程序代码时,需要什么函数,需要什么模块就应该去着重看那个知识点,不要一步登天,一步一步学,如果太急于把所有东西都学到,也是不好的,更是实现不了的。所以那时一天一天积累的,慢慢地学通这个软件。

总之,通过这次学习,我了解了一下这个软件总体的功能,以及通过自己编写一些代码也学到了一些用法和知识。更了解到了,我们还有好多东西去学,学无止尽。

4参考文献

[1] (美)穆尔,高会生,刘童娜,李聪聪 . MATLAB实用教程(第二版)[M] . 北

京:电子工业出版社,2010.

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

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

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

版社,2010.

[5] 张德丰 . MATLAB在电子信息工程中的应用[M].北京:电子工业出版社,2009.

matlab课程设计题目

课题一: 连续时间信号和系统时域分析及MATLAB实现 课题要求: 深入研究连续时间信号和系统时域分析的理论知识。利用MATLAB强大的图形处理功能、符号运算功能以及数值计算功能,实现连续时间信号和系统时域分析的仿真波形。 课题内容: 一、用MATLAB实现常用连续时间信号的时域波形(通过改变参数,分析其时域特性)。 1、单位阶跃信号, 2、单位冲激信号, 3、正弦信号, 4、实指数信号, 5、虚指数信号, 6、复指数信号。 二、用MATLAB实现信号的时域运算 1、相加, 2、相乘, 3、数乘, 4、微分, 5、积分 三、用MATLAB实现信号的时域变换(参数变化,分析波形变化) 1、反转, 2、使移(超时,延时), 3、展缩, 4、倒相, 5、综合变化 四、用MATLAB实现信号简单的时域分解 1、信号的交直流分解, 2、信号的奇偶分解 五、用MATLAB实现连续时间系统的卷积积分的仿真波形 给出几个典型例子,对每个例子,要求画出对应波形。 六、用MATLAB实现连续时间系统的冲激响应、阶跃响应的仿真波形。 给出几个典型例子,四种调用格式。 七、利用MATLAB实现连续时间系统对正弦信号、实指数信号的零状态响应的仿真波形。 给出几个典型例子,要求可以改变激励的参数,分析波形的变化。 课题二: 离散时间信号和系统时域分析及MATLAB实现。 课题要求: 深入研究离散时间信号和系统时域分析的理论知识。利用MATLAB强大的图

形处理功能、符号运算功能以及数值计算功能,实现离散时间信号和系统时域分析的仿真波形。 课题内容: 一、用MATLAB绘制常用信号的时域波形(通过改变参数分析其时域特性) 1、单位序列, 2、单位阶跃序列, 3、正弦序列, 4、离散时间实指数序列, 5、离散时间虚指数序列, 6、离散时间复指数序列。 二、用MATLAB实现信号的时域运算 1、相加, 2、相乘, 3、数乘。 三、用MATLAB实现信号的时域变换(参数变化,分析波形的变化) 1、反转, 2、时移(超时,延时), 3、展缩, 4、倒相。 四、用MATLAB实现离散时间系统卷积和仿真波形 给出几个典型例子,对每个例子要求画出e(k),h(k),e(i),h(i),h(-i),Rzs(k)波形。 五、用MATLAB实现离散时间系统的单位响应,阶跃响应的仿真波形 给出几个典型例子,四中调用格式。 六、用MATLAB实现离散时间系统对实指数序列信号的零状态响应的仿真波形 给出几个典型例子,要求可以改变激励的参数,分析波形的变化。 课题三: 连续时间信号傅里叶级数分析及MATLAB实现。 课题要求: 深入研究连续时间信号傅里叶级数分析的理论知识,利用MATLAB强大的图形处理功能,符号运算功能以及数值计算功能,实现连续时间周期信号频域分析的仿真波形。 课题内容: 一、用MATLAB实现周期信号的傅里叶级数分解与综合 以周期矩形波信号为例,绘出包含不同谐波次数的合成波形,观察合成波形与原矩形 波形之间的关系及吉布斯现象。

MATLAB课程设计报告

华东交通大学MATLAB程序设计报告书 课题名称:基于MATLAB的粒子群优化算法的实现 姓名: 学号:20160280800014 专业:控制科学与工程 2016年 11月 20日

基于MATLAB的粒子群优化算法的实现 一、课程选题目的 本次课程设计的课题为《基于MATLAB的粒子群优化算法的实现》,主要为学会运用MATLAB对实际算法编程,加深对粒子群优化算法的理解,并为今后熟练使用MA TLAB进行系统的分析仿真和设计奠定基础。数值计算分析可以帮助更深入地理解理论知识,并为将来使用MA TLAB进行各领域数值分析分析和实际应用打下基础。 此次课程主要是为了进一步熟悉对MATLAB软件的使用,以及学会利用MA TLAB对数值运算这种实际问题进行处理,将理论应用于实际,加深对它的理解。 二、粒子群优化算法原理 优化是科学研究、工程技术和经济管理等领域的重要研究工具。它所研究的问题是讨论在众多的方案中寻找最优方案。例如,工程设计中怎样选择设计参数,使设计方案既满足设计要求又能降低成本;资源分配中,怎样分配有限资源,使分配方案既能满足各方面的基本要求,又能获得好的经济效益。在人类活动的各个领域中,诸如此类,不胜枚举。优化这一技术,正是为这些问题的解决,提供理论基础和求解方法,它是一门应用广泛、实用性很强的科学。近十余年来,粒子群优化算法作为群体智能算法的一个重要分支得到了广泛深入的研究,在路径规划等许多领域都有应用。 2.1 粒子群优化算法的起源 粒子群优化(PSO)算法是由Kennedy和Eberhart于1995年用计算机模拟鸟群觅食这一简单的社会行为时,受到启发,简化之后而提出的。 设想这样一个场景:一群鸟随机的分布在一个区域中,在这个区域里只有一块食物。所有的鸟都不知道食物在哪里。但是他们知道当前的位置离食物还有多远。那么找到食物的最优策略是什么呢。最简单有效的方法就是追寻自己视野中目前离食物最近的鸟。如果把食物当作最优点,而把鸟离食物的距离当作函数的适应度,那么鸟寻觅食物的过程就可以当作一个函数寻优的过程。鱼群和鸟群的社会行为一直引起科学家的兴趣。他们以特殊的方式移动、同步,不会相互碰撞,整体行为看上去非常优美。生物学家CargiReynolds提出了一个非常有影响的鸟群聚集模型。在他的模拟模型boids中,每一个个体遵循:避免与邻域个体相冲撞、匹配邻域个体的速度、试图飞向感知到的鸟群中心这三条规则形成简单的非集中控制算法驱动鸟群的聚集,在一系列模拟实验中突现出了非常接近现实鸟群聚集行为的现象。该结果显示了在空中回旋的鸟组成轮廓清晰的群体,以及遇到障碍物时鸟群的分裂和再度汇合过程。由此受到启发,经过简化提出了粒子群优化算法。 2.2粒子群优化算法的原理 在粒子群优化算法中,每个优化问题的潜在解都是搜索空间中的一只鸟,称之为“粒子”。所有的粒子都有一个由被优化的函数决定的适应值,每个粒子还有一个速度决定他们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。优化开始时先初始化为一群随机粒子(随机解)。然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个极值来更新自己。第一个极值就是整个种群目前找到的最优解。这个极值是全局极值。另外也可以不用整个种群而只是用其中一部分作为粒子的邻居,那么在所有邻居中的极值就是局部极值。第二个极值是粒子本身所找到的最优解,称为个体极值。这是因为粒子仅仅通过跟踪全局极值或者局部极值来更新位置,不可能总是获得较好的解。这样在优化过程中,粒子在追随全局极值或局部极值的同时追随个体极值则圆满的解决了这个问题。这就是粒子群优化

MATLAB课设报告

课程设计任务书 学生姓名:董航专业班级:电信1006班 指导教师:阙大顺,李景松工作单位:信息工程学院 课程设计名称:Matlab应用课程设计 课程设计题目:Matlab运算与应用设计5 初始条件: 1.Matlab6.5以上版本软件; 2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应 用”、线性代数及相关书籍等; 3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成; 2.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析, 针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: ①初步了解Matlab、熟悉Matlab界面、进行简单操作; ②MATLAB的数值计算:创建矩阵矩阵运算、多项式运算、线性方程组、数值统计; ③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形 标注、简单颜色设定等; ④使用文本编辑器编辑m文件,函数调用; ⑤能进行简单的信号处理Matlab编程; ⑥按要求参加课程设计实验演示和答辩等。 3.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: ①目录; ②与设计题目相关的理论分析、归纳和总结; ③与设计内容相关的原理分析、建模、推导、可行性分析; ④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; ⑤课程设计的心得体会(至少500字); ⑥参考文献(不少于5篇); ⑦其它必要内容等。 时间安排:1.5周(分散进行) 参考文献: [1](美)穆尔,高会生,刘童娜,李聪聪.MA TLAB实用教程(第二版) . 电子工业出版社,2010. [2]王正林,刘明.精通MATLAB(升级版) .电子工业出版社,2011. [3]陈杰. MA TLAB宝典(第3版) . 电子工业出版社,2011. [4]刘保柱,苏彦华,张宏林. MATLAB 7.0从入门到精通(修订版) . 人民邮电出版社,2010. 指导教师签名:年月日 系主任(或责任教师)签名:年月日

通信原理课程设计报告(基于Matlab)

2DPSK调制与解调系统的仿真 设计原理 (1) 2DPSK信号原理 1.1 2DPSK信号原理 2DPSK方式即是利用前后相邻码元的相对相位值去表示数字信息的一种方式。现假设用Φ表示本码元初相与前一码元初相之差,并规定:Φ=0表示0码,Φ=π表示1码。则数字信息序列与2DPSK信号的码元相位关系可举例表示如2PSK信号是用载波的不同相位直接去表示相应的数字信号而得出的,在接收端只能采用相干解调,它的时域波形图如图2.1所示。 图1.1 2DPSK信号 在这种绝对移相方式中,发送端是采用某一个相位作为基准,所以在系统接收端也必须采用相同的基准相位。如果基准相位发生变化,则在接收端回复的信号将与发送的数字信息完全相反。所以在实际过程中一般不采用绝对移相方式,而采用相对移相方式。定义为本码元初相与前一码元初相之差,假设: →数字信息“0”; →数字信息“1”。 则数字信息序列与2DPSK信号的码元相位关系可举例表示如下: 数字信息: 1 0 1 1 0 1 1 1 0 1 DPSK信号相位:0

或 : 1.2 2DPSK 信号的调制原理 一般来说,2DPSK 信号有两种调试方法,即模拟调制法和键控法。2DPSK 信号的的模拟调制法框图如图1.2.1所示,其中码变换的过程为将输入的单极性不归零码转换为双极性不归零码。 图1.2.1 模拟调制法 2DPSK 信号的的键控调制法框图如图1.2.2所示,其中码变换的过程为将输入的基带信号差分,即变为它的相对码。选相开关作用为当输入为数字信息“0” 时接相位0,当输入数字信息为“1”时接pi 。 图1.2.2 键控法调制原理图 1.3 2DPSK 信号的解调原理 2DPSK 信号最常用的解调方法有两种,一种是极性比较和码变换法,另一种是差分相干解调法。 码变换 相乘 载波 s(t) e o (t)

Matlab课程设计报告

自控系统仿真软件课程设计报告 MATLAB 设计题目:牛顿摆球 姓名: 学号: 院系: 班级:1203 指导教师: 2014年12月20日

一.课程设计目的 1、熟悉课程设计的基本流程; 2、掌握MATLAB语法结构及调试方法; 3、熟悉MATLAB函数调用,熟练二维画图; 4、掌握MATLAB语言在控制方面的运用; 5、学会用MATLAB进行基本仿真; 6、掌握MATLAB编程技巧,提高编程水平。 二.系统分析 1.题目的描述: (1)牛顿摆球原理描述 五个质量相同的球体由吊绳固定,彼此紧密排列。当摆动最右侧的球并在回摆时碰撞紧密排列的另外四个球,最左边的球将被弹出,并仅有最左边的球被弹出。当然此过程也是可逆的,当摆动最左侧的球撞击其它球时,最右侧的球会被弹出。当最右侧的两个球同时摆动并撞击其他球时,最左侧的两个球会被弹出。同理相反方向同样可行,并适用于更多的球。 为了更接近现实,在这里我将考虑重力及空气阻力的影响,摆球将不会永无止境的运动下去,由于外界因素的影响,摆球运动一段时间后将回归静止状态。(2)通过MATLAB动画程序制作软件,实现下述过程 当运行程序时,把最右边的小球拉到一定的高度放下,让其碰撞其余四个小球,仅让最左边的小球被弹出,当最左边小球回摆碰撞其它球时,最右边小球又被弹出,如此循环。由于是非理想条件下,摆球的摆动幅度会随摆动次数的增加越来越小,直到静止。 时间停顿两秒,把右边两小球一起拉到一定高度放下,让其碰撞其余三个球,同样仅让左边两球被弹出,当球回摆再次碰撞时,最右边两球又被同时弹出,如此循环,因为外界因素的影响,最终五个球都会静止下来。 (3)整个实验看似简单,但要在MATLAB上完成这样一个动画过程,还是需要下点功夫,克服困难的。经过自己的努力,终于实现了整个过程,这也是一种不小的收获。 2.设计要求: (1)能够实现有阻尼摆动,即摆幅随摆动次数增加越来越小,直到静止。(2)能够让摆球弧线摆动。 三.系统设计 1.系统设计过程 (1)通过函数axis建立坐标系 (2)在坐标系范围内通过函数line画各个支架 (3)通过函数title添加标题“动量守恒实验”、函数text添加标注“牛顿摆球” (4)通过函数line画出五个球,并设定其初始位置,颜色,大小,线条的擦拭方式

matlab课程设计拟定题目

第一类:单位转换 1.长度单位换算的设计与实现 2.面积单位换算的设计与实现 3.体积单位换算的设计与实现 4.容积单位换算的设计与实现 5.质量单位换算的设计与实现 6.时间单位换算的设计与实现 7.温度单位换算的设计与实现 7.压强单位换算的设计与实现 8.角度单位换算的设计与实现 8.功率单位换算的设计与实现 第二类:曲线绘制 1.直线的自动绘制和相关计算 2.椭圆的自动绘制和相关计算 3.双曲线的自动绘制和相关计算 4.抛物线的自动绘制和相关计算 5.心脏线的自动绘制和相关计算 6.渐开线的自动绘制和相关计算 7.滚圆线的自动绘制和相关计算 8.三叶玫瑰线的自动绘制和相关计算9.四叶玫瑰线的自动绘制和相关计 10.阿基米德螺线的自动绘制和相关计算第三类:曲面绘制 1.球面的自动绘制和相关计算 2.椭球面的自动绘制和相关计算 3.单叶双曲面的自动绘制和相关计算 4.双叶双曲面的自动绘制和相关计算 5.抛物面的自动绘制和相关计算 6.双曲抛物面的自动绘制和相关计算 7.双曲柱面的自动绘制和相关计算 8.椭圆柱面的自动绘制和相关计算 9.抛物柱面的自动绘制和相关计算 10.圆锥面的自动绘制和相关计算 第四类:线性回归 1.男士身高体重相关计算经验公式 2.女士身高体重相关计算经验公式 3.男士胖瘦等级的确定 4.女士胖瘦等级的确定 5.男士身高脚长相关计算经验公式 6.女士身高脚长相关计算经验公式 7.父子身高相关性研究 8.母子身高相关性研究 9.父女身高相关性研究 10.母女身高相关性研究 第五类:学习成绩 1.期末总评自动计算的设计与实现 2.成绩等级自动评定的设计与实现 3.成绩分段自动统计的设计与实现 4.成绩分布折线自动绘制的设计与实现 5.成绩自动统计分析的设计与实现 6.试卷分布自动分析的设计与实现 7.试卷难度自动分析的设计与实现 8.考试成绩名次自动生成的设计与实现

matlab课程设计报告书

《计算机仿真及应用》课程设计报告书 学号:08057102,08057127 班级:自动化081 姓名陈婷,万嘉

目录 一、设计思想 二、设计步骤 三、调试过程 四、结果分析 五、心得体会 六、参考文献

选题一、 考虑如下图所示的电机拖动控制系统模型,该系统有双输入,给定输入)(t R 和负载输入)(t M 。 1、 编制MATLAB 程序推导出该系统的传递函数矩阵。 2、 若常系数增益为:C 1=Ka =Km =1,Kr =3,C2=0.8,Kb =1.5,时间常数T 1=5, T 2=0.5,绘制该系统的根轨迹、求出闭环零极点,分析系统的稳定性。若)(t R 和)(t M 分别为单位阶跃输入,绘制出该系统的阶跃响应图。(要求C 1,Ka ,Km ,Kr ,C2,Kb , T 1,T 2所有参数都是可调的) 一.设计思想 题目分析: 系统为双输入单输出系统,采用分开计算,再叠加。 要求参数均为可调,而matlb 中不能计算未赋值的函数,那么我们可以把参数设置为可输入变量,运行期间根据要求赋值。 设计思路: 使用append 命令连接系统框图。 选择‘参数=input('inputanumber:')’实现参数可调。 采用的方案: 将结构框图每条支路稍作简化,建立各条支路连接关系构造函数,运行得出相应的传递函数。 在得出传递函数的基础上,使用相应的指令求出系统闭环零极点、画出其根轨迹。 通过判断极点是否在左半平面来编程判断其系统是否稳定。 二.设计步骤 (1)将各模块的通路排序编号

(2)使用append命令实现各模块未连接的系统矩阵 (3)指定连接关系 (4)使用connect命令构造整个系统的模型 三.调试过程 出现问题分析及解决办法: 在调试过程出现很多平时不注意且不易寻找的问题,例如输入的逗号和分号在系统运行时不支持中文格式,这时需要将其全部换成英文格式,此类的程序错误需要细心。 在实现参数可调时初始是将其设为常量,再将其赋值进行系统运行,这样参数可调性差,后用‘参数=input('inputanumber:')’实现。 最后是在建立通路连接关系时需要细心。 四.结果分析 源代码: Syms C1 C2 Ka Kr Km Kb T1 T2 C1=input('inputanumber:') C2=input('inputanumber:') Ka=input('inputanumber:') Kr=input('inputanumber:') Km=input('inputanumber:') Kb=input('inputanumber:') T1=input('inputanumber:') T2=input('inputanumber:') G1=tf(C1,[0 1]); G2=tf(Ka*Kr,[0 1]); G3=tf(Km,[T1 1]); G4=tf(1,[T2 1]); G5=tf(1,[1 0]); G6=tf(-C2,1); G7=tf(-Kb,1); G8=tf(-1,1); Sys=append(G1,G2,G3,G4,G5,G6,G7,G8) Q=[1 0 0;2 1 6;3 2 7;4 3 8;5 4 0;6 5 0;7 4 0;8 0 0;]; INPUTS1=1; OUTPUTS=5; Ga=connect(Sys,Q,INPUTS1,OUTPUTS) INPUTS2=8; OUTPUTS=5; Gb=connect(Sys,Q,INPUTS2,OUTPUTS) rlocus(Ga)

matlab课程设计题目全

Matalab课后作业 学院:电气信息工程及其自动化 班级: 学号: 姓名: 完成日期: 2012年12月23日

1、 matlab 软件主要功能是什么?电气工程及其自动化专业本科生主要用到哪 些工具箱,各有什么功能? 答:(1)主要功能:工业研究与开发; 数学教学,特别是线性代数;数值分析和科学计算方面的教学与研究;电子学、控制理论和物理学等工程和科学学科方面的教学与研究; 经济学、化学和生物学等计算问题的所有其他领域中的教学与研究;符号计算功能;优化工具;数据分析和可视化功能;“活”笔记本功能;工具箱;非线性动态系统建模和仿真功能。 (2)常用工具箱: (a ) MATLAB 主工具箱:扩充matlab 的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能。 (b )符号数学工具箱:符号表达式、符号矩阵的创建;符号可变精度求解;因式分解、展开和简化;符号代数方程求解;符号微积分;符号微分方程。 (c ) SIMULINK 仿真工具箱: Simulink 是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink 提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。 (d )信号处理工具箱:数字和模拟滤波器设计、应用及仿真;谱分析和估计;FFT 、DCT 等 变换;参数化模型。 (e )控制系统工具箱:连续系统设计和离散系统设计;状态空间和传递函数以及模型转换;时域响应(脉冲响应、阶跃响应、斜坡响应);频域响应(Bode 图、Nyquist 图);根轨迹、极点配置。 2、设y=23e t 4-sin(43t+3 ),要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。 程序如下: clc clear x=0:0.01:1.5; y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3); y1=diff(y); subplot(2,1,1) plot(x,y) subplot(2,1,2) plot(x(1:150),y1) 曲线如下图所示:

matlab音频降噪课程设计报告

matlab音频降噪课程设计报告

燕山大学 医学软件课程设计说明书 题目:基于MATLAB巴特沃斯滤波器的音频去噪的GUI设计 学院(系):电气工程学院 年级专业: 13级生物医学工程 2 班 学号: 130103040041 学生姓名:魏鑫 指导教师:许全盛 1

院(系):电气工程学院基层教学单位:生物医学工程系 学号130103040041 学生 姓名 魏鑫 专业(班 级) 13级生 物医学 工程2 班 设计 题目 基于MATLAB音频去噪的GUI设计设 计 技术参数通带截止频率fp=2700;阻带截止频率fs=3000;采样频率FS=48000; 通带衰减不大于1dB;阻带衰减不小于10dB; 设计要求1.实现用MATLAB导入音频; 2.对音频进行频谱分析; 3.设计滤波器去噪并对含噪信号进行滤 2

波并进行功率谱分析; 4.设计能实现上述功能的GUI; 工作量1.完成音频录入及频谱分析相关程序的编写与调试; 2.设计滤波器去噪; 3.用MATLAB软件做GUI界面的设计; 工作计划11.21-11.24 MATLAB软件中GUIDE 工具箱的使用 11.25-11.29 各处理算法模块的编程实现 11.30-12.1 整体程序联调 12.2 撰写课程设计说明书,答辩 参考资料 1. 陈怀琛吴大正 MATLAB及在电子信息课程中的应用[M] 北京电子工业出版社 2006. 章节2.4; 2. 陈亚勇 MATLAB信号处理详解[M] 北京:人民邮电出版社 2000. 第十 3

章; 3.张康刘雅基于Matlab的巴特沃斯 数字低通滤波器的设计[J] 计算机与现代化 2007年 12期 98-100页 指导 教师签字许全盛 基层教学单 位主任签字 彭勇 目录 一、设计目的意义 (1) 1.1绪论 (1) 1.2设计目的 (1) 1.3意义 (1) 二、设计内容 (2) 2.1 设计原理 (2) 2.2 设计内容 (2) 三、设计过程及结果分析 (3) 3.1 设计步骤 (3) 4

通信工程学院matlab课程设计报告

南京工程学院 课程设计说明书(论文)题目模拟信号的数字化 课程名称Matlab通信仿真设计 院(系、部、中心)通信工程学院 专业电子信息工程(传感网) 班级 学生姓名X X X 学号 2 0 8 1 1 0 7 3 2 设计地点信息楼C 216 指导教师潘子宇

设计起止时间:2014年1月10日至2014年 1 月14日

目录 一、内容摘要 (1) 二、课程设计目的和要求 (2) 三、课程设计任务 (2) 四、课程设计软件介绍 (3) 五、课程设计原理 (4) 六、PCM编码及仿真参数设置 (9) 七、PCM解码及仿真参数设置 (11) 八、PCM串行传输模型及仿真参数设置 (13) 九、课程设计成品图 (14) 十、SCOPE端的最终波形图 (14) 十一、主要参考文献 (15)

十二、总结与体会 (15) 一、内容摘要 MATLAB软件是矩阵实验室的简称,是美国M a t h W or k s公司出品的商业数学软件, 可用于算法开发、数据分析以及数值计算的高级技术计算语言和交互式环境, 广泛用于数字信号分析,系统识别,时序分析与建模, 神经网络、动态仿真等方面有着广泛的应用。主要包括MATLAB和Simulink两大部分。Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。 Simulink是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。 Simulink是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。.

matlab车牌识别课程设计报告(附源代码)

Matlab程序设计任务书 分院(系)信息科学与工程专业 学生姓名学号 设计题目车牌识别系统设计 内容及要求: 车牌定位系统的目的在于正确获取整个图像中车牌的区域,并识别出车牌号。通过设计实现车牌识别系统,能够提高学生 分析问题和解决问题的能力,还能培养一定的科研能力。 1.牌照识别系统应包括车辆检测、图像采集、牌照识别等几 部分。 2.当车辆检测部分检测到车辆到达时,触发图像采集单元,采 集当前的视频图像。 3.牌照识别单元对图像进行处理,定位出牌照位置,再将牌 照中的字符分割出来进行识别,然后组成牌照号码输出。 进度安排: 19周:Matlab环境熟悉与基础知识学习 19周:课程设计选题与题目分析 20周:程序设计编程实现 20周:课程设计验收与答辩 指导教师(签字): 年月日学院院长(签字): 年月日 目录

一.课程设计目的 (3) 二.设计原理 (3) 三.详细设计步骤 (3) 四. 设计结果及分析 (18) 五. 总结 (19) 六. 设计体会 (20) 七. 参考文献 (21) 一、课程设计目的 车牌定位系统的目的在于正确获取整个图像中车牌的区域,并识别出车牌号。通过

设计实现车牌识别系统,能够提高学生分析问题和解决问题的能力,还能培养一定的科研能力。 二、设计原理: 牌照自动识别是一项利用车辆的动态视频或静态图像进行牌照号码、牌照颜色自动识别的模式识别技术。其硬件基础一般包括触发设备、摄像设备、照明设备、图像采集设备、识别车牌号码的处理机等,其软件核心包括车牌定位算法、车牌字符分割算法和光学字符识别算法等。某些牌照识别系统还具有通过视频图像判断车辆驶入视野的功能称之为视频车辆检测。一个完整的牌照识别系统应包括车辆检测、图像采集、牌照识别等几部分。当车辆检测部分检测到车辆到达时触发图像采集单元,采集当前的视频图像。牌照识别单元对图像进行处理,定位出牌照位置,再将牌照中的字符分割出来进行识别,然后组成牌照号码输出。 三、详细设计步骤: 1. 提出总体设计方案: 牌照号码、颜色识别 为了进行牌照识别,需要以下几个基本的步骤: a.牌照定位,定位图片中的牌照位置;

数字图像处理 课程设计报告 matlab

欢迎阅读数字图像处理 课程设计报告 姓名: 学号: 班级: .net 设计题目:图像处理 教师:赵哲老师 提交日期: 12月29日

一、设计内容: 主题:《图像处理》 详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等), 二、涉及知识内容: 1、二值化 2、各种滤波 3、算法等 三、设计流程图 插入图片 对图片进行处理 二值化处理 重复 输出两幅图 结束 四、实例分析及截图效果: 运行效果截图: 第一步:读取原图,并显示 close all;clear;clc; % 清楚工作窗口clc 清空变量clear 关闭打开的窗口close all I=imread('1.jpg'); % 插入图片1.jpg 赋给I imshow(I);% 输出图I I1=rgb2gray(I);%图片变灰度图 figure%新建窗口

subplot(321);% 3行2列第一幅图 imhist(I1);%输出图片 title('原图直方图');%图片名称 一,图像处理模糊 H=fspecial('motion',40); %% 滤波算子模糊程度40 motion运动 q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,replicate反复复制 q1=rgb2gray(q); imhist(q1); title('模糊图直方图'); 二,图像处理锐化 H=fspecial('unsharp');%锐化滤波算子,unsharp不清晰的 qq=imfilter(I,H,'replicate'); qq1=rgb2gray(qq); imhist(qq1); title('锐化图直方图'); 三,图像处理浮雕(来源网络) %浮雕图 l=imread('1.jpg'); f0=rgb2gray(l);%变灰度图 f1=imnoise(f0,'speckle',0.01); %高斯噪声加入密度为0.01的高斯乘性噪声 imnoise噪声污染图像函数 speckle斑点 f1=im2double(f1);%把图像数据类型转换为双精度浮点类型 h3=1/9.*[1 1 1;1 1 1;1 1 1]; %采用h3对图像f2进行卷积滤波 f4=conv2(f1,h3,'same'); %进行sobel滤波 h2=fspecial('sobel'); g3=filter2(h2,f1,'same');%卷积和多项式相乘 same相同的 k=mat2gray(g3);% 实现图像矩阵的归一化操作 四,图像处理素描(来源网络) f=imread('1.jpg'); [VG,A,PPG] = colorgrad(f); ppg = im2uint8(PPG); ppgf = 255 - ppg; [M,N] = size(ppgf);T=200; ppgf1 = zeros(M,N); for ii = 1:M for jj = 1:N if ppgf(ii,jj)

基于matlab的AM调制仿真课程设计报告书

xx学院 课程设计报告 课程名称:通信原理 设计题目:基于matlab的AM调制仿真学生班级:13通信(1) 学生:xxxxxxx 指导教师:王小x 完成日期:2015-12-24 数学与计算机学院

课程设计项目研究报告 目录 第 1 章项目简介 (1) 1.1 项目名称 (1) 1.2 开发人员 (1) 1.3 指导教师 (1) 第 2 章项目研究意义 (1) 2.1 课程设计概述 (1) 2.2 研究意义 (2) 第 3 章采用的技术 (2) 3.1 课程设计的方案设计原理 (2) 第 4 章课程设计项目进度表 (4) 第 5 章课程设计任务分配表 (4) 第 6 章达到的效果 (4) 6.1 程序设计思想 (4) 6.2 程序最终实现结果 (5) 第 7 章源程序 (11) 7.1 当调制信号是单一频率时 (11) 7.2 当调制信号不是单一频率时 (13) 第 9 章设计心得 (15) 第 10 章参考文献 (16)

第 1 章项目简介 1.1 项目名称 基于matlab的AM调制仿真 1.2 开发人员 阮文添、清海 1.3 指导教师 王小文 第 2 章项目研究意义 2.1 课程设计概述 正弦载波幅度随调制信号而变化的调制,简称调幅(AM)。调幅的技术和设备比较简单,频谱较窄,但抗干扰性能差,广泛应用于长中短波广播、小型无线、电报等电子设备中。早期的无线电报机采用火花式放电器产生高频振荡。传号时火花式发报机发射高频振荡波,空号时发报机没有输出。这种电报信号的载波不是纯正弦波,它含有很多谐波分量,会对其他信号产生严重干扰。理想的模拟正弦波调幅是:载波幅度与调制信号瞬时值成线性关系。 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境.MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks 公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境[1]。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

MATLAB课程设计任务书

课程设计任务书 学生姓名:专业班级:电信 指导教师:工作单位:信息工程学院 题目:MATLAB运算与应用设计2 初始条件: 1.MATLAB6.5以上版本软件; 2.课程设计辅导资料:“MATLAB语言基础及使用入门”、“MATLAB及在电子信息课程中的 应用”等; 3.先修课程:信号与系统、数字信号处理、MATLAB应用实践及信号处理类课程等。 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说 明书撰写等具体要求) (1)选择一本《MATLAB教程》,学习该教程的全部内容,包括使用方法、数组运算、矩阵运算、数学运算、程序设计、符号计算、图形绘制、GUI设计等内容; (2)对该套综合题的10道题,进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表)。 (3)对实验结果进行分析和总结; (4)要求阅读相关参考文献不少于5篇; (5)根据课程设计有关规范,按时、独立完成课程设计说明书。 时间安排: (1) 布置课程设计任务,查阅资料,学习《MATLAB教程》十周; (2) 进行编程设计一周; (3) 完成课程设计报告书一周; 指导教师签名:年月日 系主任(或责任教师)签名:年月日

目录 1 MATLAB概述 (3) 1.1MATLAB简介 (4) 1.2MATLAB的功能 (4) 1.3MATLAB 的典型应用 (6) 2设计题目:MATLAB运算与应用设计套题二 (6) 3设计内容 (8) 3.1 题一 (8) 3.2 题二 (8) 3.3 题三 (9) 3.4 题四 (10) 3.5 题五 (15) 3.6 题六 (15) 3.7 题七 (15) 3.8 题八 (16) 3.9 题九 (17) 3.10题十 (18) 4 课程设计心得 (20) 5参考文献 (21) 6 本科生课程设计成绩评定表 (22)

MATLAB课程设计报告图像处理

一.课程设计相关知识综述...................................................................... 1.1 研究目的及意义 (3) 1.2 数字图像处理研究的内容........................................................... 1.3 MATLAB 软件的介绍.................................................................. 1.3.1 MATLAB 语言的特点......................................................... 1.3.2 MATLAB 图像文件格式.................................................... 1.3.3 MATLAB 图像处理工具箱简介........................................ 1.3.4 MATLAB 中的图像类型.................................................... 1.3.5 MATLAB 的主要应用........................................................ 1.4 函数介绍........................................................................................ 二.课程设计内容和要求........................................................................... 2.1 主要研究内容................................................................................ 2.2 具体要求....................................................................................... 2.3 预期达到的目标........................................................................... 三.设计过程............................................................................................... 3.1 设计方案及步骤............................................................................ 3.2 程序清单及注释........................................................................... 3.3 实验结果........................................................................................ 四.团队情况................................................................................................ 五.总结....................................................................................................... 六.参考文献............................................................................................... 一.课程设计相关知识综述. 1.1研究目的及意义

matlab课程设计报告书

课程设计 题目Matlab应用课程设计学院信息工程学院 专业电子信息工程 班级 姓名 指导教师桂林 2011 年12 月13 日

Matlab应用课程设计任务书 学生姓名: 专业班级: 指导教师: 桂林工作单位: 信息工程学院 题目:Matlab运算与应用设计2 初始条件: 1.Matlab6.5以上版本软件; 2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应用”、线性代 数及相关书籍等; 3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.课程设计时间:1.5周; 2.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成; 3.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析,针对具体设 计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: ①初步了解Matlab、熟悉Matlab界面、进行简单操作; ②MATLAB的数值计算:创建矩阵、矩阵运算、多项式运算、线性方程组、数值统计; ③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形标注、简单 颜色设定等; ④使用文本编辑器编辑m文件,函数调用; ⑤能进行简单的信号处理Matlab编程; ⑥按要求参加课程设计实验演示和答辩等。 4.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: ①目录; ②与设计题目相关的理论分析、归纳和总结; ③与设计内容相关的原理分析、建模、推导、可行性分析; ④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; ⑤课程设计的心得体会(至少500字); ⑥参考文献(不少于5篇); ⑦其它必要内容等。 时间安排:(1) 布置课程设计任务,查阅资料,确定方案三天; (2) 进行编程设计五天; (3) 完成课程设计报告书两天; 指导教师签名:年月日 系主任(或责任教师)签名:年月日

matlab习题(课程设计)

1. 已知矩阵????????????????=5432141097539108627810715675A ,矩阵????? ?? ?????????=60151403514436136349624B ,解线性方程X ,使得A.X=B ,并将矩阵A 的右下角2×3子矩阵赋给矩阵C 。 程序:A=sym([5,7,6,5,1;7,10,8,7,2;6,8,10,9,3;5,7,9,10,4;1,2,3,4,5]); B=sym([24,96;34,136;36,144;35,140;15,60]); X=A\B C=A([4,5],[3,4,5]) 运行结果:X = [ 1, 4] [ 1, 4] [ 1, 4] [ 1, 4] [ 1, 4] C = [ 9, 10, 4] [ 3, 4, 5] 2. 根据下面两个矩阵 ???? ??????=??????????=987654321,136782078451220124B A 执行下列的矩阵运算命令,并回答有关的问题 (1) A+5*B 和A-B+I 分别是多少(其中I 为单位矩阵)? (2) A.*B 和 A*B 将分别给出什么结果,它们是否相同,为什么? 得出A.^B 、A/B 及A\B 的结果,并分别解释它们的物理意义。 程序:A=[4,12,20;12,45,78;20,78,136]; B=[1,2,3;4,5,6;7,8,9]; I=[1,0,0;0,1,0;0,0,1]; C=A+5*B D=A-B+I E=A.*B

F=A*B G=A.^B H=A/B J=A\B A=sym([4 12 20;12 45 78;20 78 136]); B=sym([1 2 3;4 5 6;7 8 9]); I=sym([1 0 0;0 1 0; 0 0 1]); A+5*B A-B+I A.*B %A.为A的共轭矩阵,本式为A的共轭矩阵和B相乘 A*B %A直接和矩阵B相乘,结果与上面显然不同 A.^B %A的共轭矩阵的B次方 A/B %右除解XB=A A\B %左除解AX=B 运行结果: ans = [ 9, 22, 35] [ 32, 70, 108] [ 55, 118, 181] ans = [ 4, 10, 17] [ 8, 41, 72] [ 13, 70, 128] ans = [ 4, 24, 60] [ 48, 225, 468] [ 140, 624, 1224] ans = [ 192, 228, 264] [ 738, 873, 1008] [ 1284, 1518, 1752]

相关主题
文本预览
相关文档 最新文档