PLEASE TELL ME THE USE AND HOW TO BUILd THE FUNCTION, "ofdma_mapping",in this code, THAT CAN DO THE WORK OF "q_out=ofdma_mapping(y,ylen)" Here is the code. Please help and So many thanks in advance. % Number of Subcarriers NS=512; % Input Generation x=rand(1,NS)>0.5; fftlength=512; nd=6; BW=5e6; FS=2*BW;%Sampling Frequency % Conversion of data from serial to parallel p=series2parallel(x,NS); % M-ary Modulaton of PSK & QAM M=2; X=0; for Count1=2:1:7; if(M==2||M==4||M==16||M==64) M=M+X %M-ary modulation for producing y if(M<=8) %Modulation for PSK y=modulate(modem.pskmod(M),p); else %Moodulation for QAM end ylen=length
; %Applying Mapping q_out=ofdma_mapping(y,ylen); %Apply IFFT operation outifft=ifft(q_out); %Cyclic Prefix Addition cp(count1,
=cyclicpad(outifft,64); %Length of CP cplength=length(cp); %Conversion of data from parallel to serial out=reshape(cp(count1,
,1,cplength); %Signal transmits through AWGN channel ynoisy=awgn(out,100,'measured'); %Addition of relay fading c=rayleighchan(1/1000,100,[0 2e-5],[0 -9]); rf=filter(c,ynoisy); %Conversion of data from serial to parallel p2=series2parallel(rf,cplength); re_par=real(p2); %Remove cyclic prefix rcp(count1,
=decyclicpad(p2,64); rcplength=length(rcp); %FFT zzfft=fft(rcp(count1,
,fftlength); %Apply Demapping qq_out=ofdma_demapping(zzfft,fftlength); outfft=qq_out; %% Applung IFFT %zfft=ifft(qq_out); if(M<=8) %Demodulation of PSK at Reciever z=demodulate(modem.pskdemod(M),outfft); else %Demodulation of QAM at reciever z=demodulate(modem.qamdemod(M),outfft); end %conversion of data from parallel to serial xdash=reshape(z,1,NS) berr=0; for a=1:1:NS; if(xdash
,a)==x
,a)) berr=0; else berr=berr+1; end end tberr(count1,
=berr; Eb_No=0:1:NS-1; Eb_No=0.4*Eb_No;
if(M<=8)
ber(count1,
=berawgn(Eb_No,'psk',M,'nondiff');
Pe(count1,
=erfc(sqrt(0.9*Eb_No)*sin(pi/M));
else
ber1(count1,
=berawgn(0.9*Eb_No,'qam',M);
Pe(count1,
=2*((1-(1/sqrt(M)))*erfc(sqrt((1.5*Eb_No)/(M-1))));
end
for init=1:1:32
switch M
end
end
end
M=2^count1;
end
figure()
%Plot SNR and BER
semilogy(Eb_No,ber(2,
,'k',Eb_No,ber(3,
,'g',Eb_No,ber1(5,
,'b',Eb_No,ber1(7,
,'r');
axis([ 25 0.0001 1]);
xlabel('SNR[dB]')
ylabel('BER')
legend('BPSK','QPSK','16-QAM','64-QAM')
figure()
%Plot Error Probability
semilogy(Eb_No,Pe(2,
,'k',Eb_No,Pe(3,
,'r',Eb_No,Pe(5,
,'b',Eb_No,Pe(7,
,'g');
axis([0 50 0.0001 1]);
xlabel('SNR[dB]')
ylabel('Probability of Error')
legend('BPSK','QPSK','16-QAM','64-QAM')
title('OFDMA')
h=spectrum.periodogram;
figure()
HS=psd(h,outifft,'SpectrumType','twosided','NFFT',NS,'FS',FS);
plot(HS)
xlabel('Sampling Frequency (2 * BW)in MHz')
ylabel('Power Spectral Density [dBm/Hz]')
title('OFDMA')
grid off;