Matlab 函数:生成余弦信号并进行仿真

本函数用于生成一个余弦信号,并根据输入参数进行仿真。函数可以接收信号的幅度、频率、相位、常数项、仿真起始时间、仿真终止时间和采样数等参数。函数会进行参数校验,并返回仿真时间序列和信号序列。

函数定义:

function [xx,tt] = Lab4(A, f, phi, B, Start, End, NSamples)
% Check if input parameters satisfy the requirements
if A <= 0 || f <= 0 || phi < 0 || phi >= 2*pi || End <= Start || NSamples <= 1
    error('Input parameters do not satisfy the requirements');
end

% Generate time sequence
dt = (End - Start) / (NSamples - 1);
tt = Start:dt:End;

% Generate signal sequence
xx = A*cos(2*pi*f*tt + phi) + B;

% Plot the signal waveform
figure;
plot(tt, xx);
title('Sinusoidal Signal');
xlabel('Time (s)');
ylabel('Amplitude');
 grid on;

end

函数参数:

  • A: 幅度 (正实数)
  • f: 频率 (正实数)
  • phi: 相位 (实数,0 ~ 2π之间)
  • B: 常数项 (实数)
  • Start: 仿真起始时间 (实数)
  • End: 仿真终止时间 (实数,应大于起始时间)
  • NSamples: 采样数 (整数, 应大于1)

函数返回值:

  • xx: 生成的信号序列
  • tt: 仿真时间序列

使用方法:

% 测试函数
[xx,tt] = Lab4(1, 2, pi/2, -1, 0, 5, 1000);

测试结果:

函数将生成一个幅度为1,频率为2Hz,相位为π/2,常数项为-1的余弦信号,并绘制仿真时间序列(tt)为自变量,所产生的信号序列(xx)为应变量的信号波波形。

图形示例:

信号波形示例

注意:

  • 该函数进行了参数校验,如果输入参数不满足要求,将会返回错误信息。
  • 函数会根据输入参数在仿真起始时间和终止时间之间等间隔的产生NSamples个样本。
  • 函数可以方便地生成不同参数的余弦信号,并进行仿真分析。

原文地址: https://www.cveoy.top/t/topic/n7Ws 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录