计算机仿真技术实验教案.docx

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

计算机仿真技术实验教案.docx

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

计算机仿真技术实验教案.docx

计算机仿真技术实验教案

课程教案

课程名称:

计算机仿真技术实验

任课教师:

汤群芳

所属院部:

电气与信息工程学院

教学班级:

电气1403-04班

教学时间:

2015—2016学年第2学期

湖南工学院

课程基本信息

课程

名称

计算机仿真技术实验

课程代码

G0401834

总计:

16学时

讲课:

学时

实验:

16学时

上机:

16学时

课程设计:

学分

1

类别

必修课(√)选修课()理论课()实验课(√)

任课

教师

汤群芳

职称

讲师

授课

对象

专业班级:

电气1403-4班共2个班

(不超过1000字)

计算机仿真实验课是计算机仿真课程重要的实践教学环节,其目的是使学生掌握MATLAB的基本编程技巧,熟练地编写MATLAB程序;熟悉SimuLink仿真的基本方法和元件构成;了解MATLAB符号运算工具箱的使用方法,使学生具备一定的使用MATLAB语言进行本专业具体实例进行编程和仿真的能力。

其主要内容有:

熟练掌握MATLAB中的矩阵运算、多项式处理、控制语句、绘制二维、三维图形和一些常用函数及工具箱等,并结合对本专业相关课程中的具体实例,掌握常用的仿真编程方法。

大纲共列出了8个实验项目,电气工程专业学生可作为必做实验。

自动化专业学生在计划实验课时内,具体实验内容可由实验老师根据学生实际情况,从其中选择4个实验项目作为必做实验,其它实验项目可作为学生开放式实验选做内容。

实验难度应循序渐进,同时要有一定的广度,使学生得到较全面的训练。

基本

教材

和主

要参

考资

1.教材

 《计算机仿真技术实验指导书》,自编,湖南工学院,2014

 2.参考资料

[1]MATLAB在自动控制中的应用,吴晓燕编,西安电子科技大学出版社,2006

[2]控制系统数字仿真与CAD,张晓华主编,北京:

机械工业出版社,2003

实验一熟悉MATLAB环境及基本运算(验证性实验)

1、本次课主要内容

1、熟悉MATLAB环境;

2、掌握MATLAB常用命令;

3、MATLAB变量与运算符。

二、实验目的与要求

1、熟悉MATLAB开发环境;

2、掌握矩阵、变量、表达式的各种基本运算。

三、教学重点难点

重点:

矩阵的运算;

难点:

无。

四、教学方法和手段

课堂讲授、演示;巡回指导。

五、作业与习题布置

完成实验报告

 

实验一熟悉MATLAB环境及基本运算(验证性实验)

一、实验目的

1.熟悉MATLAB开发环境

2.掌握矩阵、变量、表达式的各种基本运算

二、实验原理

1.熟悉MATLAB环境

熟悉MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览

文件和搜索路径浏览器。

2.掌握MATLAB常用命令

clc

清除命令窗口中内容

clear

清除工作空间中变量

help

对所选函数的功能、调用格式及相关函数给出说明

lookfor

查找具有某种功能的函数但却不知道该函数的准确名称

who

查询工作空间中的变量信息

3.MATLAB变量与运算符

变量命名规则如下:

(1)变量名可以由英语字母、数字和下划线组成

(2)变量名应以英文字母开头

(3)长度不大于31个

(4)区分大小写

MATLAB中设置了一些特殊的变量与常量,列于下表。

表1MATLAB的特殊变量与常量

变量名

功能说明

变量名

功能说明

ANS

默认变量名,以应答

最近一次操作运算结果

realmin

最小的正实数

i或j

虚数单位

INF(inf)

无穷大

pi

圆周率

NAN(nan)

不定值(0/0)

eps

浮点数的相对误差

nargin

函数实际输入参数个数

realmax

最大的正实数

nargout

函数实际输出参数个数

MATLAB运算符,通过下面几个表来说明MATLAB的各种常用运算符

表2MATLAB算术运算符

操作符

功能说明

操作符

功能说明

+

