微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等
本节目录
一、变量
(1)变量的赋值
(2)变量的删除与修改
(3)局部变量和全局变量
(4)Matlab内部预定义变量和常数
二、矩阵及其运算
(1)一般矩阵的生成
(2)特殊矩阵的生成
(3)矩阵运算
本节内容
一、变量
Matlab的变量不需要实现声明类型,可直接进行数学计算
Matlab中的变量命名以字母开头,后接字母、数字或下划线的字符序列,最多63个字符,区分字母的大小写。
(1)变量的赋值
赋值语句为变量=表达式
x=5 表示将5赋值给x
y=1 表示将1赋值给y
(2)变量的删除与修改
who和whos显示驻留的变量名清单
clear命令用于删除工作空间中的变量
(3)局部变量和全局变量
局部变量是指每个函数体内自己定义的,不能从其他函数和Matlab工作空间访问的变量。
全局变量是指用关键字“global”声明的变量。全局变量名应尽量大写,并能反映它本身的含义。若需要在工作空间和几个函数中都能访问一个全局变量,必须在工作空间和这几个函数中都声明该变量是全局的。
(4)Matlab内部预定义变量和常数
变量ans:表示当前未定义变量名的答案
常数eps:表示浮点相对精度,其值是从1.0到下一个最大浮点数之间的差值。该变量值作为一些Matlab函数计数的相对浮点精度,按IEEE标准,eps=2-52,近似为2.2204e-016
常数Inf:表示无穷大,当输入或计算中有除以0时产生Inf
虚数单位i、j:表示复数虚部单位,相当于✓-1
NaN:表示不定型值,是由0/0运算产生的
常数pi:表示圆周率π,其值为3.1415926535897……
nargin:函数的输入变量个数
nagout:函数的输出变量个数
二、矩阵及其运算
Matlab具有强大的矩阵运算和数据处理功能,对矩阵的处理必须遵从代数规则
(1)一般矩阵的生成
最简单的办法从键盘直接输入矩阵元素。
直接输入矩阵元素时,各元素之间用空格或逗号隔开,用分号或回车结束矩阵行,用中括号把矩阵所有元素扩起来。
冒号(:)代表矩阵中行(ROWS)或列(COLUMNS)的全部
A(:,2)表示A矩阵的第2列
A(3,:)表示A矩阵的第3行
(2)特殊矩阵的生成
eye(m,n)或eye(m)产生mn或者mm的单位矩阵
zeros(m,n)或zeros(m)产生mn或者mm的零矩阵
ones(m,n)或ones(m)产生mn或者mm的全部元素为1的矩阵
randn(m,n)或randn(m)产生mn或mm的随机矩阵,矩阵中的每一行,每一列元素都服从均值为0,方差为1的高斯分布
rand(m,n)或rand(m)产生mn或mm的随机矩阵,矩阵中的每一行,每一列元素都服从[0,1]上的均匀分布
注意:randn和rand函数是通信系统仿真中常用的函数,产生不同要求的随机数
sqrt——开放运算
产生8个噪声功率为10的高斯白噪声样值
sqrt(10)*randn(1,8)
(3)矩阵运算
矩阵的运算有基本运算和函数运算两种类型。
基本运算包括矩阵的加、减、乘、除、乘方、求转置、求逆等,主要是通过Matlab提供的基本运算符进行求取。
函数运算主要是调用Matlab系统内置的运算函数来求取矩阵的行列式(det(A)),求秩(rank(A)),求特征值和特征矢量([V,D]=eig(A)),求Jordan标准型(jordan(A))和矩阵分解。