Matlab生成各种伪随机信号_idinput指令
来源:互联网 发布:广州商学院网络教学 编辑:程序博客网 时间:2024/05/16 10:36
1.为何不是冲激信号?
只要是在信号系统这条道上混过的童鞋都知道,冲激信号是测试系统的最理想信号。因为时域的卷积相当于频域的乘积,而冲击信号的频域拥有最广泛的频谱,可以“暴露”系统最完整的信息,那么问题来了?这么好的东西,你咋就不用呢?傻~还真不是这样,能让我们计算机产生一个理想的冲激信号那是多难的事啊!!!想象狄拉克,就被难为人了......那咱办呢?这时候一大群数学家来了.....么子事,冲激信号不能直接产生,我们可以合成啊!!!这里要提醒一个很重要的的事:白噪声的自相关恰恰最佳逼近冲激信号!所以在我们工程研究上,白噪声信号才是最理想的输入信号,这也能解释为什么好多研究中都采用白噪声作为测试。本文的撰写具有很重要的意义。
2.初识idinput指令
2.1基本调用格式
u = idinput(N,type,band,levels)
[u,freqs] = idinput(N,’sine’,band,levels,sinedata)2.2参数说明
N:产生的序列的长度,如果N=[N nu],则nu为输入的通道数,如果N=[P nu M],则nu指定通道数,P为周期,M*P为信号长度。默认情况下,nu=1,M=1,即一个通道,一个周期。
Type:指定产生信号的类型,可选类型如下 :'rgs'高斯随机信号;'rbs'(默认)二值随机信号 ;'prbs'二值伪随机信号(M序列) 'sine'正弦信号和 。
Band :指定信号的频率成分。对于'rgs'、'rbs'、'sine',band = [wlow, whigh]指定通带的范围,如果是白噪声信号,则band=[0, 1],这也是默认值。指定非默认值时,相当于有色噪声。 对于'prbs',band=[0, B],B表示信号在一个间隔1/B(时钟周期)内为恒值,默认为[0, 1]。
Levels :指定输入的水平。Levels=[minu, maxu],在type='rbs'、'prbs'、'sine'时,表示信号u的值总是在minu和maxu之间。对于type='rgs',minu指定信号的均值减标准差,maxu指定信号的均值加标准差,对于0均值、标准差为1的高斯白噪声信号,则levels=[-1, 1],这也是默认值。
3.MATLAB仿真与测试
3.1 生成高斯伪随机信号
clc clear all close all % 高斯随机信号 u = idinput(1000, 'rgs'); subplot(1,3,1)stairs(u) title('高斯随机信号') subplot(1,3,2)hist(u, -4:4) title('高斯随机信号的分布') c = xcorr(u, coeff); % 自相关函数 subplot(1,3,3)plot(c) title('相关函数')3.2 生成正弦伪随机信号clc ;clear all ;close all % 高斯随机信号 u = idinput(100, 'sine'); subplot(1,3,1)stairs(u) title('正弦随机信号') subplot(1,3,2)hist(u, -4:4) title('正弦随机信号的分布') c = xcorr(u, 'coeff'); % 自相关函数 subplot(1,3,3)plot(c) title('相关函数')3.生成二值伪随机信号
clc ;clear all ;close all % 高斯随机信号 u = idinput(200, 'rbs'); subplot(1,2,1)stairs(u) title('二值随机信号') c = xcorr(u, 'coeff'); % 自相关函数 subplot(1,2,2)plot(c) title('相关函数')4.生成二值伪随机序列(M序列)
<span style="font-size:18px;"><span style="font-family:microsoft yahei;color:#555555;"><span style="line-height: 35px;">clc ;clear all ;close all n = 10; % 阶次 p = 2^n -1; % 循环周期 ms = idinput(p, 'prbs'); subplot(1,2,1)stairs(ms) title('M序列') %ylim([-1.5 1.5]) c = xcorr(ms, 'coeff'); % 自相关函数subplot(1,2,2)plot(c)title('相关函数') </span></span></span>% <wbr> <wbr> 自相关函数接近于δ函数<span style="font-size:18px;"></span></wbr></wbr>进行谱密度深入分析:谱分析表明,M序列含有直流成分,将造成对辨识系统的“净扰动”,这通常不是所希望的。而逆M序列将克服这一缺点,是一种比M序列更为理想的伪随机码序列。5.生成逆M序列伪信号
3 0
- Matlab生成各种伪随机信号_idinput指令
- matlab随机信号处理
- 生成伪随机整数
- MATLAB 生成随机整数 的各种方法以及实例
- MATLAB 生成随机整数 的各种方法以及实例
- matlab生成随机数据
- matlab生成随机矩阵
- matlab生成随机矩阵
- 生成伪随机整数rand()
- Matlab 中伪随机数的生成以及可复现的不放回等概率随机抽样
- matlab中randi代替randint生成随机均匀分布信号的用法
- MATLAB 2015b randi函数生成随机均匀分布信号的用法
- matlab生成随机稀疏数组
- Matlab随机函数的生成
- 伪随机编码冲雷达信号处理仿真
- MATLAB中关于生成伪随机数
- 用 Matlab 生成待滤波信号
- 伪随机序列发生器PRBS7的matlab实现
- 1. yii 启动和安装
- mysql 事务锁实验
- hdu5935 Car(贪心,精度)
- PHP文件操作 - 替换某行,插入某行,删除某行,获取行号
- MyBatis学习总结(一)——MyBatis快速入门
- Matlab生成各种伪随机信号_idinput指令
- JS之鼠标移入移出事件2
- Java 程序员必备学习资源
- 一个null引发的SharedPreference惨案
- 手机助手(四):复杂的ListView + 自定义控件
- Android 面试相关总结
- Android逆向实例笔记—初入so并还原分析出代码
- 跟我一起学python(八),网络编程(基础篇)
- Java开发工具_Eclipse中构造方法和get_set方法的自动生成