\

矩阵左除

-

.\

数组左除

*

矩阵乘

/

矩阵右除

.*

数组乘

./

数组右除

^

矩阵乘方

'

矩阵转置

.^

数组乘方

.'

数组转置

表3MATLAB关系运算符

操作符

功能说明

==

等于

~=

不等于

>

大于

<

小于

>=

大于等于

<=

小于等于

表4MATLAB逻辑运算符

逻辑运算符

逻辑运算

说明

&

And

逻辑与

|

Or

逻辑或

~

Not

逻辑非

Xor

逻辑异或

表5MATLAB特殊运算

符号

功能说明示例

符号

功能说明示例

1:

1:

4;1:

2:

11

.

分隔行

..

分隔列

()

%

注释

[]

构成向量、矩阵

调用操作系统命令

{}

构成单元数组

=

用于赋值

4.MATLAB的一维、二维数组的访问

表6子数组访问与赋值常用的相关指令格式

指令格式

指令功能

A(r,c)

数组A中r指定行、c指定列之元素组成的子数组

A(r,:

数组A中r指定行对应的所有列之元素组成的子数组

A(:

c)

数组A中c指定列对应的所有行之元素组成的子数组

A(:

数组A中各列元素首尾相连组成的“一维长列”子数组

A(i)

"一维长列"子数组中的第i个元素

A(r,c)=Sa

数组A中r指定行、c指定列之元素组成的子数组的赋值

A(:

)=D(:

数组全元素赋值,保持A的行宽、列长不变,A、D两组元素

总合应相同

5.MATLAB的基本运算

表7两种运算指令形式和实质内涵的异同表

数组运算

矩阵运算

指令

含义

指令

含义

A.'

非共轭转置

A’

共轭转置

A=s

把标量s赋给A的每个元素

s+B

标量s分别与B元素之和

s-B,B-s

标量s分别与B元素之差

s.*A

标量s分别与A元素之积

s*A

标量s分别与A每个元素之积

s./B,B.\s

标量s分别被B的元素除

S*inv(B)

B阵的逆乘s

A.^n

A的每个元素自乘n次

A^n

A阵为方阵,自乘n次

A.^p

对A各元素分别求非整数幂

A^p

方阵A的非整数乘方

A+B

对应元素相加

A+B

矩阵相加

A-B

对应元素相减

A-B

矩阵相减

A.*B

对应元素相乘

A*B

内维相同矩阵相乘

A./B

A的元素别B的对应元素除

A/B

A右除B

B.\A

与上相同

B\A

A左除B

exp(A)

以自然数e为底,分别以A的元素为指数,求幂

expm(A)

A的矩阵指数函数

log(A)

对A的各元素求对数

logm(A)

A的矩阵对数函数

sqrt(A)

对A的各元素求平方根

sqrtm(A)

A的矩阵平方根函数

6.MATLAB的常用函数

表8标准数组生成函数

指令

含义

指令

含义

diag

产生对角形数组(对高维不适用)

rand

产生均匀分布随机数组

eye

产生单位数组(对高维不适用)

randn

产生正态分布随机数组

magic

产生魔方数组(对高维不适用)

zeros

产生全0数组

ones

产生全1数组

size()

返回指定矩阵的行数和列数

表9数组操作函数

指令

含义

diag

提取对角线元素,或生成对角阵

flipud

以数组“水平中线”为对称轴,交换上下对称位置上的数组元素

fliplr

以数组“垂直中线”为对称轴,交换左右对称位置上的数组元素

reshape

在总元素数不变的前提下,改变数组的“行数、列数”

rot90

矩阵逆时针旋转90度

det

方阵的行列式值

rank

矩阵的秩

inv

矩阵求逆 

eig

矩阵的特征值

矩阵转置

7.多项式运算

poly——产生特征多项式系数向量

roots——求多项式的根

p=poly2str(c,‘x’)—(将特征多项式系数向量c转换为以习惯方式显示是多项式)

conv,convs——多项式乘运算

deconv——多项式除运算

polyder(p)——求p的微分

polyder(a,b)——求多项式a,b乘积的微分

[p,q]=polyder(p1,p2)——求解多项式p1/p2微分的有理分式

Polyval(p,A)——按数组运算规则求多项式p在自变量A的值

polyvalm(p,A)——按矩阵运算规则求多项式p在自变量A的值

三、实验仪器设备与器材

计算机(安装有MATLAB软件平台)。

四、实验内容与步骤

1、新建一个文件夹(自己的名字命名)

2、启动MATLAB7,将该文件夹添加到MATLAB路径管理器中。

方法如下:

3、保存,关闭对话框(要求抓取自己实验的图,插入到自己的实验报告中)

4、学习使用help命令,例如在命令窗口输入helpeye,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推)

5、学习使用clc、clear,观察commandwindow、commandhistory和workspace等窗口的变化结果。

6、练习使用MATLAB的基本运算符、数组访问指令、标准数组生成函数和数组操作函数。

(1)输入helprand,然后随机生成一个2×6的数组,观察commandwindow、commandhistory和workspace等窗口的变化结果。

(2)分别输入clc、clear,了解其功能和作用。

(3)输入C=1:

2:

20,则C(i)表示什么?

其中i=1,2,3,…,10。

(4)输入A=[715;256;315],B=[111;222;333],在命令窗口中执行下列表达式,记录输出结果并说明其含义:

A(2,3)A(:

2)A(3,:

)A(:

1:

2:

3)A(:

3).*B(:

2)A(:

3)*B(2,:

)A*BA.*BA^2A.^2B/AB./A

(5)二维数组的创建和访问,创建一个二维数组(4×8)A,查询数

组A第2行、第3列的元素,

查询数组A第2行的所有元素,查询数组A第6列的所有元素。

(6)使用表8列出的常用函数来创建二维矩阵(可通过help方法,查看实例)。

7、多项式运算

(1)求多项式

的根、导数;

(2)已知A=[1.2350.9;51.756;3901;1234],求矩阵A的特征多项式;

(3)求特征多项式中未知数为20时的值。

五、实验结果(或数据)与分析

对于内容7多项式运算,试用笔算,并与利用MATLAB仿真平台运算结果进行比较。

六、实验总结与思考

总结本实验内容,并思考MATLAB仿真平台的功能、应用场合及发展前景。

教学后记:

实验二Matlab程序设计基本方法(设计性实验)

一、本次课主要内容

1、for循环结构;

2、while循环结构;

3、if-else-end分支结构;

4、switch-case结构。

二、实验目的与要求

1、熟悉MATLAB程序编辑与设计环境;

2、掌握各种编程语句语法规则及程序设计方法;

3、函数文件的编写和设计;

4、了解和熟悉跨空间变量传递和赋值。

三、教学重点难点

重点:

程序设计方法;

难点:

函数文件的编写。

四、教学方法和手段

课堂讲授、演示;巡回指导。

五、作业与习题布置

完成实验报告

 

实验二Matlab程序设计基本方法(设计性实验)

一、实验目的

1、熟悉MATLAB程序编辑与设计环境

2、掌握各种编程语句语法规则及程序设计方法

3、函数文件的编写和设计

4、了解和熟悉跨空间变量传递和赋值

二、实验原理

1、for循环结构

语法:

fori=初值:

增量:

终值

语句1

……

语句n

end

说明:

1)、i=初值:

终值,则增量为1。

2)、初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。

