通信工程MATLAB上机实验指导书.docx
《通信工程MATLAB上机实验指导书.docx》由会员分享,可在线阅读,更多相关《通信工程MATLAB上机实验指导书.docx(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、MATLAB 试验指导书张 龙河北工程大学信电学院通信工程系2022 年 12 月10试验目的试验一 生疏 MATLAB 环境1. 生疏 MATLAB 主界面,学会常用的窗口的操作2. 学会简洁的矩阵输入3. 生疏 MATLAB 根本语句的使用、矩阵与向量的根本运算试验原理1. 用户第一次使用 MATLAB 时,可通过 demo 命令,启动 MATLAB 的演试程序,领会MATLAB 所供给的强大的运算与绘图功能。也可以键入help 进展进一步了解。2. MATLAB 是以矩阵作为根本编程单元的一种程序设计语言。它供给了各种矩阵的运算与操作,并有较强的绘图功能。在 MATLAB 中输入矩阵最便
2、利的的方式是直接输入矩阵的元素,其方法为:1) 用中括号 把全部矩阵元素括起来;2) 同一行的不同数据元素之间用空格或逗号间隔;3) 用分号;指定一行完毕;4) 也可以分成几行进展输入,用回车符代替分号;5) 矩阵元素可以是任何matlab 表达式 系统将自动计算结果,可以是实数,也可以是复数,复数可用特别函数 i,j 输入。3. MATLAB 语言最根本的赋值语句构造为:变量=表达式。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量(ans 为默认)中并存放于 workspace 工作空间中以备调用。试验内容11用空格或逗号输入矩阵A=1
3、2 3;4 5 6;7 8 9 B=9,8,7;6,5,4;3,2,1;C=4,5,6;7,8,9;1,2,3;或A=1,2,3;4,5,6;7,8,92试用回车代替 A 中的分号,观看输出结果。要求:总结矩阵的输入2. 用edit或选择File|new菜单中的M-file进入编辑器,输入:Base=9,8,7;6,5,4;3,2,1;Base_info=Base+1保存为 Base.m 文件,并通过Debug 中的 run 命令或F5运行之,观看有何特别现象。要求:解释特别现象的缘由。3. 翻开 Workspace 窗口,学习 save 及 load 命令的使用(1) 用 save 命令将上
4、述输入的 A、B、C 三个变量存入 data 或 data.mat 文件;(2) 通过 Current Directory 查找 data;(2) 然后使用 clc 及 clear 命令;(3) 最终通过 load data(或 data.mat)命令可通过向上的方向键找到上条save 命令再修改成 load 命令的方法将变量 A、B、C 调入 Workspce;(4) 执行命令 A+B+C要求:(1) 观看使用上述命令后 Workspce 的变化;(2) 使用命令 save data_new A B -ascii(或 ASCII),转变存储格式,重复上述过程(第 2 步查找 data_new
5、,第 3 步 load data_new, 第 4 步改为 A+B), 观看Workspce 显示结果的不同;(3) 查看 data_new,在 data_new 中取出 A 的值。试验报告要求针对试验内容中的各项要求,做出总结,给出试验报告。试验目的试验二 MATLAB 数值运算及绘图功能1. 把握 MATLAB 特别函数创立矩阵及利用已有矩阵创立矩阵的方法2. 把握矩阵的操作,矩阵之间的运算方法3. 学会使用常用的几种矩阵函数进展简洁的问题求解4. 把握 plot 根本绘图语句的使用试验原理一、利用 MATLAB 特别函数创立矩阵x=a:b;x=linspace(a,b,n); zeros
6、(m,n);ones(m,n); eye(m,n)等randint(m,n):mn 0,1 等概率随机阵rand(m,n):mn (0,1) 间均匀分布随机阵randn(m,n):mn 均值为 0,方差为 1 的标准正态分布随机阵二、矩阵的操作1. 矩阵中元素的表示:一是用两个下标来表示矩阵元素 A(i,j),二是承受矩阵元素的索引值来引用矩阵元素A(index)称序号索引表示法。2. 矩阵中元素的提取和修改(1) 矩阵元素的提取矩阵 A 的第 r 行:Ar,:矩阵 A 的第 r 列:A:,r取矩阵 A 的第 i1i2 行、第 j1j2 列,构成矩阵:A(i1:i2, j1:j2) A 的第
7、i1i2 行,构成矩阵:A(i1:i2,:)删除 A 的第 j1j2 列,构成矩阵: A(:,j1:j2)= 将矩阵 A 和 B 拼接成矩阵:AB;A;B(2) 矩阵元素的修改可以利用下标对矩阵元素进展修改, 可用 find 函数修改3.矩阵中元素的数学运算元素取整函数:round(A)% 四舍五入取整fix(A)%将矩阵 A 中元素按离 0 近的方向取整floor(x)%向负无穷方向取整,即取缺乏整数ceil(x)%向正无穷方向取整,即取过剩整数4.矩阵的一些特别操作旋转与变形 矩阵的变维a=1:12;b=reshape(a,3,4)c=zeros(3,4);c(:)=a(:) 矩阵的变向r
8、ot90:旋转; fliplr:左右翻; flipud:上下翻 矩阵的抽取diag(D)% 取 D 矩阵的主对角元素X=diag(v)%以向量 v 为主对角线元素,其余元素为 0 构成矩阵 X a1=diag(A,1)%取 A 阵第一上对角线的元素A1=diag(a1,-1)%产生以 a1 数组元素为第一下对角线元素的二维数组 矩阵的扩展repmat(D,1,3)%在水平方向铺放三个 D 阵三、矩阵之间的运算1. 矩阵乘法:A*B,只有当前一矩阵的列数和后一矩阵的行数一样或者其中一个为标量时才能进展。2. 矩阵除法:运算符有两种 左除和/右除,两矩阵相除,主要用于方程组求解。 A*x=B 的解
9、为 x=AB;x*A=B 的解为 x=B/A。3x + 2 y - z = 10 32-1 x 10 -x + 3y + 2z = 5A = -132 X = y B = 5 z-1x - y - z = -1 1-1-1要解上述的联立方程式,可利用矩阵左除 做运算,即:X=AB, 左除时要求 A、B 的行数相等。四、常用的几个矩阵函数n=numel(A) %计算矩阵 A 中元素的个n= length(a) %计算向量中元素的个数m,n=size(A) %返回矩阵的行列数size(A,1)%返回矩阵的行数;size(A,2)%返回矩阵的列数max、min 各列最大、最小值,如: Y,I=max
10、(A) %返回各列最大值 Y 及最大值在各列的位置mean 各列平均值;sum 各列求和;std 各列标准差;var 各列方差;sort 各列递增排序试验内容1. 写出以下命令的运算结果,然后验证:1A=eye(2); 5:5:113a=1 2 4 5;b=(a=-2 & a4)6m=7 6 5 8 10 4; m(find(m=7)=2. 生疏矩阵的根本运算(1) 矩阵的根本数学运算键入矩阵 a,b a=1 2;0 3b=3 4+3i;8+i 10作如下运算,并记录结果。V1=a+b V2=sum(a) V3=sum(b) V4=a V5=a. V6=bV7=b.比较 V4 和 V5 有什么
11、不同, V6 和 V7 有什么不同 V8=a*bV9=a.*b比较 V8 和 V9 有什么不同 V10=a2V11=a/b(矩阵右除,常规除)V12=ab(矩阵左除,比较左除与右除的结果有什么不同)3. 利用randn函数建立33的矩阵:(a) 使用函数sum, 分别求此矩阵第一列的和、第三行的和(b) 使用函数max, 找出此矩阵中, 最大的元素4. 按如下要求,绘制两条曲线,一条是余弦曲线 x (t )= cos(2p 20t ),另一条是按 100Hz 抽样频率对余弦曲线进展抽样得到的离散序列。设 t 的时长为 0.1s。要求:(1) 在同一窗口中使用hold on 命令绘出上述两条曲线
12、,并设置图形属性如下: 连续曲线:黑色,实线抽样序列:红色,虚线, 宽为 3 个象素图题为 连续余弦曲线及其抽样序列 ,并加图例;(2) 使用 subplot 命令绘出上述两条曲线;(3) 交互式绘图方式将图题改为“余弦曲线”。5. MATLAB 的绘图修饰(1) 颜色、线型和数据点标志x=0:pi/50:2*pi; y=cos(x);plot(x,y,”-.mo”)%用品红色、点划线和数据标记点符号“o”来绘图plot(x,y,”-g*”)%用绿色、虚线和数据标记点符号“*”来绘图(2) 坐标轴的掌握x=0:0.02:5;y=x.2; plot(x,y,”-g*”)axis(-1,11,-2
13、,30);%比较用此命令前后图形的区分(3) 坐标网格在(2)命令的根底上,参加命令:grid on可看到图形上的网格线。(4) 图形的标注和图例x=linspace(0, pi,20); y=sin(x);z=cos(x);w=x-0.5;plot(x,y,”b:”,x,z,”r-”,x,w,”-.b*”);%绘图xlabel(”X axis”);% x 轴的标注ylabel(”function y,z and w”);%y,z,w 轴的标注title(”Three Function”);%图形的标题grid ontext(2,1,”y=sinx”)%在点(6,-0.5)处标注text(2,
14、0. 3,”z=cosx”)gtext(”w=x-0.5”)legend(”y=sinx”,”z=cosx”,”w=x-0.5”)%制作图例说明盒试验报告要求1. 写出每一试验的设计过程及试验结果2. 总结试验,写出上机收获与体会试验三 MATLAB 程序设计根底试验目的1. 生疏 MATLAB 的数据构造2. 生疏流程掌握语句的使用,搞清 MATLAB 中循环体与 C 语言的不同3. 把握脚本与函数文件的编程方法4. 进一步把握绘图语句的使用试验原理一、MATLAB 的数据类型在 MATLAB 中有六种常用根本数据类型: double(双精度数值char(字符 sparse稀疏数据):一般用
15、于处理稀疏矩阵storage存储型:只用于内存的有效存储cell单元数组: struct构造:一般只在大型程序中使用在 MATLAB 中,全部的数都用double 浮点双精度类型来存储和运算。因而省略了定义类型的语句,编程时无需去思考区分,也削减了错误。固然对于那些原来要用一两个字节来表示的变量来说,这种做法铺张内存,又降低了运算速度。但用牺牲存储空间和运算时间来换取人机交互友善性的战略被证明是有效的,它形成了科学计算语言的特色,使人们不在编程的细节上花精力,而把留意力集中到科学计算的方法和建模合理性等大问题上去。二、MATLAB 的流程掌握语句与 C 语言类似,MATLAB 程序的掌握构造也
16、有挨次构造、选择构造和循环构造三种,另外还有一种摸索构造。由于 MATLAB 以矩阵为运算单位,所以在 for 和 while 循环构造及分支构造的使用上与 C 略有不同,这是特别要留意的,期望通过本次试验加以理解。1. for 循环的格式for 循环可承受有效维数的数组作为循环变量for x=arrayendcommands ;For 循环语句的执行过程:当循环变量为矩阵时,其执行过程是从矩阵的第一列开头,依次将矩阵的各列之值赋值给变量,然后执行语句组中的语句,直到最终一列。2. switch 分支构造的格式switch switth_expr 分支条件(数值或字符串) case数值(或字符
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通信工程 MATLAB 上机 实验 指导书
限制150内