用matlab仿真中心频率为 f0 为 10kHz、带宽为∆f 为 400Hz、方差为 1 的窄带高斯随机过程 X (t) , 在下面三种余弦信号情况下: (1)余弦信号的幅度为 2,相位为π/6;(2)余弦信号的幅度为 4,相位为π/4;(1)余弦信 号的幅度为 8,相位为π/3; 分析窄带高斯随机过程加余弦信号的合成信号的包络、相位、包络平方的概率分布。
时间: 2024-03-23 14:40:21 浏览: 75
首先,我们可以使用MATLAB生成中心频率为10kHz、带宽为400Hz、方差为1的高斯白噪声:
```matlab
Fs = 100000; % 采样率
f0 = 10000; % 中心频率
df = 400; % 带宽
T = 1/Fs; % 采样时间间隔
t = 0:T:1-T; % 时间序列
sigma2 = 1; % 方差
X = sqrt(sigma2)*randn(size(t)).*exp(2*pi*1i*f0*t); % 高斯随机过程
```
然后,我们可以分别生成三个余弦信号,并将它们与高斯随机过程相加:
```matlab
% 余弦信号1:幅度为2,相位为π/6
A1 = 2;
phi1 = pi/6;
cos1 = A1*cos(2*pi*10000*t+phi1);
% 余弦信号2:幅度为4,相位为π/4
A2 = 4;
phi2 = pi/4;
cos2 = A2*cos(2*pi*10000*t+phi2);
% 余弦信号3:幅度为8,相位为π/3
A3 = 8;
phi3 = pi/3;
cos3 = A3*cos(2*pi*10000*t+phi3);
% 合成信号
Y1 = X + cos1;
Y2 = X + cos2;
Y3 = X + cos3;
```
接下来,我们可以分别计算合成信号的包络、相位和包络平方,并绘制它们的概率分布函数:
```matlab
% 计算包络
env1 = abs(hilbert(Y1));
env2 = abs(hilbert(Y2));
env3 = abs(hilbert(Y3));
% 计算相位
phase1 = angle(hilbert(Y1));
phase2 = angle(hilbert(Y2));
phase3 = angle(hilbert(Y3));
% 计算包络平方
envpow1 = env1.^2;
envpow2 = env2.^2;
envpow3 = env3.^2;
% 绘制包络的概率分布函数
figure;
histogram(env1, 100, 'Normalization', 'pdf');
hold on;
histogram(env2, 100, 'Normalization', 'pdf');
histogram(env3, 100, 'Normalization', 'pdf');
xlabel('Envelope');
ylabel('Probability Density');
legend('Cosine 1', 'Cosine 2', 'Cosine 3');
% 绘制相位的概率分布函数
figure;
histogram(phase1, 100, 'Normalization', 'pdf');
hold on;
histogram(phase2, 100, 'Normalization', 'pdf');
histogram(phase3, 100, 'Normalization', 'pdf');
xlabel('Phase');
ylabel('Probability Density');
legend('Cosine 1', 'Cosine 2', 'Cosine 3');
% 绘制包络平方的概率分布函数
figure;
histogram(envpow1, 100, 'Normalization', 'pdf');
hold on;
histogram(envpow2, 100, 'Normalization', 'pdf');
histogram(envpow3, 100, 'Normalization', 'pdf');
xlabel('Envelope Power');
ylabel('Probability Density');
legend('Cosine 1', 'Cosine 2', 'Cosine 3');
```
运行上述代码后,我们可以得到三个图像,分别表示合成信号的包络、相位和包络平方的概率分布函数。这些图像可以帮助我们分析包络、相位和包络平方的统计特性,进而更好地理解合成信号的行为。
阅读全文