2020年7月18日土曜日

パルスで直交復調(3) -フーリエ級数展開-

 

T/4進んでるほうのパルスもどうなるのか(いちおう)考えておく


「パルスで直交復調(2) -フーリエ級数展開-」の(12)において、tの代わりにt+T/4と書けばいいだけなので、

(1)f(t)=4πn=1sin{(2n1)2πT(t+T4)}2n1

numpyで使う分には、これでも良いっちゃ~良いんですが、見た目重視で書き直します。

(2)m=2n1(m)
(3)ω=2πT

とすると、

(4)f(t)=4πn=1sin{mω(t+T4)}m
(5)f(t)=4πn=1sin(mωt+mωT4)m
(6)f(t)=4πn=1sin(mωt+mπ2)m
(7)f(t)=4πn=1sinmωtcosmπ2+cosmωtsinmπ2m

ここで、mは奇数なので、常に

(8)cosmπ2=0

であり、

(9)sinmπ2={1(n)1(n)

なので、(7)は、

(10)f(t)=4πn=1(1)n+1cos{(2n1)2πTt}(2n1)

となる。

う~む、、、あっているのかわからないので、確かめてみる。

  1. # 変数クリア
  2. from IPython import get_ipython
  3. get_ipython().magic('reset -sf')
  4.  
  5. import matplotlib.pyplot as plt
  6. import numpy as np
  7. import scipy.signal as signal
  8.  
  9. # よく使う変数
  10. pi=np.pi
  11.  
  12. # 設定
  13. T=1
  14.  
  15. # 計算する範囲と刻みで計算ポイントを作る
  16. t=np.arange(-T,T,0.01)
  17.  
  18. # 式に値を入れて結果を得る
  19. f1_t=4/np.pi*np.cos(2*pi/T*t)
  20. f2_t=f1_t+((-1)**3)*4*np.cos(3*2*pi/T*t)/(3*np.pi)
  21. f3_t=f2_t+((-1)**4)*4*np.cos(5*2*pi/T*t)/(5*np.pi)
  22. f4_t=f3_t+((-1)**5)*4*np.cos(7*2*pi/T*t)/(7*np.pi)
  23. f5_t=f4_t+((-1)**6)*4*np.cos(9*2*pi/T*t)/(9*np.pi)
  24. f6_t=f5_t+((-1)**7)*4*np.cos(11*2*pi/T*t)/(11*np.pi)
  25. f7_t=f6_t+((-1)**8)*4*np.cos(13*2*pi/T*t)/(13*np.pi)
  26.  
  27. # プロット
  28. fig=plt.figure()
  29. plt.plot(t,f1_t,label="n=1")
  30. plt.plot(t,f2_t,label="n=1,2")
  31. plt.plot(t,f3_t,label="n=1,2,3")
  32. plt.plot(t,f4_t,label="n=1,2,3,4")
  33. plt.plot(t,f5_t,label="n=1,...,5")
  34. plt.legend()
  35.  
  36. fig=plt.figure()
  37. plt.plot(t,f7_t,label="n=1,...,7")
  38. plt.legend()

どうやらあっているらしい。
正直、(1)のままでも良かった;
、、、なかなか、直交復調にたどり着けない;

 

学生の頃、こういうツールがあったら少しは真面目に勉強したかもしれない。昔はホント何やっても五里霧中な感じで、やる気出なかったよなー

0 件のコメント:

コメントを投稿