MATLAB仿真技术实验教案.docx

上传人:b****4 文档编号:12056542 上传时间:2023-04-16 格式:DOCX 页数:38 大小:575.82KB
下载 相关 举报
MATLAB仿真技术实验教案.docx_第1页
第1页 / 共38页
MATLAB仿真技术实验教案.docx_第2页
第2页 / 共38页
MATLAB仿真技术实验教案.docx_第3页
第3页 / 共38页
MATLAB仿真技术实验教案.docx_第4页
第4页 / 共38页
MATLAB仿真技术实验教案.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

MATLAB仿真技术实验教案.docx

《MATLAB仿真技术实验教案.docx》由会员分享,可在线阅读,更多相关《MATLAB仿真技术实验教案.docx(38页珍藏版)》请在冰豆网上搜索。

MATLAB仿真技术实验教案.docx

MATLAB仿真技术实验教案

《MATLAB仿真技术》实验教案

实验一

实验名称:

熟悉Matlab交互工作界面

一、实验目的

1、熟悉Matlab各种工作界面的操作要旨

2、掌握Matlab的基本操作命令

二、实验步骤

1、命令窗口

(1)体验命令窗口的菜单及各项功能

(2)尝试命令窗口编辑特殊功能键和设置

2、工作空间窗口与当前路径窗口

(1)在工作空间窗口查看及修改变量

(2)添加新的路径为Matlab路径

3、图形窗口和文本编辑窗口

(1)练习图形窗口中修改图形的方法

(2)在文本编辑窗口调试程序

4、体会Matlab的基本操作命令

三、实验仪器

PC机MATLAB软件

四、实验结果

五、结论

 

实验二

实验名称:

Matlab在符号计算方面的应用

一、实验目的

1、掌握标识符的生成和使用

2、掌握矩阵及变量的赋值

3、熟悉三类运算符及其功能

二、实验内容

1、标识符的生成和使用

1)、计算

,当x=2和x=4时的值。

>>x=[24];

y=x.^3+(x-0.98).^2./(x+1.35).^3-5*(x+1./x);

y

y=

-4.472342.8096

2)、计算

>>y=cos(pi/3)-(9-sqrt

(2))^(1/3)

y=

-1.4649

2、矩阵及变量的赋值

1)、已知a=3,A=4,b=a2,B=b2-1,c=a+A-2B,C=a+2B+c,求C

>>a=3;A=4;

b=a^2;B=b^2-1;

c=a+A-2*B;C=a+2*B+c;

C

C=

10

2)、创建3×4矩阵魔方阵和相应的随机矩阵,将两个矩阵并接起来,然后提取任意两个列向量。

>>A=magic(4);A(4,:

)=[];

B=rand(3,4);C=[AB];

D=C(:

3);E=C(:

4);

D,E

D=

3

10

6

 

E=

13

8

12

3)、创建一个5×5随机阵并求其逆。

>>A=rand(5,5);

B=inv(A)

B=

-0.3113-0.5610-0.43340.81770.8277

0.9176-1.04642.3486-2.99340.3191

-1.34830.5234-0.0487-0.17481.3919

0.67960.43660.48310.8076-1.7734

0.95051.2291-1.89181.7705-1.1269

4)利用上题的矩阵,计算矩阵的5次方。

>>A=rand(5,5);

C=A^5

C=

2.01621.97631.04971.32852.9673

2.40182.34231.25651.58113.5262

4.49934.19262.42902.93696.4685

3.00872.81751.61711.96804.3373

2.42882.34301.27921.59513.5506

3、三类运算符及其功能

1)创建一个4×4随机矩阵,提取对角线以上部分。

>>A=rand(5,5);

D=triu(A,1)

D=

00.31420.03810.16030.6649

000.45860.87290.8704

0000.23790.0099

00000.1370

00000

2)创建一个4×5随机矩阵,提取第一行和第二行中大于0.3的元素组成矩阵。

>>A=rand(4,5);

B=A([12],:

)>0.3;

C=B.*A([12],:

C=

0.39720.37160.716500.7036

0.41360.42530.51130.70060.4850

3)设

,求C=A*B,D=A.*B。

