関数fftとifft​のインデックスを変え​る方法はありますか?

1 view (last 30 days)
Akane Aoki
Akane Aoki on 9 Dec 2020
Commented: Akane Aoki on 9 Dec 2020
fftとifftの定義は上のように定義されています。
このY(k)とX(j)の式のサメーションの範囲をj=2からn+1までに変えたいのですが、
どうすればよいでしょうか?
  2 Comments
Shunichi Kusano
Shunichi Kusano on 9 Dec 2020
すみません、ご質問内容を理解できていないのかもしれませんので、確認させてください。
n+1まで、とありますが、nは与えられたデータの長さなのでn+1は存在しないことになります。もし繰り返しを想定されているのであればn+1 = 1ということになるので、j=1からnまでと等価となり、現在の定義と同じとなります。
2からn+1の計算としたい背景や、n+1番目には何のデータを入れることを想定しているのかといったところを共有いただけると、されたいことを正確に理解できるかもしれません。
Akane Aoki
Akane Aoki on 9 Dec 2020
返信ありがとうございます。
以下のようなofdm信号を作成しています。
QAM = 16;
Nsc = 2^5;
N = Nsc*8;
N_GI = N*(1/4);
sym = 100;
k = log2(QAM);
x = randi(QAM,Nsc,sym)-1;
y = qammod(x,QAM);
pilotx = randi(2,2,sym)-1;
piloty = 3*gammod(pilotx,2);
y(2,:) = pilot(1,:);
y(15,:) = pilot(1,:);
a = ifft(a,N);
GI = a((end-N_GI+1):end,:);
a_GI = [GI;a];
s = real(a_GI);
st1 = s(:); %伝送信号
信号の実部のみを取り出しているのはLEDに信号をのせるためです。(虚数はのらない)
これを復調するとj=1のときだけ信号が載っておらず、QAMMAPの実軸の正の値に大きな信号点がみえました。
そこで搬送波周波数が0のとき、すなわちj=1になっていることが問題ではないかと考え、jの始まりをj=2とし、搬送波周波数が0にならないようにしたいと考えました。

Sign in to comment.

Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!