簡體   English   中英

如何對正弦波進行相移-MATLAB?

[英]How to phase shift a sinusoidal wave- MATLAB?

我想對正弦波進行相移,如下所示。

在此處輸入圖片說明

這里發生的是在紅線的點發生相移。 因此,它不再遵循其自然路徑(虛線),而是開始遵循移動的路徑(虛線)。

我嘗試將其編碼如下。

clear;

t =(0:10000)/10000';

for ii = 1:length(t)

 x(ii)=exp(i*2*100*t(ii));

   if ii == 235      % point at which the phase shift occurs

        x(ii) = x(ii)*exp(-i*(pi/4));

   end

 end
 plot(t,real(x));

有人可以告訴我代碼中的錯誤嗎?

clear;

t =(0:1000)/10000';

for ii = 1:length(t)

 x(ii)=exp(i*2*100*t(ii));

   if ii >= 235      % point at which the phase shift occurs

        x(ii) = x(ii)*exp(i*(pi/4));

   end

 end
 plot(t,real(x));

只需在if語句中將==更改為> =即可。

結果如下。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM