matlab第二次课

合集下载

第 1 章 matlab基础第二次课

第 1 章 matlab基础第二次课
A=[10,20,30;40,50,60]; A(3) ans =
20
1.7.3 矩阵的拆分
序号(Index)与下标(Subscript)是一一对应的, 以m × n矩阵A为例,矩阵元素A(i, j)的序号为 (j−1)*m + i。其相互转换关系也可利用sub2ind和 ind2sub函数求得。 例如:sub2ind(size(A),1,3) ans = 5 size(A)函数返回包含两个元素的向量,分别是矩阵A 的行数和列数 ,即A是2行3列的矩阵,其中第1行第3列元 素的序号为5。
1.1623 1.1475 1.6461 +
1.7.4 算术运算
(4)矩阵的指数和对数 矩阵的指数运算用函数expm实现,对数运算用函数logm实现。 例如:
>> a=[1 3 4;2 6 5;3 2 4]; >> d=expm(a) d= 1.0e+004 * 0.4668 0.7694 0.9200 0.7919 1.3065 1.5613 0.4807 0.7919 0.9475 >> e=logm(a) e= 0.5002 + 2.4406i 0.5960 - 0.6800i 0.7881 - 1.2493i 0.4148 + 0.4498i 1.4660 - 0.1253i 1.0108 - 0.2302i 0.5780 - 1.6143i 0.4148 + 0.4498i 1.0783 + 0.8263i
1.7.4 算术运算
(3)矩阵除法
在MATLAB中,有两种矩阵除法运算:\和/,分 别表示左除和右除。如果A矩阵是非奇异方阵, 则A\B和B/A运算可以实现。A\B等效于A的逆左乘

Matlab第二次实验报告

Matlab第二次实验报告

Matlab第二次实验报告实验目的:1、了解plot函数和subplot函数的基本用法和matlab绘图的基本原理。

2、了解图形的属性设置。

比如画图的颜色,画图采用的线性标识符等。

二:实验基本知识1:1. 单窗口单曲线绘图;2. 单窗口多曲线绘图;3. 单窗口多曲线分图绘图;4. 多窗口绘图;5.可任意设置颜色与线型;6.图形加注功能;7.fplot——绘制函数图函数;8.ezplot——符号函数的简易绘图函数9:subplot—将画图区域分块函数。

实验内容:将高数课本后的18个图画出上机练习程序第1——6图:clear,clca=input('ÇëÊäÈëaµÄÖµ£º')figure(1);x=-50:1:50;y=a.*x.^3;subplot(3,2,1);plot(x,y,'r');title('y=a*x^3');xlabel('X');ylabel('Y');x=0:1:50;y=sqrt(a.*x.^3);subplot(3,2,2);plot(x,y,x,-y,'r');title('y^2=a*x^3');xlabel('X');ylabel('Y');x=-3:0.1:3;y=exp(-x.^2);subplot(3,2,3);plot(x,y,'r');title('y=e^x^2');xlabel('X');ylabel('Y');x=-3:0.1:3;y=8*a^3./(x.^2+4*a^2);subplot(3,2,4);plot(x,y,'r');title('y=8*a^3./(x.^2+4*a^2)'); xlabel('X');ylabel('Y');x=0:0.01:5;y=sqrt(x.^3./(a*2.-x)); subplot(3,2,5);plot(x,y,x,-y,'r');title('y^2*(2a-x)=x^3'); xlabel('X');ylabel('Y');%t=-1:0.01:5;%x=3*a.*t./(1+t.^3);%y=3*a*t.^2./(1+t.^3);subplot(3,2,6);ezplot('x.^3+y.^3-3*3*x.*y'); %plot(x,y);title('x^3+y^3-3axy=0'); xlabel('X');ylabel('Y');输入a=3:显示结果第7——10图:clear,clca=input('ÇëÊäÈëaµÄÖµ£º')figure(1)t=0:0.1:2*pi;x=a*cos(t).^3;y=a*sin(t).^3;subplot(2,2,1);plot(x,y,'b')title('x^1.5+y^1.5=a^1.5'); xlabel('X');ylabel('Y');t=-2*pi:0.1:2*pi;x=a.*(t-sin(t));y=a.*(1-cos(t));subplot(2,2,2);plot(x,y,'b')title('°ÚÏß');xlabel('X');ylabel('Y');t=0:0.01:2*pi;p=a.*(1-cos(t));subplot(2,2,3);plot(p.*cos(t),p.*sin(t),'b'); title('p=a(1-cos£¨t£©)'); xlabel('X');ylabel('Y');t=0:0.01:2*pi;p=a.*t;subplot(2,2,4);plot(p.*cos(t),p.*sin(t),'b'); title('p=at');xlabel('X');ylabel('Y');输入a=1,第11题图:clear,clca=input('ÇëÊäÈëaµÄÖµ£º') figure(1);t=-2*pi:pi/100:2*pi;p=exp(a.*t);plot(p.*cos(t),p.*sin(t)); title('p=e^at');xlabel('X');ylabel('Y');输入a=0.1,显示结果:clear,clca=input('ÇëÊäÈëaµÄÖµ£º')figure(1)t=0.2*pi:pi/100:100*pi;p=a./t;plot(p.*cos(t),p.*sin(t));title('p=at');xlabel('X');ylabel('Y');输入a=1,显示结果:第13——14题图:clear,clca=input('ÇëÊäÈëaµÄÖµ£º');figure(1);t=0:pi/100:2*pi;p=(a^2.*sin(2*t)).^0.5;subplot(1,2,1);plot(p.*cos(t),p.*sin(t),-p.*cos(t),-p.*sin(t),'g'); title('p^2=a^2*sin(2t)');xlabel('X');p=(a^2.*cos(2*t)).^0.5;subplot(1,2,2);plot(p.*cos(t),p.*sin(t),-p.*cos(t),-p.*sin(t),'g'); title('p^2=a^2*cos(2t)');xlabel('X');ylabel('Y');输入a=1,显示结果:第15-16题图:clear;clc;a=input('ÇëÊäÈëa:');figure(1)t=0:pi/200:pi;p=a.*cos(3*t);subplot(1,2,1);plot(p.*cos(t),p.*sin(t),'r--');title('p=a*cos(3t)');xlabel('X');p=a.*sin(3*t);subplot(1,2,2);plot(p.*cos(t),p.*sin(t),'r--'); title('p=a*sin(3t)');xlabel('X');ylabel('Y');输入a=1,显示结果:第17——18题图:clear;clc;a=input('ÇëÊäÈëa:');figure(1);t=-pi:pi/200:pi;subplot(1,2,1);p=a.*sin(2*t);plot(p.*cos(t),p.*sin(t),'k-.'); title('p=a*sin(2t)');xlabel('X');ylabel('Y');p=a.*cos(2*t);subplot(1,2,2);plot(p.*cos(t),p.*sin(t),'k-.');title('p=a*cos(2t)');xlabel('X');ylabel('Y');输入a=1,显示结果:实验心得:这次实验主要是学习matlab软件的二维绘图功能:matlab软件还有丰富的图形修饰功能,如改变线条的形式和颜色;除此之外其还可以以多种形式如在一个图形中显示多个函数图形,一个figure中显示多个坐标系,还有一个程序中就可以用多个figure一起来表示不同的函数……在画图过程中你可能因为角度的区间取值不一样,画出来的图形可能跟书本上给出的图形有很大的差异,但没关系,只要你思路是对的,区间可以自己慢慢改动知道跟书本上给出的图形想接近。

