# Number of samples in one period of subcarrier after IFFT

I have a quick question about the number of samples in one period of a sub carrier in OFDM systems. The IFFT process generates N-parallel sub carriers in discrete time domain which are sent simultaneously over the sub carrier frequencies.

What is the number of samples in one period of a sub carrier after IFFT?

Thanks for your reply. Let me give you more details about my query with an illustration as below. The picture shows the sub carriers as analog but lets take them as discrete before DAC and CP addition. The system has 4 sub carriers and hence they have different frequencies. My questions is here at this point; again assuming they are just the output of the IFFT and digital- Does each sub carrier has 4 samples in every cycle? So lets say the duration of OFDM symbol is T seconds. The subcarrier1 has 1 cycle and I am visualizing that the sub carrier has 4 samples during the T seconds. Subcarrier2 has 2 cycles (period) and hence it has 2x4=8 samples during the OFDM T seonds. And for subcarrier3 it has 3x4=12 samples. For subcarrier4, there are 4x4=16 samples during the OFDM symbol (T seconds length).

And in total, the OFDM symbol has 36 samples in the symbol length T seconds.

Am I correct interpreting this?

• How do you define "period of a sub carrier"? In general, all time domain samples of an OFDM symbol contribute to all subcarriers.
– Deve
Commented Oct 20, 2015 at 11:02

If you'd like to think analog, an OFDM signal can be written as a sum of weighted complex sinusoidals: $$x(t)=\sum_{k=0}^{N-1}X_k \exp{\left( \mathrm j 2\pi\frac{kf_\mathrm{s}}{N}t \tag{1}\right)},$$ where $N$ is the number of subcarriers, $f_\mathrm{s}$ is the sampling frequency and $X_k$ denotes the subcarrier values. For a digital implementation, (1) is sampled at $t=n/f_\mathrm{s}$: $$x(n/f_\mathrm{s})=\sum_{k=0}^{N-1}X_k \exp{\left( \mathrm j 2\pi\frac{kn}{N} \tag{2}\right)},$$ which corresponds to the inverse discrete Fourier transform (IDFT), implemented by an IFFT. The IFFT has $N$ input values and $N$ output values. That's ok, because the IDFT is N-periodic and thus any additional sample would be redundant. Consequently, every subcarrier in (1) is represented by $N$ samples, regardless of its number of periods during the OFDM symbol length.

If you try to imagine the digital OFDM time domain signal as a superposition of $N$ sampled sinusoidals, the figure you posted has two problems, in my opinion:

1. The first subcarrier in the image obviously has frequency $f_\mathrm{s}/N$ and the fourth subcarrier has frequency $f_\mathrm{s}$. That's wrong. From (1) you can see that the first subcarrier should have frequency 0 and the fourth should have frequency $(N-1)f_\mathrm{s}/N$. You can reorder the subcarriers (e.g. from negative to positive) but the DC subcarrier must be included and there must not exist a subcarrier with frequency $f_\mathrm{s}$. (One could argue that subcarriers with frequency 0 and $f_\mathrm{s}$ are actually the same but I think it's a poor choice for an illustration)
2. The image only shows the real (or imaginary) part of the sinusoidals. That could give you the impression that some aliasing is going on when sampling. I will explain in a second what I mean.

It contains the subcarriers from $k=0$ to $k=3$ (lines) and their samples (dots). It also shows the real part (blue) and imaginary part (red). Now consider the red line in the first and the third subfigure: their samples are exactly the same. However, the blue (imaginary) part is different. That is, $N=4$ samples are sufficient here to represent all subcarriers.

Here is the Matlab code I used to create the above figure:

N = 4; % num subcarriers
os = 128; % oversampling
t = linspace(0, 1-1/(N*os), N*os); % time
n = 0:N-1; % discrete time

figure;
cnt = 1; % helper
for k = 0:N-1;
subcarrier = exp(1i * 2*pi*k*t);

subplot(N,1,cnt);
plot( t, real(subcarrier), 'b-');
hold on;
plot( t(n*os+1), real(subcarrier(n*os+1)), 'b.', 'MarkerSize', 20);

plot( t, imag(subcarrier), 'r--');
hold on;
plot( t(n*os+1), imag(subcarrier(n*os+1)), 'r.', 'MarkerSize', 20);

if(k ~= N-1)
set(gca, 'XTick', []);
else
xlabel('t/T');
end
ylim([-1 1]);
title( sprintf('k=%d', k));

cnt = cnt + 1;
end

• Sorry for my late reply! I read your great explanation! and I get the answer to my question. Really great example and detailed explanation. Thanks for spending your time for this. Commented Nov 2, 2015 at 8:49
• @Dave is that big N above the summation the same N denominator of the fraction. I thought the N under the fraction was the N as in number of time Domain samples and the N above the summation is number frequency domain samples, unless they're bound? They're not bound are they? Commented Apr 11, 2019 at 9:30
• @LewisKelsey In this answer, $N$ is the number of subcarriers which also happens to be the number of samples in one OFDM symbol (w/o cyclic prefix).
– Deve
Commented Apr 11, 2019 at 18:26

You need as many samples as you have subcarriers. If you have 64 carriers, then you need 64 samples.