>>A=[14813;-36-5-9;2-7-12-8];B=[543-2;6-23-8;-13-97];

C=A*B'

D=A.*B

C=

19-8230

12273

-385429

 

D=

51624-26

-18-12-1572

-2-21108-56

三、实验仪器

PC机MATLAB软件

四、实验结果

五、结论

 

实验三

实验名称:

一维二维数组创建与寻访

一、实验目的

1、掌握数组的创建和寻访

2、掌握数组的生成函数和操作运算

3、掌握数组操作运算与矩阵操作运算

二、实验步骤

1、直接输入法创建数组

创建一个数组并赋值给变量a

使a=

2、使用MATLAB函数创建数组

创建一个数组并赋值给变量b,使b中元素服从均值为0,方差为1的正态分布(b为4×4阶)

3、利用外部数据文件(MAT)保存和装载数组

保存并调用变量a,b

4、比较数组运算与矩阵运算操作的区别

⑴分别对变量a,b进行矩阵乘和数组乘

⑵分别对变量a,b进行矩阵除和数组除

三、实验结果

1、直接输入法创建数组

创建一个数组并赋值给变量a

使a=

MATAB源程序:

>>a=[1234;5678;9101112;13141516]

a=

1234

5678

9101112

13141516

2、使用MATLAB函数创建数组

创建一个数组并赋值给变量b,使b中元素服从均值为0,方差为1的正态分布(b为4×4阶)

MATAB源程序:

>>b=randn(4,4)

b=

-0.4326-1.14650.3273-0.5883

-1.66561.19090.17462.1832

0.12531.1892-0.1867-0.1364

0.2877-0.03760.72580.1139

3、利用外部数据文件(MAT)保存和装载数组

保存并调用变量a,b

MATAB源程序:

>>saveD:

\55ab

>>clear

>>loadD:

\55ab

4、比较数组运算与矩阵运算操作的区别

⑴分别对变量a,b进行矩阵乘和数组乘

MATAB源程序:

>>a*b

ans=

-2.23704.65233.01963.8246

-8.97769.43627.183710.1142

-15.718214.220111.347716.4038

-22.458719.004015.511822.6934

>>a.*b

ans=

-0.4326-2.29290.9819-2.3533

-8.32797.14551.222517.4655

1.128011.8916-2.0538-1.6368

3.7398-0.526910.88691.8229

⑵分别对变量a,b进行矩阵除和数组除

MATAB源程序:

>>a/b

ans=

-2.61660.7871-1.47894.7435

-7.50050.8441-2.646712.1430

-12.38440.9011-3.814519.5425

-17.26830.9581-4.982226.9420

>>a\b

Warning:

Matrixisclosetosingularorbadlyscaled.

Resultsmaybeinaccurate.RCOND=1.387779e-018.

ans=

1.0e+016*

0.6415-1.33560.3480-1.1382

-0.63721.4254-0.39191.1373

-0.65031.1558-0.26021.1400

0.6459-1.24570.3041-1.1391

>>a./b

ans=

-2.3118-1.74459.1661-6.7991

-3.00195.038140.08273.6644

71.80918.4093-58.9153-87.9792

45.1897-372.011220.6671140.4355

>>a.\b

ans=

-0.4326-0.57320.1091-0.1471

-0.33310.19850.02490.2729

0.01390.1189-0.0170-0.0114

0.0221-0.00270.04840.0071

三、实验仪器

PC机MATLAB软件

四、实验结果

五、结论

实验四

实验名称:

Matlab在数值计算方面的应用

一、实验目的

1、学会使用MATLAB关系运算符

2、学会使用MATLAB逻辑运算符

3、掌握多项式的表示方法及运算

4、熟练掌握精度可控的数值积分

二、实验步骤

1、关系运算符

生成一个包含10个元素的行向量A,要求A中的元素服从均值为0,方差为1的正态分布,求sin(A)./A的极限。

注:

当A中的元素为0时MATLAB不发出警告

2、逻辑运算符