2、while循环结构

语法:

while逻辑表达式

循环体语句

end

说明:

1)、whiIe结构依据逻辑表达式的值判断是否执行循环体语勾。

若表达式的值为真,执行循环体语句一次、在反复执行时,每次都要进行判断。

若表达式的值为假,则程序执行end之后的语句。

2)、为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位置加break语句、以便程序能正常执行。

(执行循环体的次数不确定;每一次执行循环体后,一定会改变while后面所跟关系式的值。

3)、while循环也可以嵌套、其结构如下:

while逻辑表达式1

循环体语句1

while逻辑表达式2

循环体语句2

end

循环体语句3

end

3、if-else-end分支结构

if表达式1

语句1

elseif表达式2(可选)

语句2

else(可选)

语句3

end

end

说明:

1)、if结构是一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出if结构。

2)、elseif表达式2与else为可选项,这两条语句可依据具体情况取舍。

3)、注意:

每一个if都对应一个end,即有几个if,记就应有几个end。

4、switch-case结构

语法:

switch表达式

case常量表达式1

语句组1

case常量表达式2

语句组2

……

otherwise

语句组n

end

说明:

1)、switch后面的表达式可以是任何类型,如数字、字符串等。

2)、当表达式的值与case后面常量表达式的值相等时,就执行这个case后面的语句组。

