常用MATLAB函数详解及用法.pdf
文本预览下载声明
随机信号产生
rand:产生均匀分布的随机数
rand(n) 产生一个n*n 的随机矩阵,元素分布于(0,1)
rand(m,n) 产生m*n 均匀分布的随机矩阵
为了使每次执行rand 函数时产生和之前不相同的一组伪随机数,通常需要初始
化随机数种子。方法很多,常见的一种是在写m 文件时,在程序的开头写:
rand(state,sum(100*clock))
randn:产生标准正态分布的随机数 (均值为0,方差为1)
Y = randn(n) 返回一个n*n 的随机项的矩阵
Y = randn(m,n) 返回一个m*n 的随机项矩阵。
Y = randn(size(A)) 返回一个和A 有同样维数大小的随机数组。
randn 返回一个每次都变化的一个数值
Ex. 产生一个随机分布的指定均值和方差的矩阵:将randn 产生的结果乘以标
准差,然后加上期望均值即可。例如,产生均值为0.6,方差为0.1 的一个5*5
的随机数方式如下:x = .6 + sqrt(0.1) * randn(5)
randi:产生均匀分布的随机整数
randi(imax) 产生分布于[1:imax]的随机整数
r = randi(imax,n) 产生分布于[1:imax]的n*n 随机整数矩阵.
randi(imax,m,n) 产生分布于[1:imax]的m*n 随机整数矩阵.
r = randi([imin,imax],...) 产生分布于[imin:imax]间的随机整数
Ex:生成均匀分布于-10:10 的整数 r = randi([-10 10],100,1);
wgn:生成高斯白噪声
y = wgn(m,n,p) 产生一个m 行n 列的高斯白噪声的矩阵,p 为输出功率,
单位dBW。默认负载阻抗为1Ω
y = wgn(m,n,p,imp) 以欧姆为单位指定负载阻抗。
y = wgn(...,powertype ) powertype 指定p 的单位,dBW, dBm,
linear。linear power 以瓦特(Watt)为单位。
y = wgn(...,outputtype) outputtype 指定输出为real 或
complex。若输出为 complex,实部和虚部的功率分别为p/2.
y = wgn(m,n,p,imp,state) 重置randn 的状态。
%生成N(m, var)的高斯分布变量
N = 500; %采样点数
mu = 1; %均值
var = 5; %方差,交流功率
s = randn(1,N);
s_norm = (s- mean(s)) / std(s); %归一化
sig = mu + sqrt(var) * s_norm;
awgn:在某一信号中加入高斯白噪声
y = awgn(x,SNR) 在信号x 中加入高斯白噪声。信噪比SNR 以dB 为单位。
x 的强度假定为0dBW。如果x 是复数,就加入复噪声。
y = awgn(x,SNR,SIGPOWER) 如果SIGPOWER 是数值,则其代表以dBW
为单位的信号强度;如果SIGPOWER 为measured,则函数将在加入噪声之
前测定信号强度。
y = awgn(…,POWERTYPE) 指定SNR和SIGPOWER 的单位。如果POWERTYPE
是dB,那么SNR 以dB 为单位,而SIGPOWER 以dBW 为单位;如果POWERTYPE
是linear,那么SNR 作为比值来度量,而SIGPOWER 以W 为单位。
统计
hist:直方图显示数据值的分布
n = hist(Y) 将向量Y 中的元素分到10个等间隔的范围内,并返回每个范
围内元素的个数作为一行向量。如果Y 是一个m*p 的矩阵,hist 将Y 的每一
列作为一个向量,并返回一个10*p 的矩阵n。n 的每一列的值对应Y 的该列。
n = hist(Y, x) x 是一个向量,返回x 的长度个以x 为中心的,Y 的分布
情况。
n = hist(Y, nbins) nbins 为间隔数,直方图按nbins 划分间隔并统计
落在其中的数目。
[n,xout] = hist(...) 返回n 和xout,包含有数目频率和间隔位置。
可使用bar(xout, n)来绘制直方图。
xcorr:估计随机过程的互相关函数
显示全部