分别生成两个包含10个元素的行向量A、B,要求A、B中的元素在(0,1)之间服从均匀分布,找出A中大于0.5,B中小于0.5的元素,并将结果分别赋值给变量a、b,求变量a、b的同或(只利用与、或、非三个基本逻辑运算符)。

3、多项式的表示方法及运算

令m(x)=x6+6x5+20x4+50x3+75x2+84x+64;n(x)=x4-12x3+25x+16

求m(x)与n(x)的卷积。

4、精度可控的数值积分

已知y=x1·log(1+x1)关于x1求从0到1的积分,要求精度为1e-6

三、实验结果

1、关系运算符

生成一个包含10个元素的行向量A,要求A中的元素服从均值为0,方差为1的正态分布,求sin(A)./A的极限。

MATAB源程序:

>>A=randn(1,10);

A=A+(A==0)*eps;

sin(A)./A

ans=

0.77990.77590.99990.99590.62310.98900.82410.69810.89540.9541

2、逻辑运算符

分别生成两个包含10个元素的行向量A、B,要求A、B中的元素在(0,1)之间服从均匀分布,找出A中大于0.5,B中小于0.5的元素,并将结果分别赋值给变量a、b,求变量a、b的同或(只利用与、或、非三个基本逻辑运算符)。

MATAB源程序:

A=rand(1,10)

B=rand(1,10)

c=A>0.5;a=c.*A

d=B<0.5;b=d.*B

((~a)&(~b))|(a&b)

A=

0.36540.14000.56680.82300.67390.99940.96160.05890.36030.5485

B=

0.26180.59730.04930.57110.70090.96230.75050.74000.43190.6343

a=

000.56680.82300.67390.99940.9616000.5485

b=

0.261800.0493000000.43190

ans=

0110000100

3、多项式的表示方法及运算

令m(x)=x6+6x5+20x4+50x3+75x2+84x+64;n(x)=x4-12x3+25x+16

求m(x)与n(x)的卷积。

MATAB源程序:

>>m=[162050758464];

n=[1-1202516];

w=conv(m,n)

w=

Columns1through10

1-6-52-165-359-220626190733002944

Column11

1024

4、精度可控的数值积分

已知y=x1·log(1+x1)关于x1求从0到1的积分,要求精度为1e-6

MATAB源程序:

>>y=quad('x1.*log(1+x1)',0,1,'1e-6')

y=

0.2500

三、实验仪器

PC机MATLAB软件

四、实验结果

五、结论

实验五

实验名称:

数据和函数的可视化

一、实验目的

1、掌握二维图形的绘制

2、熟悉二维图形的修饰

3、掌握三维图形的绘制

4、能从不同角度观察试图

二、实验步骤

1、二维图形的绘制

Y=sinx2e-x分别在四个子图中给出棒状图(红)、阶梯图(蓝)、条形图(黄)、填充图形(绿),并加网络线。

2、二维图形的修饰

已知y1=sin(x),y2=cos(x),在一个图形绘制y1,y2的曲线。

⑴给出图形题目(“正弦曲线和余弦曲线”)

⑵给出横坐标(“弧度值”),纵坐标(“函数值”)

⑶分别加曲线标注(“正弦曲线”),(“余弦曲线”)

⑷将x,y坐标轴的单位设置为相等

⑸将当前图形设置为正方形

3、三维曲线的绘制

分别绘制其网线图及曲面图

4、三维曲线的修饰及视角

对上题的曲面图作

⑴用截面颜色分布方式填充

⑵用插列式颜色分布方式填充

⑶用平面式颜色分布方式填充

⑷用300方位角,-37.50仰角观察

⑸用1800方位角,00仰角观察

三、实验结果

1、二维图形的绘制

Y=sinx2e-x分别在四个子图中给出棒状图(红)、阶梯图(蓝)、条形图(黄)、填充图形(绿),并加网络线。

MATAB源程序:

x=0:

0.5:

2*pi;

y=sin(x.^2).*exp(-x);

figure

(1)

subplot(2,2,1)

stem(x,y,'r')

gridon

subplot(2,2,2)

stairs(x,y,'b')

gridon

subplot(2,2,3)

bar(x,y,'y')

axis([0,6,-.2,.6])

gridon

subplot(2,2,4)

