资源描述
预备知识
一、矩阵处理
1)在MATLAB中矩阵的创建应遵循以下基本常规:矩阵元素应用方括号([])括住;每行内的元素间用逗号(,)或空格隔开;行与行之间用分号(;)或回车键隔开;元素可以是数值或表达式。
2)矩阵赋值
若A=[1 2 3; 4 5 6; 7 8 9;10 11 12]
若A=[1 2 3; 4 5 6; 7 8 9;10 11 12],选出前3行构成矩阵B,B=A(1:3,:)选出前2列构成矩阵C,C=A(:,1:2)
3)矩阵删除
在MATLAB中可以对数组中的单个元素、子矩阵和所有元素进行删除操作,删除就是将其赋值为空矩阵(用[]表示)。
若将A的2,3行去除,则A([2,3],:)=[]
4)矩阵变换
A' %矩阵A的转置
A(:) %矩阵A按列展开形成一维数组
5)矩阵运算
点运算
两个矩阵之间的点运算是按照数组运算规则计算,矩阵的对应元素直接运算。要求参加运算的矩阵大小必须相同。有“.*”、“./”和“.\”三种运算符。
乘法运算
两个矩阵的维数相容时(A的列数等于B的行数),可以进行A乘B的乘法运算。
二、M文件
if语句
最简单的选择结构语句,其基本格式为:
if 表达式
语句组
end
说明:表达式多为关系或逻辑表达式。如果表达式为真(非零),就执行if和end之间的语句组,然后再执行end之后的语句;如果表达式为假(零),就直接执行end之后的语句。
for语句
for语句为计数循环语句,在许多情况下,循环条件是有规律变化的,通常把循环条件初值、终值和变化步长放在循环语句的开头,这种形式就是for语句的循环结构。for循环的一般形式是:
for 循环变量名=表达式1:表达式2:表达式3
语句体
end
说明:其中表达式1的值是循环变量的初值,表达式2的值是循环步长,表达式3的值是循环变量的终值。初值、步长和终值可以取整数、小数、正数和负数,步长可以缺省,缺省值为1。
continue语句
continue语句用于控制for循环或while循环跳过某些执行语句,当出现continue语句时,则跳过循环体中所有剩余的语句,继续下一次循环,即结束本次循环。
三、函数文件
基本结构
函数文件由function关键字引导,其基本结构为:
function [输出形参表]=函数名(输入形参表)
注释说明部分
函数体语句
return
说明:以function开头的一行为引导行,表示该文件是一个函数文件。函数名的命名规则与变量名相同。输入形参表是函数的输入参数,可以有多个,用“逗号”来分隔;输出形参表为函数的输出参数,当输出形参只有一个时,直接输入变量名而不用方括号,多个输出形参用“逗号”来分隔。
注意:函数文件编辑结束后,不能像M文件那样单击〈F5〉或单击Debug → Save and Run选项运行,而是要直接存盘。
函数调用
函数文件编制好后,就可以调用函数进行计算了。函数调用的一般格式为:
[输出实参表]=函数名(输入实参表)
需要注意的是,函数调用时各实参出现的顺序、个数,应与函数定义时形参的顺序、个数一致,否则会出错。函数调用时,先将实参传递给相应的形参,从而实现参数传递,然后再执行函数的功能。
四、二维绘图
二维绘图
plot(x,y,’参数’)
说明:x,y可以是向量或矩阵,参数选项为一个字符串,决定二维图形的颜色、线型及数据点的图标。
plot (x1, y1, ‘参数1’,x2, y2, ‘参数2’,…)
说明:可以用同一函数在同一坐标系中画多幅图形,x1,y1确定第一条曲线的坐标值,参数1为第一条曲线的选项参数;x2,y2为第二曲线的坐标值,参数2为第二条曲线的选项参数;其他图形以次类推。
坐标轴的调整
(1)坐标轴比例控制
函数:axis([xmin xmax ymin ymax])
说明:将图形的x轴范围限定在[xmin xmax]之间,y轴的范围限定在[ymin ymax ]之间。 MATLAB绘制图形时,按照给定的数据值确定坐标轴参数范围。
(2)有关图形的标题、坐标轴标注等图形文字标识类函数如下:
函数:title(‘字符串’)
说明:图形标题。
函数:xlabel(‘字符串’)
说明:x轴标注。
函数:ylabel(‘字符串’)
说明:y轴标注。
函数:text(x,y,‘字符串’)
说明:在坐标(x,y)处标注说明文字。
函数:gtext(‘字符串’)
说明:用鼠标在特定处标注说明文字。
图形控制
(1)图形的保持
函数:hold on
说明:保持当前图形及轴系的所有特性
(2)网格控制
函数:grid on
说明:在所画的图形中添加网格线
五、三维绘图
1.meshgrid函数
按指定方式创建网格矩阵。
函数:[X,Y]=meshgrid(a,b)
说明:将等长度向量a,b,转换为二维网格数据,再以一组z轴的数据对应到这个二维网格,即可得到三维数据。
MATLAB提供了plot3函数绘制三维曲线图形。该函数将绘制二维图形的函数plot的特性扩展到了三维空间,其功能和使用方法类似于绘制二维图形的函数。其格式为:
plot3(x1,y1,z1,‘参数1’,x2,y2,z2,‘参数2’,…)
三维曲面图:
函数
名称
命令格式
说明
三维
网格
曲面
mesh(x,y,z,c)
mesh(x,y,z)
mesh(z,c)
mesh(z)
当x,y为n×m矩阵时,且x矩阵的所有行向量相同、y矩阵的所有列向量相同时,mesh函数将自动执行meshgrid(x,y),将x,y转换为三维网格数据矩阵。z和c分别为m×n矩阵,c表示网格曲面的颜色分布,若省略,则网格曲面的颜色亮度与z方向上的高度值成正比。x,y若均为省略,则三维网格数据矩阵取值x=1:n,y= 1:m
填充颜色的三维网格曲面
surf(x,y,z,c)
surf (x, y, z)
surf (z,c)
surf (z)
函数mesh绘制连接三维空间的一些四边形所构成的曲面,该曲面只有四边形的边用某种颜色绘出,四边形的内部是透明的。surf函数绘制的曲面也由一些四边形所构成,不同的是四边形的边是黑色的,其内部用不同的颜色填充
六、符号计算
1.定义符号变量
函数:syms 变量名1 变量名2 变量名3 …说明:一次创建多个符号变量。
2.符号方程求解
[x1,x2,…xn]solve(s1,s2,…sn)
求解由符号表达式s1,s2,…sn组成的代数方程组,自变量分别为x1,x2,...xn
3.级数的符号求和
函数格式
说明
函数格式
说明
symsum(S)
计算符号表达式S(表示级数的通项)对于默认自变量的不定和。
symsum(S,a,b)
计算符号表达式S对于默认自变量从a到b的有限和。
symsum(S,x)
计算符号表达式S对于自变量x的不定和。
symsum(S,x,a,b)
计算符号表达式S对于自变量x从a到b的有限和。
4. 符号计算结果的绘图
实验一 离散信源及其信息测度
一、[实验目的]
1.掌握离散信源熵的原理和计算方法。
2.熟悉matlab软件的基本操作,练习应用matlab软件进行信源熵函数曲线的绘制。
3.理解信源熵的物理意义,并能从信源熵函数曲线图上进行解释其物理意义。
二、[实验环境]
windows 系统,MATLAB
三、[实验原理]
1. 离散信源相关的基本概念、原理和计算公式
(1)产生离散信息的信源称为离散信源。离散信源只能产生有限种符号。随机事件的自信息量I(xi)为其对应的随机变量xi 出现概率对数的负值。
即: I (xi )= -log2p ( xi)
(2)信源输出的各消息的自信息量的数学期望为信源的信息熵,信源熵是信源的统计平均不确定性的描述,是概率函数的函数。表达式如下:
2. 二元信源的信息熵及二维绘图
1)设信源符号集X={0,1} ,每个符号发生的概率分别为p(0)= p,p(1)= q,p+ q =1,即信源的概率空间为 :,则该二元信源的信源熵为:
H( X) = - plogp–qlogq = - plogp –(1 - p)log(1- p)
即:H (p) = - plogp –(1 - p)log(1- p) 其中 0 ≤ p ≤1
2)MATLAB二维绘图
用matlab 中的命令plot( x , y) 就可以自动绘制出二维图来。
如:在matlab 上绘制余弦曲线图,y = cos x ,其中 0 ≤ x ≤ 2p。
>>x =0:0.1:2*pi; %生成横坐标向量,使其为 0,0.1,0.2,…,6.2
>>y =cos(x ); %计算余弦向量
>>plot(x ,y ) %绘制图形
3.求解联合熵,条件熵,平均符号熵
4.求解马尔可夫信源的稳态分布及n步转移矩阵
P(n)=P^n;稳态分布要满足W*P=W及W=1
四、[实验内容]
1、用matlab编程实现离散无记忆信源熵值的计算。编写一M函数文件:
function H= entropy(p)
2、绘制2元符号信源熵函数与概率分布曲线,图形如下图所示:
3、设X是一个离散平稳有记忆信源,记忆长度N=2,已知联合概率如下图所示:
ai
aj
0
1
2
0
1/4
1/18
0
1
1/18
1/3
1/18
2
0
1/18
7/36
求H(X2|X1)及H2(X)
4、一个马尔可夫信源有3个符号,转移概率为:,,,,,,,,,求出各符号稳态概率分布及二步转移概率矩阵
五、[设计思路]
1) 求解信息熵过程:去除信源中符号分布概率为零的元素, 根据平均信息量公式,求出离散信源的熵。
2) H (p) = - plogp –(1 - p)log(1- p) 其中 0 ≤ p ≤1 ,用matlab 中的命令plot( x , y) 就可以自动绘制出二维图来。
3) 根据公式进行求解
4) 可列出状态转移矩阵为:
,设状态u1,u2,u3稳定后的概率分别为W1,W2、W3
由得
六、[实验步骤]
七、[实验结果]
展开阅读全文