如果所有的常量表达式的值都与这个表达式的值不相等时,则执行otherwise后的执行语句。

5、程序流程控制指令

break、return、pause

6、函数文件的结构和编写方法

函数只能在函数体内对变量进行操作,也就是只能访问函数本身工作空间中的变量。

M函数文件的结构

(1)函数定义行(function)

(2)H1行(函数帮助文本的第一行)

(3)函数帮助文本

(4)函数体

(5)注释

函数文件编写后,保存时,其文件名必须与函数名相同。

注意:

函数名不要与MATLAB自身的函数命令相同。

三、设计内容(或设计任务)

1、熟悉MATLAB程序编辑与设计环境。

2、用for循环语句实现求1~100的和。

3、用for循环语句实现编写一个求n阶乘的函数文件。

4、找到一个n!

>10100的值(利用上题的n阶乘函数文件)(两种方法)。

5、编写一个乘法表(9×9)。

四、设计要求(或设计指标与要求)

对照设计内容和任务,编写和设计相应的MATLAB程序,并调试运行得出正确结果。

五、实验仪器设备与器材

计算机(安装有MATLAB软件平台)。

六、实验结果(或数据)与分析

利用数学方法,对设计内容进行计算,分析并比较结果。

七、实验总结与思考

总结本实验内容,并思考:

1、MATLAB编程语句与规则与C语言程序有何异同?

2、MATLAB函数文件的编写和调用如何实现?

教学后记:

实验三MATLAB的图形绘制(设计性实验)

一、本次课主要内容

1、plot(x,y):

绘制由x,y所确定的曲线;

2、多组变量绘图:

plot(x1,y1,选项1,x2,y2,选项2,……);

3、双Y轴绘图:

plotyy()函数;

4、图形窗口的分割;

5、图形编辑窗口的使用。

二、实验目的与要求

1、学习MATLAB图形绘制的基本方法;

2、熟悉和了解MATLAB图形绘制程序编辑的基本指令;

3、熟悉掌握利用MATLAB图形编辑窗口编辑和修改图形界面,并添加图形的各种标注;

4、掌握plot、subplot的指令格式和语法。

三、教学重点难点

重点:

图形绘制的基本方法;

难点:

无。

四、教学方法和手段

课堂讲授、演示;巡回指导。

五、作业与习题布置

完成实验报告

 

实验三MATLAB的图形绘制(设计性实验)

一、实验目的

1、学习MATLAB图形绘制的基本方法;

2、熟悉和了解MATLAB图形绘制程序编辑的基本指令;

3、熟悉掌握利用MATLAB图形编辑窗口编辑和修改图形界面,并添加图形的各种标注;

4、掌握plot、subplot的指令格式和语法。

二、实验原理

1、plot(x,y):

绘制由x,y所确定的曲线;

2、多组变量绘图:

plot(x1,y1,选项1,x2,y2,选项2,……);

3、双Y轴绘图:

plotyy()函数;

4、图形窗口的分割;

5、图形编辑窗口的使用。

 

三、设计内容(或设计任务)

1、二维曲线绘图基本指令演示。

本例运作后,再试验plot(t),plot(Y),plot(Y,t),以观察产生图形的不同。

t=(0:

pi/50:

2*pi)';

k=0.4:

0.1:

1;

Y=cos(t)*k;

plot(t,Y)

plot指令基本操作演示

2、用图形表示连续调制波形Y=sin(t)sin(9t)及其包络线。