matlab第二次课 ( 1 )

matlab第二次课 ( 1 )

2.1 信号的表示与运算
矩阵的创建与修改

用load函数装载矩阵
如 load sn.txt load a.mat
sn.txt a.mat为已建立的2个文件
2.1 信号的表示与运算
矩阵的创建与修改
直接修改
可用键找到所要修改的矩阵,用键移 动到要修改的矩阵元素上即可修改。 指令修改 可以用A(,)= 来修改。
plot的调用格式
2.2 matlab 绘图之二维绘图
S的标准设定值 字母 y m c r g b w k 颜色 黄色 粉红 亮蓝 大红 绿色 蓝色 白色 黑色 标点 · ○ × + - : -· (--) 线型 点线 圈线 ×线 +字线 实线 星形线 虚线 点划线
2.2 matlab 绘图之二维绘图 plot的特点
信号自变量t的常用2种生成方法 t=linspace(t1,t2,N);
在区间[t1,t2]s上均匀产生N个时间样点值。
t= t1:1/fs:t2
在区间[t1,t2]s上以采样率f信号的生成 例: 生成在[0,10]s上长度为30的单位阶跃信号, 并作图表示。 t=linspace(0,10,30); y=ones(1,30); Stem(t,y)
信号的生成
1
0.5
0
生成周期三角波
-0.5
sawtooth(T):对时间向量T产生周期三角波
sawtooth(T,WIDTH):WIDTH为(0,1)的偏离系数
0 0.05
-1
0.1
0.15
0.2
在(0,1.5)上生成频率 为50HZ的三角波信号,
1
0.5
采样率为10KHZ.
0
t=0:0.0001:1.5;

matlab课程设计完整版

matlab课程设计完整版

matlab课程设计完整版一、教学目标本节课的教学目标是让学生掌握MATLAB的基本语法和操作,能够利用MATLAB进行简单的数学计算和数据分析。

具体来说,知识目标包括:了解MATLAB的历史和发展,掌握MATLAB的基本语法和数据类型,熟悉MATLAB的工作环境。

技能目标包括:能够使用MATLAB进行矩阵运算,编写简单的MATLAB脚本程序,进行数学计算和数据分析。

情感态度价值观目标包括:培养学生对科学计算软件的兴趣,增强学生的动手能力和团队协作能力。

二、教学内容本节课的教学内容主要包括MATLAB的基本语法和操作。

首先,介绍MATLAB的历史和发展,使学生对MATLAB有一个整体的认识。

