概述
out=randerr(m) %产生一个m*m维的二进制矩阵,矩阵中的每一行有且只有一个非零元素,且非零元素在每一行的位置是随机的out=randerr(m,n) %同上但矩阵类型是mxn位out=randerr(m,n,errors) %产生一个m*n维的二进制矩阵,参数errors可以是一个标量、向量或者只有两行的矩阵。%当errors是一个标量时,产生矩阵中的每一行1的个数等于errors;当errors是一个向量时,产生矩阵每一行1的个数由errors的相应元素指定;当errors是一个只有两行的矩阵时,第一行指定可能出现1的个数,第二行说明出现1的概率,第二行所有元素和为1。第二行概率前加点即.25。
实例:
out = randerr(5,4,[0 2])out = 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 out = randerr(7,4,[0 2;0.5 0.5])out = 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0
(2)randsrc
out=randscr(m)%产生一个m*m的矩阵,元素为等概率出现的1或-1。out=randscr(m,n)%产生一个m*n的矩阵,元素为等概率出现的1或-1。out=randscr(m,n,alphabet)%产生一个m*n的矩阵,矩阵的元素为alphabet中所指定的数据符号,等概率出现且相互独立。out=randscr(m,n,[alphabet;prob])%产生一个m*n的矩阵,矩阵的元素为alphabet中所指定的数据符号,概率出现由prob决定,prob中所有元素和为1。
例:
out = randsrc(5,5,[1 2 3])out = 3 1 2 3 1 3 2 2 3 1 2 2 3 2 2 2 3 2 2 1 2 3 2 2 3
(3)wgn(
单位可以是分贝瓦(dBW),分贝毫瓦(dBm)其中1W=0dBW=30dB)
y=wgn(m,n,p):产生m*n的白噪声矩阵,p表示输出信号y的功率(dBW),负载的电阻为1。y=wgn(m,n,p,imp):产生m*n的白噪声矩阵,功率(dBW)为p,指定负载的电阻为imp,单位欧姆。
例;
out = wgn(3,3,1,'dBW')%输出噪声功率为1dBWout = -3.3988 -1.1969 -0.0325 -0.5128 1.0477 0.2047 1.3941 0.3931 -1.7560
2.信源编码/解码函数(4个)
(1)arithenco/arithdeco 算数二进制编码/解码
(2)dpcmenco/dpcmdeco 差分脉码调制编码/解码
(3)compand M/A律扩压计算
(4)lloyds 使用Lloyds算法优化量化参数
(5)quantiz 产生量化序号和量化值(量化在数字信号处理领域,是指将信号的连续取值(或者大量可能的离散取值)近似为有限多个(或较少的)离散值的过程。)
(1)arithenco/arithdeco
code=arithenco(seq,counts)%根据指定向量seq对应的符号序列产生二进制算术代码;counts代表信源中指定符号在数据集中出现的次数dseq=arithdeco(code,counts,len)%恢复对应len符号列
例;
counts=[99 1]>> len=1000;>> seq=randsrc(1,len,[1,2;.99 .01]);%随机序列>> code=arithenco(seq,counts);%编码/解码>> dseq=arithdeco(code,counts,length(seq));>> isequal(seq,dseq) ans = 1
(2)dpcmenco/dpcmdeco
(3)compand M/A律扩压计算
(4)lloyds 使用Lloyds算法优化量化参数 (5)quantiz 产生量化序号和量化值3.信道模型函数(2个)
(1)awgn 将白色高斯噪声添加到信号中
(2)bsc 以误码率p传输二进制输入信号
(1)awgn
y = awgn(x,snr) y = awgn(x,snr,sigpower) y = awgn(x,snr,'measured') y = awgn(x,snr,sigpower,state) y = awgn(x,snr,'measured',state) y = awgn(...,powertype)
y = awgn(x,snr)将白高斯噪声添加到向量信号x中。标量snr指定了每一个采样点信号与噪声的比率,单位为dB。如果x是复数的,awgn将会添加复数噪声。这个语法假设x的能量是0dBW。
y = awgn(x,snr,sigpower)和上面的语法相同,除了sigpower是x的能量,单位为dBW。
y = awgn(x,snr,'measured')和y = awgn(x,snr)是相同的,除了agwn在添加噪声之前测量了x的能量。
y = awgn(x,snr,sigpower,state)和y = awgn(x,snr,sigpower)是相同的,除了awgn首先重置了正态随机数产生器randn的状态为整数状态。
y = awgn(x,snr,'measured',state)和y = awgn(x,snr,'measured')是相同的,除了awgn首先重置了正态随机数产生器randn的状态为整数状态。
例:
t=0:.1:10;>> x=sawtooth(t);%产生锯齿信号>> y=awgn(x,10,'measured'); %白噪声处理>> plot(t,x,t,y)
(2)bsc
bsc(data,p,s) %data为输入信号 p为误码率,s有效随机流
例:
z = randi([0 1],100,100);nz = bsc(z,.15);%经过对称二进制信道的输出信号[numerrs,pcterrs]=biterr(z,nz) %错误数和误码率 numerrs = 1541pcterrs = 0.1541
3.调制/解调函数
ademod 模拟通带解调器
ademodce 模拟基带解调器
amod 模拟通带调制器
amodce 模拟基带调制器
ddemod 数字通带解调器
ddemodce 数字基带解调器
dmod 数字通带调制器
dmodce 数字基带调制器
modmap 把数字信号映射到模拟信号星座图(以供调制)
以上函数使用形式都为:
out = functioname(sig,Fs,Fc)%sig为输入信号,Fc为载波频率,Fs为采样频率
4.滤波器函数
rcosflt(x,Fd,Fs) 升余弦滤波器
Fd,Fs分别是输入和输出的采样频率,r为滚降系数
rcosfir(R,n_T,rate,T) 设计一个升余弦FIR滤波器
参数R为滤波器滚阻系数,n_T为长度为2的向量,用于确定滤波器长度;T为每个比特的持续时间;rate是一个长度为T的输入符号周期内点的个数
rcosiir(R,T_delay,rate,T,tol) 设计一个升余弦IIR滤波器
T_delay滤波器延时;tol为容差
实 例
试着建立用于基带信号频移键控(标准的调制技术,将数字信号加载到不同频率的正弦载波上)的仿真模型。 (1)建立模型 (2)设置参数 (12)查看结果最后
以上就是畅快保温杯为你收集整理的matlab awgn函数_simulink通信系统函数介绍及实例的全部内容,希望文章能够帮你解决matlab awgn函数_simulink通信系统函数介绍及实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复