要求自己修改绘图的颜色、线型和数据点的标记

t=(0:

pi/100:

pi)';

y1=sin(t)*[1,-1];

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

t3=pi*(0:

9)/9;

y3=sin(t3).*sin(9*t3);plot(t,y1,'r:

',t,y2,'b',t3,y3,'bo')

axis([0,pi,-1,1])

3、在一个图形窗口绘制正弦和余弦曲线,要求给图形加标题“正弦和余弦曲线”,X轴Y轴分别标注为“时间t”和“正弦、余弦”,在图形的某个位置标注“sin(t)”“cos(t)”,并加图例,显示网格,坐标为正方形坐标系。

4、绘制向量x=[130.52.52]的饼形图,并把3对应的部分分离出来。

5、绘制参数方程x=t,y=sin(t),z=cos(t)在t=[07]区间的三维曲线。

6、用holdon命令在同一个窗口绘制曲线y=sin(t),y1=sin(t+0.25),

y2=sin(t+0.5),其中t=[010]。

7、观察各种轴控制指令的影响。

演示采用长轴为3.25,短轴为1.15的椭圆。

注意:

采用多子图(图6.2-4)表现时,图形形状不仅受“控制指令”影响,而且受整个图面“宽高比”及“子图数目”的影响。

t=0:

2*pi/99:

2*pi;

x=1.15*cos(t);y=3.25*sin(t);

subplot(2,3,1),plot(x,y),axisnormal,gridon,

title('NormalandGridon')

subplot(2,3,2),plot(x,y),axisequal,gridon,title('Equal')

subplot(2,3,3),plot(x,y),axissquare,gridon,title('Square')

subplot(2,3,4),plot(x,y),axisimage,boxoff,title('ImageandBoxoff')

subplot(2,3,5),plot(x,y),axisimagefill,boxoff

title('ImageandFill')

subplot(2,3,6),plot(x,y),axistight,boxoff,title('Tight')

各种轴控制指令的不同影响

四、设计要求(或设计指标与要求)

对照设计内容和任务,编写和设计相应的MATLAB程序,并调试运行得出正确结果。

五、实验仪器设备与器材

计算机(安装有MATLAB软件平台)。

六、实验结果(或数据)与分析

利用数学方法,对设计内容进行计算,分析并比较结果。

七、实验总结与思考

总结本实验内容,并思考:

1、MATLAB图形绘制有哪些基本指令?

2、如何设置MATLAB图形的属性,比如颜色、线型、坐标轴名称、图形标题等?

教学后记:

 

实验四Simulink建模与仿真(设计性实验)

一、本次课主要内容

(1)SIMULINK简介;

(2)SIMULINK的启动;

(3)SIMULINK的模块库介绍;

(4)SIMULINK简单模型的建立;

(5)SIMULINK功能模块的处理;

(6)SIMULINK应用举例;

(7)SIMULINK仿真的运行。

二、教学目的与要求

(1)学习SIMULINK软件工具的使用方法;

(2)用SIMULINK仿真线性系统;

三、教学重点难点

重点:

用SIMULINK仿真线性系统;

难点:

SIMULINK功能模块的处理。

四、教学方法和手段

课堂讲授、演示;巡回指导。

五、作业与习题布置

完成实验报告

 

实验四Simulink建模与仿真(设计性实验)

一、实验目的

1、学习SIMULINK软件工具的使用方法;

2、用SIMULINK仿真线性系统。

二实验原理

1、SIMULINK简介

SIMULINK是MATLAB软件的扩展,它是实现动态系统建模和仿真的一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。

所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析。

2、SIMULINK的启动

进入SIMULINK界面,只要你在MATLAB命令窗口提示符下键入‘SIMULINK’,按回车键即可启动SIMULINK软件。

3、SIMULINK的模块库介绍

►SIMILINK模块库按功能进行分为以下8类子库:

Continuous(连续模块)

Discrete(离散模块)

Function&Tables(函数和平台模块)

Math(数学模块)

Nonlinear(非线性模块)

Sign

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

当前位置:首页 > 医药卫生 > 临床医学

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

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