然后,讲解MATLAB的基本语法和数据类型,如矩阵的创建和操作,数据的输入和输出等。

接着,介绍MATLAB的工作环境,包括命令窗口、变量浏览器和脚本文件等。

最后,通过实例演示和练习,使学生能够熟练使用MATLAB进行简单的数学计算和数据分析。

三、教学方法为了达到本节课的教学目标,将采用讲授法、实践法和讨论法等多种教学方法。

首先,通过讲授法向学生介绍MATLAB的基本概念和语法。

然后,通过实践法,让学生动手操作MATLAB软件,进行实际的数学计算和数据分析。

在实践过程中,引导学生进行讨论,分享自己的心得和经验,互相学习和进步。

最后,通过讨论法,对学生的学习情况进行总结和评价,及时调整教学策略。

四、教学资源为了保证本节课的教学质量,将准备教材、多媒体资料和实验设备等多种教学资源。

教材是学生学习的基础,多媒体资料可以丰富教学手段,实验设备则是学生进行实践操作的重要工具。

此外,还将利用网络资源,如在线教程和讨论区,为学生提供更多的学习资料和实践机会。

五、教学评估本节课的教学评估将采用多元化的评价方式,以全面、客观、公正地评估学生的学习成果。

评估方式包括平时表现、作业和考试等。

平时表现主要考察学生的课堂参与度和团队合作能力,通过观察和记录学生在课堂上的表现来进行评估。

讲座-matlab培训第二部分

讲座-matlab培训第二部分

不足:费时费力、美术 底子差、惨不忍睹
5
MATLAB作图
matlab作图步骤
y=sin(x) 1
• x=0:pi/10:2*pi; 找点 • y=sin(x); 计算函数值
y
0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1
• plot(x,y); 画图
0
1
2
3 x
练习:将绘图区域分成两个子区域,分别绘 制以下两条曲线 y1=0.2e-0.5xcos(4πx) y2=2e-0.3xsin(πx) x在0到2之间 x在2到4之间
21
Part2 程序控制结构
• Matlab既是一种计算和绘图工具,又是一种编程环境。 • • • • 程序控制语句:用于控制程序执行流程,主要分为: 条件语句 分支语句 循环语句
28
程序控制语句
根据变量 num 的值来决定显示的内容。