fill(x,y,'g')

gridon

2、二维图形的修饰

已知y1=sin(x),y2=cos(x),在一个图形绘制y1,y2的曲线。

⑴给出图形题目(“正弦曲线和余弦曲线”)

⑵给出横坐标(“弧度值”),纵坐标(“函数值”)

⑶分别加曲线标注(“正弦曲线”),(“余弦曲线”)

⑷将x,y坐标轴的单位设置为相等

⑸将当前图形设置为正方形

MATAB源程序:

x=0:

0.1:

2*pi;

y1=sin(x);

y2=cos(x);

plot(x,[y1;y2])

title('正弦曲线和余弦曲线')

xlabel('弧度值')

ylabel('函数值')

legend('正弦曲线','余弦曲线')

axis('equal')

axis('square')

3、三维曲线的绘制

分别绘制其网线图及曲面图

MATAB源程序:

x=-8:

0.5:

8;y=x;

[X,Y]=meshgrid(x,y);

z=2.*sin(sqrt(X.^2+Y.^2)+eps)./(sqrt(X.^2+Y.^2)+eps);

mesh(z)

figure

(2)

surf(z)

4、三维曲线的修饰及视角

对上题的曲面图作

⑴用截面颜色分布方式填充

⑵用插列式颜色分布方式填充

⑶用平面式颜色分布方式填充

⑷用300方位角,-37.50仰角观察

⑸用1800方位角,00仰角观

MATAB源程序:

shadingfaceted

shadinginterp

shadingflat察

view(30,-37.5)

view(180,0)

实验六

实验名称:

M文件和函数句柄

一、实验目的

1、掌握利用控制语句实现复杂问题的方法

2、掌握M文件的创建及调用方法

3、掌握利用函数句柄来求取函数值的方法

4、学习利用内联函数来求取函数值的方法

二、实验步骤

1、已知函数

要求利用控制语句来实现y的绘图。

2、已知

1)若X用矩阵代入,得f(x)为同阶矩阵

2)利用M文件求x∈[-1,0]的函数值

3)利用函数句柄求x∈[0,1]的函数值

4)利用内联函数求x∈[1,2]的函数值

3、设

,若N=2,α=0,π/3,π/2,π,在4个子图中分别画出其曲线。

(要求只有一个subplot命令)

三、实验结果

1、已知函数

要求利用控制语句来实现y的绘图。

M文件如下:

functiony=hs(x)

n=length(x);

fork=1:

n

ifx(k)<=-1

y(k)=x(k).*sin(3*x(k));

elseifx(k)>=-1

y(k)=x(k)^3;

else

y(k)=exp(-x(k));

end

end

plot(x,y)

调用如下:

>>a=-2:

.1:

2;

>>b=hs(a);

2、已知

1)利用M文件求x∈[-1,0]的函数值

2)利用函数句柄求x∈[0,1]的函数值

3)利用内联函数求x∈[1,2]的函数值

4)若X用矩阵代入,得f(x)为同阶矩阵

M文件如下:

functiony=hs1(x)

y=1./((x-2).^2+.1)+1./((x-3).^3+.01);

plot(x,y)

2)调用如下:

>>a=rand(4);

>>b=hs1(a)

b=

0.71560.64560.57480.6805

0.26260.52330.33700.5045

0.41700.34200.42200.2475

0.35500.21060.54830.3212

2)调用如下:

>>a=-1:

0.1:

0;

>>b=hs1(a);

3)调用如下:

>>c=0:

.1:

1;

>>d=@hs1;

>>e=d(c);

4)调用如下:

y=inline('1./((x-2).^2+.1)+1./((x-3).^3+.01)');

p=1:

.1:

2;

q=y(p);

plot(p,q)

3、设

,若N=2,α=0,π/3,π/2,π,在4个子图中分别画出其曲线。

(要求只有一个subplot命令)

M文件如下:

functiony=hs1(t)

N=2;

alpha=[0pi/3pi/2pi];

fori=1:

4

x=cos(t);

y=sin(N*t+alpha(1,i));

subplot(2,2,i);

plot(x,y)

end

调用如下:

>>t=0:

