-1

如何在matlab中生成一个简单的正弦波?

我想生成一个代表 24 小时内幅度为 15 度的温度信号的波,我该怎么做?

t = 1:24
x = 15.*sin(pi*t)
plot(t,x)

其中 15 是幅度。这不会像我预期的那样产生正弦波。我期待看到一个波在 24 小时内以 15 的幅度延伸,比如最小值为 5,最大值为 20(我如何将这些包含在等式中?)。

4

2 回答 2

4

添加一个常数并调整频率:

x = 5 + 15*sin(2*pi*t/24);

在您的代码中,频率不正确,并且该频率的采样周期太大:您有混叠。这就是为什么您看不到正弦波的原因。

于 2013-11-13T16:58:28.693 回答
2

这实际上与 Matlab 无关。如果你想产生一个固定周期的波,比如说,T = 24hours你必须相应地计算正弦函数。

例如

t = 1:24;
y = 15 * sin(2*pi*t / T);
于 2013-11-13T16:57:29.350 回答