num=input(‘请输入一个数字'); switch num case -1 disp('I am a teacher.'); case 0 disp('I am a student.'); case 1 disp('You are a teacher.'); otherwise disp('You are a student.'); end
plot3函数的基本调用格式为:
plot(X,Y,Z)。 X、Y和Z是同维向量时,分别以X、Y和Z的元素为x、y和z轴坐标。
15
MATLAB作图
• 举例:三维曲线绘制
t=0:pi/50:10*pi; plot3(sin(t),cos(t),t) grid, xlabel('sin(t)'), ylabel('cos(t)'), zlabel('t')

数学实验MATLAB版课程设计

数学实验MATLAB版课程设计

数学实验MATLAB版课程设计选题背景数学实验是数学教育中不可或缺的一部分。

随着科技的发展,各类软件工具也逐渐进入了数学实验领域。

MATLAB作为一款广泛应用于科技领域的数学计算软件,被越来越多的教师和学生所使用。

本课程设计旨在利用MATLAB软件,进行一系列有趣且具有实际意义的数学实验,以提高学生对数学的兴趣和实际应用能力。

选题内容本课程设计共包含以下三个实验项目:实验一:数学模型的建立与求解本实验旨在让学生了解数学模型的概念和建立方法,并通过MATLAB软件进行模型的求解。

具体步骤如下:1.学生自主选择一个实际问题,如某产品销售量的预测、某城市的交通流量分析等,并对问题进行分析,确定所需变量和关系。

2.学生利用所学知识建立相应的数学模型,并用MATLAB进行求解。

3.学生根据实际情况,对模型和求解结果进行分析和评价。

实验二:微积分理论的应用本实验旨在让学生了解微积分的基本理论和应用,以及MATLAB软件在微积分计算中的作用。

具体步骤如下:1.学生自主选择一个数学问题,如函数求极值、曲线积分计算等,并对问题进行分析。

2.学生利用所学知识,通过MATLAB软件进行计算和绘图,并对结果进行分析和评价。

实验三:离散数学的应用本实验旨在让学生了解离散数学的基本知识和应用,在MATLAB软件中实现离散数学的计算。

具体步骤如下:1.学生自主选择一个数学问题,如概率统计分析、图论问题等,并对问题进行分析。

2.学生利用所学知识,通过MATLAB软件进行计算和可视化,并对结果进行分析和评价。

实验要求1.学生需在规定时间内完成实验报告的撰写,并按要求提交。

2.学生需在实验前自行学习相关知识,具备独立思考和解决问题的能力。

3.学生需积极合作,认真对待实验和实验报告的撰写。

实验评估本课程设计采用综合评估方式,主要考虑以下四个方面:1.实验报告的撰写质量,包括实验目的、原理、步骤、结果和分析等。

2.实验过程中的表现,包括合作精神、独立思考能力、问题解决能力等。

matlab小游戏课程设计

matlab小游戏课程设计

matlab小游戏课程设计一、课程目标知识目标:1. 学生能理解Matlab的基本操作,包括变量定义、运算符使用和程序流程控制。

2. 学生能够运用Matlab编写简单的交互式小游戏,如猜数字、迷宫等。

3. 学生掌握Matlab中绘图和动画功能,实现对游戏结果的展示。

技能目标:1. 学生培养编程思维,学会运用Matlab解决实际问题。

2. 学生能够运用所学知识,设计并实现具有简单逻辑和交互功能的Matlab小游戏。

3. 学生通过团队协作,提高沟通与协作能力。

情感态度价值观目标:1. 学生培养对计算机编程的兴趣,提高学习积极性。

2. 学生在游戏设计和实现过程中,培养创新精神和实践能力。

3. 学生通过游戏编程,体验团队合作的重要性,树立正确的价值观。

本课程针对高中年级学生,结合Matlab编程知识,以趣味性小游戏为载体,激发学生兴趣,培养编程技能和团队协作能力。

课程要求学生在理解基本编程知识的基础上,动手实践,实现具体的学习成果。

通过本课程的学习,使学生能够更好地掌握Matlab编程技能,提高解决实际问题的能力。

二、教学内容1. Matlab基础知识回顾:变量定义、数据类型、运算符、程序流程控制(条件语句、循环语句)。

2. Matlab绘图与动画:二维绘图、三维绘图、动画制作。

3. 简单交互式小游戏设计:- 猜数字游戏:随机生成一个数字,学生编写程序实现用户输入猜测,程序给出提示的功能。

- 迷宫游戏:设计一个简单迷宫,编写程序实现角色移动、碰撞检测和路径寻找。

4. 团队项目实践:学生分组设计并实现一个Matlab小游戏,要求包含交互、绘图和动画功能。

教学内容安排与进度:第一课时:Matlab基础知识回顾。

第二课时:Matlab绘图与动画。

第三课时:简单交互式小游戏设计(猜数字游戏)。

第四课时:简单交互式小游戏设计(迷宫游戏)。

第五课时:团队项目实践。

本教学内容基于Matlab编程知识,结合课程目标,制定详细的教学大纲。

matlab课后习题解答第二章

matlab课后习题解答第二章

第2章符号运算习题2及解答1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”符号对象?3/7+0.1; sym(3/7+0.1); sym('3/7+0.1'); vpa(sym(3/7+0.1))〖目的〗●不能从显示形式判断数据类型,而必须依靠class指令。

〖解答〗c1=3/7+0.1c2=sym(3/7+0.1)c3=sym('3/7+0.1')c4=vpa(sym(3/7+0.1))Cs1=class(c1)Cs2=class(c2)Cs3=class(c3)Cs4=class(c4)c1 =0.5286c2 =37/70c3 =c4 =Cs1 =doubleCs2 =symCs3 =symCs4 =sym2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认为是自由符号变量.sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)')〖目的〗●理解自由符号变量的确认规则。

〖解答〗symvar(sym('sin(w*t)'),1)ans =wsymvar(sym('a*exp(-X)'),1)ans =asymvar(sym('z*exp(j*th)'),1) ans = z5求符号矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=333231232221131211a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。

〖目的〗● 理解subexpr 指令。