.1:

6;

>>u=hs1(t);

 

实验七

实验名称:

Simulink交互式仿真

一、实验目的

1、了解Simulink仿真的基本操作

2、熟练掌握系统中子系统的操作

3、掌握Simulink常用工具箱的基本运用

4、掌握连续时间系统的建模与仿真

二、实验步骤

1、信号平方运算

系统的功能是对输入信号进行平方运算,现要求建立系统的Simulink模型并进行简单的仿真分析。

⑴系统输入信号源幅值为1的正弦波

⑵使用示波器显示同时原始信号和结果信号

⑶生成系统运算部分的子系统

2、使用代数环计算下式的值

3、根据上题,计算下式的值

2x2+7x-30=0

4、构建一连续时间系统,使时间t<5秒内输出5sin(x)2,时间t>5秒输出3sin(x)。

三、实验结果

1、信号平方运算

系统的功能是对输入信号进行平方运算,现要求建立系统的Simulink模型并进行简单的仿真分析。

⑴系统输入信号源幅值为1的正弦波

⑵使用示波器显示同时原始信号和结果信号

⑶生成系统运算部分的子系统

2、使用代数环计算下式的值

3、根据上题,计算下式的值

2x2+7x-30=0

4、构建一连续时间系统,使时间t<5秒内输出5sin(x)2,时间t>5秒输出3sin(x)。

三、实验仪器

PC机MATLAB软件

四、实验结果

五、结论

实验八

实验名称:

Simulink交互式仿真

(二)

一、实验目的

1、掌握低通数字滤波器的使用

2、掌握通信系统的信源子系统的生成

3、掌握通信系统的调制与解调子系统的生成

4、掌握通信信道子系统的生成

二、实验原理

(1)通信信道动态方程为。

显然,此信道为一线性连续信道,信道传递函数描述如下:

(2)信道噪音:

信道受到服从高斯正态分布的随机加性噪音的干扰,噪音均值为0,方差为0.01。

(3)信道延迟:

信道经过缓冲区为1024的延迟。

·数字滤波器

数字滤波器的差分方程为

此数字滤波器为线性离散系统,使用滤波器形式对其进行描述如下:

三、实验步骤

1.建立通信系统模型

按照通信系统的物理与数学模型建立系统模型。

在建立系统模型之前,首先给出建立系统模型所需要的系统模块,如下所述:

(1)Sources模块库中的SineWave模块:

作为高频载波信号与解调信号。

(2)Sources模块库中的SignalGenerator模块:

产生低频锯齿波信号。

(3)Math模块库中的Product模块:

用于信号进行调制与解调。

(4)Continuous模块库中的TransferFcn模块:

描述通信信道。

(5)Sources模块库中的RandomNumber模块:

产生信道噪音。

(6)Continuous模块库中的TransportDelay模块:

产生信道延迟。

(7)Discrete模块库中的DiscreteFilter模块:

描述数字滤波器。

(8)Subsystems模块库中的Subsystem模块:

封装系统中不同部分。

(9)Sinks模块库的Scope模块:

显示输出。

然后建立系统模型,并将信号幅值调制、通信信道、幅值解调封装到单独的子系统之中,

2.系统模块参数设置与仿真参数设置

在建立系统模型之后,接下来按照系统的要求设置系统模块参数与仿真参数。

想必用户对模块参数设置与仿真参数设置已经比较熟悉了,故在此仅给出各模块的参数与相应的仿真参数(所有没有给出的模块参数或仿真参数均使用系统的默认值);用户可仿照前面的例子对参数进行正确的设置。

信号调制子系统参数

(1)正弦载波SineWave模块:

频率Frequency为100Hz,幅值为1。

(2)锯齿信号SignalGenerator模块:

波形Waveform为sawtooth(锯齿波)。

·通信信道子系统参数

(1)随机信号RandomNumber模块:

均值mean为0、方差Variance为0.01。

(2)信道延迟TransferDelay模块:

初始缓冲区Initialbuffersize为1024。

(3)信道传递函数TransferFcn模块:

分子Numerator为[1]

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

当前位置:首页 > 求职职场 > 面试

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

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