〖解答〗A=sym('[a11 a12 a13;a21 a22 a23;a31 a32 a33]')DA=det(A) IA=inv(A);[IAs,d]=subexpr(IA,d) A =[ a11, a12, a13] [ a21, a22, a23] [ a31, a32, a33] DA =a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31 IAs = [ d*(a22*a33 - a23*a32), -d*(a12*a33 - a13*a32), d*(a12*a23 - a13*a22)] [ -d*(a21*a33 - a23*a31), d*(a11*a33 - a13*a31), -d*(a11*a23 - a13*a21)] [ d*(a21*a32 - a22*a31), -d*(a11*a32 - a12*a31), d*(a11*a22 - a12*a21)] d =1/(a11*a22*a33 - a11*a23*a32 - a12*a21*a33 + a12*a23*a31 + a13*a21*a32 - a13*a22*a31)8(1)通过符号计算求t t y sin )(=的导数dtdy。

MATLAB程序设计及应用第2版课件全全书教学教程完整版电子教案最全幻灯片

MATLAB程序设计及应用第2版课件全全书教学教程完整版电子教案最全幻灯片

第1章 MATLAB入门与基本操作
1.3 MATLAB的安装启动 与操作桌面简介
1.3.1 MATLAB的安装和启动
MATLAB 可以在Windows环境下直接安装。在
MATLAB安装完成后,会在Windows桌面上自动生成
MATLAB的快捷方式图标

1.3.1 MATLAB的安装和启动
双击图标
1.3.2 MATLAB默认窗口简介
• 指令窗(Command Window) 该窗口是进行各种MATLAB操作的最主要窗口。它位于 MATLAB默认窗口的正中间。用户可以在该窗口中提示符 “fx>>”后直接键入指令,按“Enter”键后,即可运行并 显示除窗口外的所有运行结果。当指令窗口提示符为 “fx>>”时,表示系统已经准备好,用户可以输入指令、函 数、表达式,按“Enter”键后便可执行。
1.4 MATLAB指令窗操作入门
,就打开了如图1.1所示的MATLAB默认窗口
(Desktop)。
图1.1
1.3 MATLAB的安装启动 与默认窗口简介
1.3.2 MATLAB默认窗口简介
图1.1所示的MATLAB默认窗口分为5个区域:指令窗、 当前目录窗、历史指令窗、工作空间窗和Details窗。 另外,在MATLAB默认窗口的上方,还嵌入了菜单栏 和工具栏,如图1.1所示。它们的使用及选择方式与 Windows环境中的相同。
图1.2
第1章 MATLAB入门与基本操作
1.4 MATLAB指令窗操作入门
1.4.1 MATLAB指令窗简介
MATLAB指令窗位于MATLAB默认窗口的正中间,如图 1.1所示。如果用户希望得到脱离默认窗口的几何独立的指 令窗,只要单击图1.2中的图标 ,并在下拉菜单中选择

matlab第二次

matlab第二次

Matlab素质拓展课第二次作业第二次课知识点if 选择语句for while 循环语句子函数(多个输入参数输出参数)递归二分法秦九韶算法等3.3 写一个名为nexthour的函数,接收一个整数参数,该参数是一天内的某个小时,然后返回下一个小时。

假定是12小时制,所以例子中12的下一个小时是1.% 3.3 写一个名为nexthour的函数,% 接收一个整数参数,该参数是一天内的某个小时,然后返回下一个小时。

% 假定是12小时制,所以例子中12的下一个小时是1.function y=nexthour(n)if n>=1&&n<=11y=n+1;elseif n==12y=1;elsey=-1;disp('输入错误!');endend3.6 写一个脚本,提示用户输入分数的分子和分母。

如果分母是0,则打印错误信息,指出0不能做分母。

如果分母不是0,则打印分数的结果。

% 3.6 写一个脚本,提示用户输入分数的分子和分母。

% 如果分母是0,则打印错误信息,指出0不能做分母。

% 如果分母不是0,则打印分数的结果。

clc;clear;fenzi=input('请输入分子:');fenmu=input('\n请输入分母:');if fenmu==0disp('打印错误!分母不能为0!')elsefprintf('分数=%d/%d\n',fenzi,fenmu);end3.11 写一个函数createMToN,它能够创建并返回一个从m到n的整数组成的向量(m是第一个输入参数,n是第二个),不管m是小于n还是大于n。

如果m等于n,该向量正好是1*1的,或者说是标量。

%dy_chapter3_11.m cerateMToNfunction vec=dy_chapter3_11(m,n)if m>nvec=m:-1:n;elseif mvec=m:n;elsevec=m;end3.17 写一个脚本,它能生产一个随机整数,并且打印该随机整数是一个偶数还是一个奇数。

第二次课MATLAB

第二次课MATLAB
19
• 由函数struct来定义结构型变量,其调用格式如下: 结构型变量名=struct (元素名1,元素值1,元素名2,元素值2,……) 如:>> C=struct(„c1‟,1,‟c2‟,B,‟c3‟,‟hgfd‟) C= c1: 1 c2: [2x3 double] c3: 'hgfd' 与单元型变量相似,结构型变量也可以嵌套定义。 如:>> C.c1=A %嵌套结构的定义 C= c1: [1x2 struct] c2: [2x3 double] c3: 'hgfd' >> C.c1(1).a1 %嵌套结构型变量的引用 ans =abcd
4
在MATLAB语言中变量的命名遵循如下规则: 变量名区分大小写; 变量名长度不超过31位,第31位字符之后的字符将被忽略; 变量名以字母开头,可包含字母、数字、下划线,但不能使用 标点。 MATLAB语言中的变量也存在变量作用域的问题,在末加特殊 说明的情况下, MATLAB语言将所识别的一切变量视为局部变量, 即仅在其调用的M文件内有效。若要定义全局变量,应对变量进 行说明,即在变量前加关键字 global。 2. 常量
15
对单元的元素直接赋值,可将单元型变量的下标用大括号索引,如:
>> B{1,1}=1:4; >> B{1,2}=A; >> B{1,3}=„abcd‟; • 由cell函数赋值 • • 如:命令B=cell(1,3) 将在工作空间中建立一单元 型变量B,其元素为空矩阵,然后再对各元素赋值。 单元型变量的元素不是以指针方式保存的。 单元型变量与矩阵的区别是,单元型变量自身可以嵌套,即单元 型变量的元素可以是单元型变量,而一般情况下,矩阵的元素不 能是矩阵元素。 例如:>> C={1:4,A,B} C=[1*4double] [2*2double] >> C{3}{3} {1*3 cell}

MATLAB应用课题二GUI拨号实验

MATLAB应用课题二GUI拨号实验

《MATLAB基础与应用》课题二:基于MATLAB的双音多频(DTMF)信号的产生、接收以及可视化拨号系统的实现内容一:研究DTMF信号的产生以及基于Goertzel算法的接收原理,并使用MATLAB 编程实现DTMF拨号系统的信号发生及接收。

双音多频系统,简称为DTMF(Double Tone Multi Frequency),是用按键进行电话拨号的一种制式,由美国AT﹠T贝尔实验室开发。

作为实现电话号码快速可靠传输的一种技术,它具有很强的抗干扰能力和较高的传输速度,可广泛应用于电话通信系统中。

但绝大部分是用作电话的音频拨号。

另外,它也可以在数据通信系统中广泛地用来实现各种数据流和语音等信息的远程传输。

每个DTMF信号是由2个单频率信号叠加而成的,其中一个频率处于低频段(小于1KHz),另一个频率处于高频段(1KHz~2KHz)。

高低频段各有四个频率,四个低频表示四行,四个高频表示四列,高、低频组合可以提供16个字符。

第四列的最高频率暂时不用,因此可以提供12个字符,包括0到9中一个特定的十进制数字,或者字符*和#。

而其它四个字符保留以备扩展使用。

字符分配如表1所示。

表1 双音多频通信系统编码表(第四列备用)DTMF是一个典型的小型数字信号处理系统。

它既有模拟信号的生成和传输部分,需要使用D/A转换;又有在接收端对它进行A/D转换并进行数字信号处理即检测的部分。

而且为了提高系统的检测速度并降低成本,还开发了一种特殊的DFT算法,称为Goertzel算法。

这种算法既可以用硬件(专用芯片)也可以用软件实现。

所以DTMF系统的设计问题是理论与工程相结合的一个典型范例。

1、DTMF信号的产生:每个字符对应的DTMF信号由两个正弦波的数字样本叠加而成。

正弦波的采样率为8kHz,硬件必需每125ms输出一个样本。

将这个叠加信号送到D/A转换器变换成模拟信号,再通过电话线传送到交换机。

2、DTMF信号的接收:在接收端,将接收到的模拟音频信号进行A/D转换,恢复为数字信号,然后检测其频谱以确定所发送的字符。

MATLAB第二次

MATLAB第二次
例:A=[1 0 3; 4 13 6;7 4 9] B=[1,2,3; 4,5,6; 7,8,9] 求:X1=A.^2 X2=A.^B
5 矩阵的转置
运算符: ‘ 运算规则: (1)若矩阵A的元素为实数、则A’返回A的转置; (2)若矩阵A为复数矩阵,则A’中的元素由A对应 元素的共轭复数构成。
例:A=[1 0 3; 4 13 6;7 4 9]; B=[1 2 3; 4 5 6;7 8 9+9i] 求:X1=A’ X2=B’
函数调用格式
(1) zeros (n): 生成 n×n阶0矩阵。 (2) zeros (m,n): 生成 m×n阶0矩阵。 (3) zeros (size (a)): 生成与a阶数相同的0矩阵。 (4) eye (n):生成 n阶单位矩阵。 (5) eye (m,n):生成 m×n阶单位矩阵。 (6) eye (size (a)):生成与a阶数相同的单位矩阵。 (7) ones (n):生成 n阶全1矩阵。 (8) ones (m,n):生成 m×n阶全1矩阵。 (9) ones (size (a)):生成与a阶数相同的全1矩阵。 (10) rand (n):生成 n×n阶随机矩阵,其元素值在0和1之间。 (11) rand (m,n):生成 m×n阶随机矩阵。 (12) rand:生成一个随机数。 (13) rand (size (a)):生成与a阶数相同的随机矩阵。
MATLAB 语言与应用
主讲:冯栋彦 机械学院412
第二次 MATLAB 数值计算
教学目标:
1 矩阵的定义与建立
2 矩阵运算 3 多项式运算
一、矩阵创建 1 矩阵是线性代数的基本运算单元。 2 矩阵含有M行N列数值。 3 矩阵中的元素可以是实数或复数。 4 矩阵相关的基本运算:加,减,内积, 逆矩阵,转置,线性方程式,特征值, 特征向量,矩阵分解。

精讲多练MATLAB第二版课程设计

精讲多练MATLAB第二版课程设计

精讲多练MATLAB第二版课程设计一、设计背景为了帮助学生更深入地理解MATLAB编程语言,提高他们的编程能力和实际应用能力,本文介绍了一种通过课程设计来实现对MATLAB第二版的精讲多练。

二、课程设计目标本课程旨在:1.帮助学生掌握MATLAB的基础知识;2.培养学生的编程能力;3.培养学生的实际操作能力;三、课程设计内容1. MATLAB基础知识本节内容主要介绍MATLAB的基础知识,包括MATLAB环境搭建、MATLAB基本操作、MATLAB绘图等。

1.1 MATLAB环境搭建•介绍MATLAB的安装流程及相关设置•演示Matlab命令行窗口和编译器的基本操作1.2 MATLAB基本操作•介绍MATLAB的数据类型、数组和矩阵的操作方法•演示Matlab的基本数据类型和函数的使用1.3 MATLAB绘图•介绍MATLAB的图形绘制功能•演示MATLAB的绘图函数库的使用2. MATLAB进阶应用本节内容主要介绍MATLAB的高级应用,包括MATLAB编程、MATLAB数据处理、MATLAB信号处理等。

2.1 MATLAB编程•介绍MATLAB编程方法和技巧•演示用MATLAB进行编程和调试的过程2.2 MATLAB数据处理•介绍MATLAB的数据处理功能•演示使用MATLAB进行数据处理的基本方法2.3 MATLAB信号处理•介绍MATLAB的信号处理功能•演示使用MATLAB进行信号处理的基本方法3. MATLAB实例应用本节内容主要介绍MATLAB在实际工程应用中的方法和技巧。

3.1 MATLAB在信号分析中的应用•介绍MATLAB在信号分析领域的应用场景及方法•演示使用MATLAB进行信号分析的应用实例3.2 MATLAB在图像处理中的应用•介绍MATLAB在图像处理领域的应用场景及方法•演示使用MATLAB进行图像处理的应用实例3.3 MATLAB在控制系统设计中的应用•介绍MATLAB在控制系统设计领域的应用场景及方法•演示使用MATLAB进行控制系统设计的应用实例四、教学方法1.讲授MATLAB的基础知识,并提供大量练习题目进行实践;2.演示MATLAB进阶应用的相关操作,并提供相应的实例进行练习;3.指导学生完成课程设计要求,并进行检查和评估。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
曲线的关系为: 例3
y1 = f ( x1 ), y2 = f ( x2 ), y3 = f ( x3 ),L
在同一图形窗口画出三个函数y = cos 2x ,y = x2 , y = x的图形,自变量范围为:-2≤ x ≤ 2 。 解: Matlab命令: x=-2:.1:2; plot(x,cos(2*x),x,x.^2,x,x) legend('cos(2x)','x^2','x')
注:
legend作用是:对图形 作用是: 作用是 进行图例标,
其标注顺序应与plot命令保持一致。 命令保持一致。 其标注顺序应与 命令保持一致
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -8 sin(x ) cos(x)
-6
-4
-2
0
2
4
6
8
命令形式②:plot(x1,y1,x2,y2,x3,y3…) 功能:在同一图形窗口画出多条曲线 。
t满足
0 ≤ t ≤ 2π
解: Matlab 命令为 t=0:pi/50:2*pi; plot(cos(t),sin(t),’b*’) ,grid on, hold on,plot(sin(t),sin(2*t),’rp’) hold off plot(t,sin(t))
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -1
3.线型、定点标记、颜色 .线型、定点标记、 二维绘图指令还提供一组控制曲线线型、标记类型、颜 色的开关。具体命令形式如下: plot(x,y,’ String’) plot(x1,y1,’ String1’,x2,y2,’ String2’,…) 其中,string是字符串,该字符串由表3.1、表3.2表3.3 (见课本P56)中的字符组成。
线型符号 : -. --
线型 实线 点线 点划线 虚线
绘图字符 . 。 X + * s
数据点 黑点 小圆圈 差号 十字标号 星号 小方块
绘图字符 d ^ < > p h
数据点 钻石形 三角形(向上) 三角形(向左) 三角形(向右) 五角星 六角星
数据点控制字符表 色彩字符 y/yellow m/magenta c/cyan r/red g/green b/blue w/white k/black 色彩 黄色 洋红 青色 红色 绿色 蓝色 白色 黑色
5.一个图形窗口多个子图的绘制 一个图形窗口多个子图的绘制
subplot指令它不仅适用于二维图形而且也适用于三维图形。 其本质是将窗口分为几个区域,再在每个小曲域中画图形。
命令形式 subplot(m,n,i) 功能:把图形窗口分为m×n个窗口,并在第i个子窗口中画图。
在同一坐标系中画出两个函数y 的图形,自变量范围 例5 在同一坐标系中画出两个函数 = cos 2x ,y = x的图形 自变量范围 的图形 函数y 为红色实线, 为蓝色虚线。 为:-2≤ x ≤ 2,函数 = cos 2x为红色实线 函数 = x 为蓝色虚线。并 ≤ 函数 为红色实线 函数y 加注图名、坐标轴、图例、图形说明。 加注图名、坐标轴、图例、图形说明。 解: Matlab命令为 命令为 x=-2:.1:2; y1=cos(2*x);y2=x subplot(1,2,1) plot(x,y1,'r-',x,y2,'b--'),grid on title('曲线 曲线y1=cos(2x)与y2=x') 曲线 与 xlabel('x轴'),ylabel('y轴') 轴 轴 legend('y1=cos(2x)','y2=x') gtext('y1=cos(2x)'),gtext('y2=x') subplot(1,2,2) plot (x,y1,x,y2)
例6(4): x=1:.1:3;
y=1:.1:4;
[X,Y]=meshgrid(x,y); Z=ones(size(X)); mesh(X,Y,Z)
例7
用平行截面法讨论由方程构成的马鞍面形状。 用平行截面法讨论由方程构成的马鞍面形状。
解:Matlab命令为 命令为 t=-10:1:10; [x,y]=meshgrid(t); z1=x.^2-2*y.^2; subplot(1,3,1),mesh(x,y,z1),title('马鞍面 马鞍面') 马鞍面 a=input('a=(-50<a<50)'), z2=a*ones(size(x)); subplot(1,3,2),mesh(x,y,z2),title('平面 平面') 平面 r0=abs(z1-z2)<=1; zz=r0.*z2;yy=r0.*y;xx=r0.*x; subplot(1,3,3),plot3(xx(r0~=0),yy(r0~=0),zz(r0~=0),'x') title('交线 交线') 交线
4 cos(2x) 3 x2 x
2
1
0
-1
-2 -2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.基本绘图控制参数 .
图形的重叠绘制 hold指令 hold on hold off 保留当前图形和它的轴,使此后图形叠放在 当前图形上 将当前窗中的旧图形抹掉,然后画上新图形。
图形放大指令 zoom Zoom xon 对x轴起放大作用 Zoom yon 对y轴起放大作用
线型控制字符表 线型控制字符表
颜色控制字符表 颜色控制字符表
利用hold指令在同一坐标系中画出如下两条参数曲线,参数曲线方程为: hold指令在同一坐标系中画出如下两条参数曲线 例4 利用hold指令在同一坐标系中画出如下两条参数曲线,参数曲线方程为:
x 1 = cos t , y 1 = sin t ; x 2 = sin t , y 2 = sin 2 t
Matlab 绘图
一、Matlab 平面曲线绘图 二、Matlab空间曲线绘图 三、Matlab空间曲面绘图
一、Matlab 平面曲线绘图
1、基本绘图指令 命令形式①:plot(x,y) 画一条或多条折线图。 画一条或多条折线图 plot(x, y) x=a: h: b 可用来画函数 f ( x ) 的图形。 的图形。 作划分, 作划分, 在自变量的取值范围 [ a , b ] 内, 生成自变量数据点 y=f(x) 生成函数值向量
二、Matlab空间曲线绘图
三维空间曲线命令plot3 plot3(x,y,z) plot3(x,y,z,’String’) plot3(x1,y1,z1,’String1’,x2,y2,z2, ’String2’,……) plot3与plot的用法相同
三、Matlab空间曲面绘图
Meshgrid命令 命令
图形标注text 和 gtext 图形标注 text(x,y,z’string’) 功能:在点(x,y,z)上加注文字说明。 gtext(‘String’) 功能:在鼠标指定位置上标注 说明: 说明:使用gtext指令后,会在当前图形上出现一个十字 叉丝,等待用户选定位置进行标注。移动鼠标到 位置按下鼠标左键 matlab 就在选定位置标上文字。
作业 P79 689
meshgrid的调用形式 的调用形式: 的调用形式 [X,Y]=meshgrid(x,y) 在绘制二维图形时生成小矩 形的格点 [X,Y]=meshgrid (x) 等价于[X,Y]=meshgrid(x,x)
例6(1):x=[1,2,3];y=[1,2,3,4]; [X,Y]=meshgrid(x,y) ; ;
② grid on 可在图形中标出网格 线, grid off 可以使网格线消隐。 可以使网格线消隐。
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -5
-4
-3
-2
-1
0
1
2
3
4
5
例 2 在同一座标系中画出y=sinx和y=cosx的图形 x=-2*pi:pi/50:2*pi; y=[sin(x);cos(x)]; plot(x,y),grid on legend('sin(x)','cos(x)')
π 通常取步长h为 , 通常取步长 为0.1, / 50
例1 画出函数y = sin x2 在-5 ≤ x ≤ 5 的图形。 解: Matlab 命令: x=-5: .1 :5; y=sin(x ^2); plot(x,y),grid on
说明: 是数组所以它的乘方是点乘方。 说明:① x是数组所以它的乘方是点乘方。 是数组所以它的乘方是点乘方
例6(3):x=[1,2,3] y=[1,2,3,4] [X,Y]=meshgrid(x,y) X=1 1 1 1 2 2 2 2 3 3 3 3 Y= 1 2 3 4 1 2 3 4 1 2 3 4
Z=ones(size(X));
mesh(X,Y,Z)
2 (3,4,1) 1.5 (2,4,1) 1 (1,4,1) (1,3,1) 0.5 (1,2,1) 0 4 3 2 1.5 1 1 2 (1,1,1) 3 2.5 (2,3,1) (2,2,1) (2,1,1) (3,3,1) (3,2,1) (3,1,1)
X= 1 1 1 1 2 2 2 2 3 3 3 3 Y= 1 2 3 4 1 2 3 4 1 2 3 4
例6(2):x=[1,2,3]
X= 1 1 1 2 2 2 3 3 3
[X,Y]=meshgrid(x)
Y=1 2 3 1 2 3 1 2 3
相关文档
最新文档