<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157</link>
    <title>MATLAB Central Newsreader - MC-CDMA simulation using Matlab</title>
    <description>Feed for thread: MC-CDMA simulation using Matlab</description>
    <language>en-us</language>
    <copyright>&amp;copy;1994-2012 by MathWorks, Inc.</copyright>
    <webmaster>webmaster@mathworks.com</webmaster>
    <generator>MATLAB Central Newsreader</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>60</ttl>
    <image>
      <title>MathWorks</title>
      <url>http://www.mathworks.com/images/membrane_icon.gif</url>
    </image>
    <item>
      <pubDate>Sat, 22 Mar 2008 02:21:35 -0400</pubDate>
      <title>MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#422223</link>
      <author>BULDO</author>
      <description>I am simulating MC-CDMA using Matlab. Here is the message Maltab&lt;br&gt;
returned when I ran the simulation:&lt;br&gt;
&lt;br&gt;
Undefined function or method 'snr' for input arguments of type 'char'.&lt;br&gt;
Error in ==&amp;gt; MCCDMA at 10&lt;br&gt;
snr _in_ dB = 0:1:15;&lt;br&gt;
&lt;br&gt;
I am using Matlab 2007b and the Matlab code is:&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
% MCCDMA %&lt;br&gt;
% for simulation %&lt;br&gt;
%%%%%%%%%%%%%%%%%%%%&lt;br&gt;
%%% Transmitter Model %%%&lt;br&gt;
clear all;&lt;br&gt;
clc;close all;&lt;br&gt;
tic;                % start a stopwatch timer&lt;br&gt;
xaxis=[];&lt;br&gt;
yaxis=[];&lt;br&gt;
snr _in_ dB = 0:1:15;&lt;br&gt;
R= 100;&lt;br&gt;
for n=1:lentgh(snr_in_dB)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;no_of_errors=0;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for m=1:R&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;N=8;            %no of subchannels&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ifft_size=N;    %ifft size&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fft_size=N;     %fft size&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;M=100000;      % nos of data in each subchannel&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;total_no_of_data= N*M;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rand_data_seed=11;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Generation of N parallel dada sequence&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rand('seed',rand_data_seed);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;user_data_matrix=rand(N,M);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;user_data_matrix=(user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Calling of function for code matrix&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;code_mat=code_matrix(N,'hada_11');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;trans_code_mat_out=(conj(code_mat))*user_data_matrix;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% IFFT of the code matrix out&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;trans_ifft_out=iff(trans_code_mat_out,ifft_size);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Normalization of IFFT&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;trans_ifft_out_nor=trans_ifft_out* sqrt(N);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Parallel to serial of transmit signal&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;trans_sig_serial=reshape(trans_ifft_out_nor,1,N*M);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_sig_serial=trans_sig_serial;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;%%% Receiver Model %%%&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Serial to parallel for received signal&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_signal_parallel=reshape(recv_signal_serial,N*M);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Taking FFT of the received signal(parallel)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_fft_out=fft(recv_signal_parallel,fft_size);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Normalization of the FFT&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_fft_out_nor=recv_fft_out/sqrt(N);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Calling function for weight matrix&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[weight_mat,diag_h]=weight_mat(N,'awgn');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Multiplication of Rayleigh Noise with FFT out&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_fft_out_rayleigh=diag_h*recv_fft_out_nor;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Addition of AWGN&lt;br&gt;
&amp;nbsp;&lt;br&gt;
recv_fft_awgn_out=awgn(recv_fft_out_rayleig,SNR_in_dB(n),'measured');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_fft_out_noise=recv_fft_awgn_out-recv_fft_out_rayleigh;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_fft_awgn_out=recv_fft_out_rayleigh+(recv_fft_out_noise/&lt;br&gt;
sqrt(2));&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Multiplication by weight matrix&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;recv_wmat_out=weight_mat*recv_fft_awgn_out;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Taking inverse of code matrix&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;inv_code_mat=inv(code_mat);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Multiplication by Inverse Code Matrix&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;out_data_parallel=inv_code_mat*(recv_wmat_out);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Taking real part of the out_data_ parallel matrix&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;real_out_data_parallel=real(out_data_parallel);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Converting the real_out_parallel matrix to '1' and '-1'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;out_user_data_matrix=(real_out_data_parallel&amp;gt;0)*2-1;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Parallel to serial conversion of out data&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;out_data_serial=reshape(out_user_data_matrix,1,N*M);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;%%% calculation of bit error rate %%%&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% regeneration of transmitted user data matrix&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rand('seed',rand_data_seed);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;trans_user_data_matrix=rand(N,M);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;trans_user_data_matrix=(trans_user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Calculation of bit error rate&lt;br&gt;
&amp;nbsp;&lt;br&gt;
[no_of_errors,symbol_error_rate]=symerr(trans_user_data_matrix,out_user_data_matrix);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;no_of_errors=no_of_errors+no_of_errors;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;end;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sym_err_rate=no_of_errors/total_no_of_data;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ber_simulated=sym_err_rate/1.0;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ber_simulated;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;yaxis=[yaxis,ber_simulated];&lt;br&gt;
end;&lt;br&gt;
xaxis=[xaxis,SNR_in_dB];&lt;br&gt;
% Save BER for different SNR&lt;br&gt;
save ybhawgns.mat yaxis;&lt;br&gt;
% Plotting command follows&lt;br&gt;
seminolog(xaxis,yyaxis,'g-');&lt;br&gt;
ylabel('.............SNR(dB).............');&lt;br&gt;
ylabel('.............AverageBER..........');&lt;br&gt;
axis([0 17 0.000001 0.1]);&lt;br&gt;
toc;              % read the stop watchtimer,print time in second&lt;br&gt;
%%%  End of program      %%%&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;Thanks for you help,take care!</description>
    </item>
    <item>
      <pubDate>Sat, 22 Mar 2008 02:45:04 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#422226</link>
      <author>Amir</author>
      <description>BULDO &amp;lt;mikailidirs@gmail.com&amp;gt; wrote in message &amp;lt;5452bf3f-&lt;br&gt;
bdde-41b0-97c6-&lt;br&gt;
25b5ee902e78@i29g2000prf.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; I am simulating MC-CDMA using Matlab. Here is the &lt;br&gt;
message Maltab&lt;br&gt;
&amp;gt; returned when I ran the simulation:&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Undefined function or method 'snr' for input arguments &lt;br&gt;
of type 'char'.&lt;br&gt;
&amp;gt; Error in ==&amp;gt; MCCDMA at 10&lt;br&gt;
&amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; I am using Matlab 2007b and the Matlab code is:&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; % MCCDMA %&lt;br&gt;
&amp;gt; % for simulation %&lt;br&gt;
&amp;gt; %%%%%%%%%%%%%%%%%%%%&lt;br&gt;
&amp;gt; %%% Transmitter Model %%%&lt;br&gt;
&amp;gt; clear all;&lt;br&gt;
&amp;gt; clc;close all;&lt;br&gt;
&amp;gt; tic;                % start a stopwatch timer&lt;br&gt;
&amp;gt; xaxis=[];&lt;br&gt;
&amp;gt; yaxis=[];&lt;br&gt;
&amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; R= 100;&lt;br&gt;
&amp;gt; for n=1:lentgh(snr_in_dB)&lt;br&gt;
&amp;gt;     no_of_errors=0;&lt;br&gt;
&amp;gt;     for m=1:R&lt;br&gt;
&amp;gt;         N=8;            %no of subchannels&lt;br&gt;
&amp;gt;         ifft_size=N;    %ifft size&lt;br&gt;
&amp;gt;         fft_size=N;     %fft size&lt;br&gt;
&amp;gt;         M=100000;      % nos of data in each subchannel&lt;br&gt;
&amp;gt;         total_no_of_data= N*M;&lt;br&gt;
&amp;gt;     rand_data_seed=11;&lt;br&gt;
&amp;gt;     % Generation of N parallel dada sequence&lt;br&gt;
&amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt;     user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt;     user_data_matrix=(user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt;     % Calling of function for code matrix&lt;br&gt;
&amp;gt;     code_mat=code_matrix(N,'hada_11');&lt;br&gt;
&amp;gt;     trans_code_mat_out=(conj(code_mat))*user_data_matrix;&lt;br&gt;
&amp;gt;     % IFFT of the code matrix out&lt;br&gt;
&amp;gt;     trans_ifft_out=iff(trans_code_mat_out,ifft_size);&lt;br&gt;
&amp;gt;     % Normalization of IFFT&lt;br&gt;
&amp;gt;     trans_ifft_out_nor=trans_ifft_out* sqrt(N);&lt;br&gt;
&amp;gt;     % Parallel to serial of transmit signal&lt;br&gt;
&amp;gt;     trans_sig_serial=reshape(trans_ifft_out_nor,1,N*M);&lt;br&gt;
&amp;gt;     recv_sig_serial=trans_sig_serial;&lt;br&gt;
&amp;gt;     %%% Receiver Model %%%&lt;br&gt;
&amp;gt;     % Serial to parallel for received signal&lt;br&gt;
&amp;gt;     recv_signal_parallel=reshape(recv_signal_serial,N*M);&lt;br&gt;
&amp;gt;     % Taking FFT of the received signal(parallel)&lt;br&gt;
&amp;gt;     recv_fft_out=fft(recv_signal_parallel,fft_size);&lt;br&gt;
&amp;gt;     % Normalization of the FFT&lt;br&gt;
&amp;gt;     recv_fft_out_nor=recv_fft_out/sqrt(N);&lt;br&gt;
&amp;gt;     % Calling function for weight matrix&lt;br&gt;
&amp;gt;     [weight_mat,diag_h]=weight_mat(N,'awgn');&lt;br&gt;
&amp;gt;     % Multiplication of Rayleigh Noise with FFT out&lt;br&gt;
&amp;gt;     recv_fft_out_rayleigh=diag_h*recv_fft_out_nor;&lt;br&gt;
&amp;gt;     % Addition of AWGN&lt;br&gt;
&amp;gt;  &lt;br&gt;
&amp;gt; recv_fft_awgn_out=awgn(recv_fft_out_rayleig,SNR_in_dB&lt;br&gt;
(n),'measured');&lt;br&gt;
&amp;gt;     recv_fft_out_noise=recv_fft_awgn_out-&lt;br&gt;
recv_fft_out_rayleigh;&lt;br&gt;
&amp;gt;     recv_fft_awgn_out=recv_fft_out_rayleigh+&lt;br&gt;
(recv_fft_out_noise/&lt;br&gt;
&amp;gt; sqrt(2));&lt;br&gt;
&amp;gt;     % Multiplication by weight matrix&lt;br&gt;
&amp;gt;     recv_wmat_out=weight_mat*recv_fft_awgn_out;&lt;br&gt;
&amp;gt;     % Taking inverse of code matrix&lt;br&gt;
&amp;gt;     inv_code_mat=inv(code_mat);&lt;br&gt;
&amp;gt;     % Multiplication by Inverse Code Matrix&lt;br&gt;
&amp;gt;     out_data_parallel=inv_code_mat*(recv_wmat_out);&lt;br&gt;
&amp;gt;     % Taking real part of the out_data_ parallel matrix&lt;br&gt;
&amp;gt;     real_out_data_parallel=real(out_data_parallel);&lt;br&gt;
&amp;gt;     % Converting the real_out_parallel matrix to '1' &lt;br&gt;
and '-1'&lt;br&gt;
&amp;gt;     out_user_data_matrix=(real_out_data_parallel&amp;gt;0)*2-1;&lt;br&gt;
&amp;gt;     % Parallel to serial conversion of out data&lt;br&gt;
&amp;gt;     out_data_serial=reshape(out_user_data_matrix,1,N*M);&lt;br&gt;
&amp;gt;     %%% calculation of bit error rate %%%&lt;br&gt;
&amp;gt;     % regeneration of transmitted user data matrix&lt;br&gt;
&amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt;     trans_user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt;     trans_user_data_matrix=(trans_user_data_matrix&amp;gt;0.5)&lt;br&gt;
*2-1;&lt;br&gt;
&amp;gt;     % Calculation of bit error rate&lt;br&gt;
&amp;gt;  &lt;br&gt;
&amp;gt; [no_of_errors,symbol_error_rate]=symerr&lt;br&gt;
(trans_user_data_matrix,out_user_data_matrix);&lt;br&gt;
&amp;gt;     no_of_errors=no_of_errors+no_of_errors;&lt;br&gt;
&amp;gt;     end;&lt;br&gt;
&amp;gt;     sym_err_rate=no_of_errors/total_no_of_data;&lt;br&gt;
&amp;gt;     ber_simulated=sym_err_rate/1.0;&lt;br&gt;
&amp;gt;     ber_simulated;&lt;br&gt;
&amp;gt;     yaxis=[yaxis,ber_simulated];&lt;br&gt;
&amp;gt; end;&lt;br&gt;
&amp;gt; xaxis=[xaxis,SNR_in_dB];&lt;br&gt;
&amp;gt; % Save BER for different SNR&lt;br&gt;
&amp;gt; save ybhawgns.mat yaxis;&lt;br&gt;
&amp;gt; % Plotting command follows&lt;br&gt;
&amp;gt; seminolog(xaxis,yyaxis,'g-');&lt;br&gt;
&amp;gt; ylabel('.............SNR(dB).............');&lt;br&gt;
&amp;gt; ylabel('.............AverageBER..........');&lt;br&gt;
&amp;gt; axis([0 17 0.000001 0.1]);&lt;br&gt;
&amp;gt; toc;              % read the stop watchtimer,print time &lt;br&gt;
in second&lt;br&gt;
&amp;gt; %%%  End of program      %%%&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    Thanks for you help,take care!&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
You have a typo in that line. You have a space between snr &lt;br&gt;
and _in_ dB:&lt;br&gt;
&lt;br&gt;
snr _in_ dB = 0:1:15; wrong, space after snr&lt;br&gt;
snr_in_ dB = 0:1:15; %Correct, no space after snr</description>
    </item>
    <item>
      <pubDate>Sat, 22 Mar 2008 03:18:10 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#422230</link>
      <author>BULDO</author>
      <description>Thanks for your help, but after i corrected the previous mistake, i&lt;br&gt;
got a new error:??? Undefined function or method 'lentgh' for input&lt;br&gt;
arguments of type 'double'.&lt;br&gt;
&lt;br&gt;
Error in =3D=3D&amp;gt; MCCDMA at 12&lt;br&gt;
for n=3D1:lentgh(snr_in_dB)&lt;br&gt;
Take care!&lt;br&gt;
On Mar 22, 10:45=A0am, &quot;Amir &quot; &amp;lt;amir_se...@yahoo.com&amp;gt; wrote:&lt;br&gt;
&amp;gt; BULDO &amp;lt;mikailid...@gmail.com&amp;gt; wrote in message &amp;lt;5452bf3f-&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; bdde-41b0-97c6-&lt;br&gt;
&amp;gt; 25b5ee902...@i29g2000prf.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; I am simulating MC-CDMA using Matlab. Here is the&lt;br&gt;
&amp;gt; message Maltab&lt;br&gt;
&amp;gt; &amp;gt; returned when I ran the simulation:&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; Undefined function or method 'snr' for input arguments&lt;br&gt;
&amp;gt; of type 'char'.&lt;br&gt;
&amp;gt; &amp;gt; Error in =3D=3D&amp;gt; MCCDMA at 10&lt;br&gt;
&amp;gt; &amp;gt; snr _in_ dB =3D 0:1:15;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; I am using Matlab 2007b and the Matlab code is:&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; % MCCDMA %&lt;br&gt;
&amp;gt; &amp;gt; % for simulation %&lt;br&gt;
&amp;gt; &amp;gt; %%%%%%%%%%%%%%%%%%%%&lt;br&gt;
&amp;gt; &amp;gt; %%% Transmitter Model %%%&lt;br&gt;
&amp;gt; &amp;gt; clear all;&lt;br&gt;
&amp;gt; &amp;gt; clc;close all;&lt;br&gt;
&amp;gt; &amp;gt; tic; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0% start a stopwatch timer&lt;br&gt;
&amp;gt; &amp;gt; xaxis=3D[];&lt;br&gt;
&amp;gt; &amp;gt; yaxis=3D[];&lt;br&gt;
&amp;gt; &amp;gt; snr _in_ dB =3D 0:1:15;&lt;br&gt;
&amp;gt; &amp;gt; R=3D 100;&lt;br&gt;
&amp;gt; &amp;gt; for n=3D1:lentgh(snr_in_dB)&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 no_of_errors=3D0;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 for m=3D1:R&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 =A0 =A0 N=3D8; =A0 =A0 =A0 =A0 =A0 =A0%no of subchannels&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 =A0 =A0 ifft_size=3DN; =A0 =A0%ifft size&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 =A0 =A0 fft_size=3DN; =A0 =A0 %fft size&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 =A0 =A0 M=3D100000; =A0 =A0 =A0% nos of data in each subchannel&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 =A0 =A0 total_no_of_data=3D N*M;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 rand_data_seed=3D11;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Generation of N parallel dada sequence&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 user_data_matrix=3Drand(N,M);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 user_data_matrix=3D(user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Calling of function for code matrix&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 code_mat=3Dcode_matrix(N,'hada_11');&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 trans_code_mat_out=3D(conj(code_mat))*user_data_matrix;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % IFFT of the code matrix out&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 trans_ifft_out=3Diff(trans_code_mat_out,ifft_size);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Normalization of IFFT&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 trans_ifft_out_nor=3Dtrans_ifft_out* sqrt(N);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Parallel to serial of transmit signal&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 trans_sig_serial=3Dreshape(trans_ifft_out_nor,1,N*M);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 recv_sig_serial=3Dtrans_sig_serial;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 %%% Receiver Model %%%&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Serial to parallel for received signal&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 recv_signal_parallel=3Dreshape(recv_signal_serial,N*M);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Taking FFT of the received signal(parallel)&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 recv_fft_out=3Dfft(recv_signal_parallel,fft_size);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Normalization of the FFT&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 recv_fft_out_nor=3Drecv_fft_out/sqrt(N);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Calling function for weight matrix&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 [weight_mat,diag_h]=3Dweight_mat(N,'awgn');&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Multiplication of Rayleigh Noise with FFT out&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 recv_fft_out_rayleigh=3Ddiag_h*recv_fft_out_nor;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Addition of AWGN&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; recv_fft_awgn_out=3Dawgn(recv_fft_out_rayleig,SNR_in_dB&lt;br&gt;
&amp;gt; (n),'measured');&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 recv_fft_out_noise=3Drecv_fft_awgn_out-&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; recv_fft_out_rayleigh;&amp;gt; =A0 =A0 recv_fft_awgn_out=3Drecv_fft_out_rayleigh+=&lt;br&gt;
&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; (recv_fft_out_noise/&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; sqrt(2));&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Multiplication by weight matrix&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 recv_wmat_out=3Dweight_mat*recv_fft_awgn_out;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Taking inverse of code matrix&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 inv_code_mat=3Dinv(code_mat);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Multiplication by Inverse Code Matrix&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 out_data_parallel=3Dinv_code_mat*(recv_wmat_out);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Taking real part of the out_data_ parallel matrix&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 real_out_data_parallel=3Dreal(out_data_parallel);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Converting the real_out_parallel matrix to '1'&lt;br&gt;
&amp;gt; and '-1'&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 out_user_data_matrix=3D(real_out_data_parallel&amp;gt;0)*2-1;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Parallel to serial conversion of out data&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 out_data_serial=3Dreshape(out_user_data_matrix,1,N*M);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 %%% calculation of bit error rate %%%&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % regeneration of transmitted user data matrix&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 trans_user_data_matrix=3Drand(N,M);&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 trans_user_data_matrix=3D(trans_user_data_matrix&amp;gt;0.5)&lt;br&gt;
&amp;gt; *2-1;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 % Calculation of bit error rate&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; [no_of_errors,symbol_error_rate]=3Dsymerr&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; (trans_user_data_matrix,out_user_data_matrix);&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 no_of_errors=3Dno_of_errors+no_of_errors;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 end;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 sym_err_rate=3Dno_of_errors/total_no_of_data;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 ber_simulated=3Dsym_err_rate/1.0;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 ber_simulated;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0 yaxis=3D[yaxis,ber_simulated];&lt;br&gt;
&amp;gt; &amp;gt; end;&lt;br&gt;
&amp;gt; &amp;gt; xaxis=3D[xaxis,SNR_in_dB];&lt;br&gt;
&amp;gt; &amp;gt; % Save BER for different SNR&lt;br&gt;
&amp;gt; &amp;gt; save ybhawgns.mat yaxis;&lt;br&gt;
&amp;gt; &amp;gt; % Plotting command follows&lt;br&gt;
&amp;gt; &amp;gt; seminolog(xaxis,yyaxis,'g-');&lt;br&gt;
&amp;gt; &amp;gt; ylabel('.............SNR(dB).............');&lt;br&gt;
&amp;gt; &amp;gt; ylabel('.............AverageBER..........');&lt;br&gt;
&amp;gt; &amp;gt; axis([0 17 0.000001 0.1]);&lt;br&gt;
&amp;gt; &amp;gt; toc; =A0 =A0 =A0 =A0 =A0 =A0 =A0% read the stop watchtimer,print time&lt;br&gt;
&amp;gt; in second&lt;br&gt;
&amp;gt; &amp;gt; %%% =A0End of program =A0 =A0 =A0%%%&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; =A0 =A0Thanks for you help,take care!&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; You have a typo in that line. You have a space between snr&lt;br&gt;
&amp;gt; and _in_ dB:&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; snr _in_ dB =3D 0:1:15; wrong, space after snr&lt;br&gt;
&amp;gt; snr_in_ dB =3D 0:1:15; %Correct, no space after snr- Hide quoted text -&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; - Show quoted text -- Hide quoted text -&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; - Show quoted text -- Hide quoted text -&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; - Show quoted text -</description>
    </item>
    <item>
      <pubDate>Sat, 22 Mar 2008 05:25:01 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#422242</link>
      <author>roberson@ibd.nrc-cnrc.gc.ca (Walter Roberson)</author>
      <description>In article &amp;lt;0612995c-3e43-424b-94c7-cc9d566afe65@s12g2000prg.googlegroups.com&amp;gt;,&lt;br&gt;
BULDO  &amp;lt;mikailidirs@gmail.com&amp;gt; wrote:&lt;br&gt;
&amp;gt;Thanks for your help, but after i corrected the previous mistake, i&lt;br&gt;
&amp;gt;got a new error:??? Undefined function or method 'lentgh' for input&lt;br&gt;
&amp;gt;arguments of type 'double'.&lt;br&gt;
&lt;br&gt;
Try 'length' instead of 'lentgh'.&lt;br&gt;
-- &lt;br&gt;
&amp;nbsp;&amp;nbsp;&quot;Product of a myriad various minds and contending tongues, compact of&lt;br&gt;
&amp;nbsp;&amp;nbsp;obscure and minute association, a language has its own abundant and&lt;br&gt;
&amp;nbsp;&amp;nbsp;often recondite laws, in the habitual and summary recognition of&lt;br&gt;
&amp;nbsp;&amp;nbsp;which scholarship consists.&quot;                -- Walter Pater</description>
    </item>
    <item>
      <pubDate>Sat, 22 Mar 2008 08:54:30 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#422255</link>
      <author>BULDO</author>
      <description>On Mar 22, 1:25=A0pm, rober...@ibd.nrc-cnrc.gc.ca (Walter Roberson)&lt;br&gt;
wrote:&lt;br&gt;
&amp;gt; In article &amp;lt;0612995c-3e43-424b-94c7-cc9d566af...@s12g2000prg.googlegroups.=&lt;br&gt;
com&amp;gt;,&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; BULDO =A0&amp;lt;mikailid...@gmail.com&amp;gt; wrote:&lt;br&gt;
&amp;gt; &amp;gt;Thanks for your help, but after i corrected the previous mistake, i&lt;br&gt;
&amp;gt; &amp;gt;got a new error:??? Undefined function or method 'lentgh' for input&lt;br&gt;
&amp;gt; &amp;gt;arguments of type 'double'.&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; Try 'length' instead of 'lentgh'.&lt;br&gt;
&amp;gt; --&lt;br&gt;
&amp;gt; =A0 &quot;Product of a myriad various minds and contending tongues, compact of&lt;br&gt;
&amp;gt; =A0 obscure and minute association, a language has its own abundant and&lt;br&gt;
&amp;gt; =A0 often recondite laws, in the habitual and summary recognition of&lt;br&gt;
&amp;gt; =A0 which scholarship consists.&quot; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0-- Walter =&lt;br&gt;
Pater&lt;br&gt;
&lt;br&gt;
Thanks a lot Walter Pater,&lt;br&gt;
But this  doesn't solve the problem. Take care!</description>
    </item>
    <item>
      <pubDate>Sat, 22 Mar 2008 09:51:02 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#422256</link>
      <author>Mikail </author>
      <description>Hi,&lt;br&gt;
Thanks for your help,but this didn't solve the problem. &lt;br&gt;
Regars&lt;br&gt;
roberson@ibd.nrc-cnrc.gc.ca (Walter Roberson) wrote in &lt;br&gt;
message &amp;lt;fs257d$7kc$1@canopus.cc.umanitoba.ca&amp;gt;...&lt;br&gt;
&amp;gt; In article &amp;lt;0612995c-3e43-424b-94c7-&lt;br&gt;
cc9d566afe65@s12g2000prg.googlegroups.com&amp;gt;,&lt;br&gt;
&amp;gt; BULDO  &amp;lt;mikailidirs@gmail.com&amp;gt; wrote:&lt;br&gt;
&amp;gt; &amp;gt;Thanks for your help, but after i corrected the previous &lt;br&gt;
mistake, i&lt;br&gt;
&amp;gt; &amp;gt;got a new error:??? Undefined function or &lt;br&gt;
method 'lentgh' for input&lt;br&gt;
&amp;gt; &amp;gt;arguments of type 'double'.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Try 'length' instead of 'lentgh'.&lt;br&gt;
&amp;gt; -- &lt;br&gt;
&amp;gt;   &quot;Product of a myriad various minds and contending &lt;br&gt;
tongues, compact of&lt;br&gt;
&amp;gt;   obscure and minute association, a language has its own &lt;br&gt;
abundant and&lt;br&gt;
&amp;gt;   often recondite laws, in the habitual and summary &lt;br&gt;
recognition of&lt;br&gt;
&amp;gt;   which scholarship consists.&quot;                -- Walter &lt;br&gt;
Pater</description>
    </item>
    <item>
      <pubDate>Sun, 30 Mar 2008 07:29:04 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#423573</link>
      <author>Logan Wolverine</author>
      <description>BULDO &amp;lt;mikailidirs@gmail.com&amp;gt; wrote in message&lt;br&gt;
&amp;lt;5452bf3f-bdde-41b0-97c6-25b5ee902e78@i29g2000prf.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; I am simulating MC-CDMA using Matlab. Here is the message&lt;br&gt;
Maltab&lt;br&gt;
&amp;gt; returned when I ran the simulation:&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Undefined function or method 'snr' for input arguments of&lt;br&gt;
type 'char'.&lt;br&gt;
&amp;gt; Error in ==&amp;gt; MCCDMA at 10&lt;br&gt;
&amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; I am using Matlab 2007b and the Matlab code is:&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; % MCCDMA %&lt;br&gt;
&amp;gt; % for simulation %&lt;br&gt;
&amp;gt; %%%%%%%%%%%%%%%%%%%%&lt;br&gt;
&amp;gt; %%% Transmitter Model %%%&lt;br&gt;
&amp;gt; clear all;&lt;br&gt;
&amp;gt; clc;close all;&lt;br&gt;
&amp;gt; tic;                % start a stopwatch timer&lt;br&gt;
&amp;gt; xaxis=[];&lt;br&gt;
&amp;gt; yaxis=[];&lt;br&gt;
&amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; R= 100;&lt;br&gt;
&amp;gt; for n=1:lentgh(snr_in_dB)&lt;br&gt;
&amp;gt;     no_of_errors=0;&lt;br&gt;
&amp;gt;     for m=1:R&lt;br&gt;
&amp;gt;         N=8;            %no of subchannels&lt;br&gt;
&amp;gt;         ifft_size=N;    %ifft size&lt;br&gt;
&amp;gt;         fft_size=N;     %fft size&lt;br&gt;
&amp;gt;         M=100000;      % nos of data in each subchannel&lt;br&gt;
&amp;gt;         total_no_of_data= N*M;&lt;br&gt;
&amp;gt;     rand_data_seed=11;&lt;br&gt;
&amp;gt;     % Generation of N parallel dada sequence&lt;br&gt;
&amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt;     user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt;     user_data_matrix=(user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt;     % Calling of function for code matrix&lt;br&gt;
&amp;gt;     code_mat=code_matrix(N,'hada_11');&lt;br&gt;
&amp;gt;     trans_code_mat_out=(conj(code_mat))*user_data_matrix;&lt;br&gt;
&amp;gt;     % IFFT of the code matrix out&lt;br&gt;
&amp;gt;     trans_ifft_out=iff(trans_code_mat_out,ifft_size);&lt;br&gt;
&amp;gt;     % Normalization of IFFT&lt;br&gt;
&amp;gt;     trans_ifft_out_nor=trans_ifft_out* sqrt(N);&lt;br&gt;
&amp;gt;     % Parallel to serial of transmit signal&lt;br&gt;
&amp;gt;     trans_sig_serial=reshape(trans_ifft_out_nor,1,N*M);&lt;br&gt;
&amp;gt;     recv_sig_serial=trans_sig_serial;&lt;br&gt;
&amp;gt;     %%% Receiver Model %%%&lt;br&gt;
&amp;gt;     % Serial to parallel for received signal&lt;br&gt;
&amp;gt;     recv_signal_parallel=reshape(recv_signal_serial,N*M);&lt;br&gt;
&amp;gt;     % Taking FFT of the received signal(parallel)&lt;br&gt;
&amp;gt;     recv_fft_out=fft(recv_signal_parallel,fft_size);&lt;br&gt;
&amp;gt;     % Normalization of the FFT&lt;br&gt;
&amp;gt;     recv_fft_out_nor=recv_fft_out/sqrt(N);&lt;br&gt;
&amp;gt;     % Calling function for weight matrix&lt;br&gt;
&amp;gt;     [weight_mat,diag_h]=weight_mat(N,'awgn');&lt;br&gt;
&amp;gt;     % Multiplication of Rayleigh Noise with FFT out&lt;br&gt;
&amp;gt;     recv_fft_out_rayleigh=diag_h*recv_fft_out_nor;&lt;br&gt;
&amp;gt;     % Addition of AWGN&lt;br&gt;
&amp;gt;  &lt;br&gt;
&amp;gt;&lt;br&gt;
recv_fft_awgn_out=awgn(recv_fft_out_rayleig,SNR_in_dB(n),'measured');&lt;br&gt;
&amp;gt;    &lt;br&gt;
recv_fft_out_noise=recv_fft_awgn_out-recv_fft_out_rayleigh;&lt;br&gt;
&amp;gt;    &lt;br&gt;
recv_fft_awgn_out=recv_fft_out_rayleigh+(recv_fft_out_noise/&lt;br&gt;
&amp;gt; sqrt(2));&lt;br&gt;
&amp;gt;     % Multiplication by weight matrix&lt;br&gt;
&amp;gt;     recv_wmat_out=weight_mat*recv_fft_awgn_out;&lt;br&gt;
&amp;gt;     % Taking inverse of code matrix&lt;br&gt;
&amp;gt;     inv_code_mat=inv(code_mat);&lt;br&gt;
&amp;gt;     % Multiplication by Inverse Code Matrix&lt;br&gt;
&amp;gt;     out_data_parallel=inv_code_mat*(recv_wmat_out);&lt;br&gt;
&amp;gt;     % Taking real part of the out_data_ parallel matrix&lt;br&gt;
&amp;gt;     real_out_data_parallel=real(out_data_parallel);&lt;br&gt;
&amp;gt;     % Converting the real_out_parallel matrix to '1' and '-1'&lt;br&gt;
&amp;gt;     out_user_data_matrix=(real_out_data_parallel&amp;gt;0)*2-1;&lt;br&gt;
&amp;gt;     % Parallel to serial conversion of out data&lt;br&gt;
&amp;gt;     out_data_serial=reshape(out_user_data_matrix,1,N*M);&lt;br&gt;
&amp;gt;     %%% calculation of bit error rate %%%&lt;br&gt;
&amp;gt;     % regeneration of transmitted user data matrix&lt;br&gt;
&amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt;     trans_user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt;     trans_user_data_matrix=(trans_user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt;     % Calculation of bit error rate&lt;br&gt;
&amp;gt;  &lt;br&gt;
&amp;gt;&lt;br&gt;
[no_of_errors,symbol_error_rate]=symerr(trans_user_data_matrix,out_user_data_matrix);&lt;br&gt;
&amp;gt;     no_of_errors=no_of_errors+no_of_errors;&lt;br&gt;
&amp;gt;     end;&lt;br&gt;
&amp;gt;     sym_err_rate=no_of_errors/total_no_of_data;&lt;br&gt;
&amp;gt;     ber_simulated=sym_err_rate/1.0;&lt;br&gt;
&amp;gt;     ber_simulated;&lt;br&gt;
&amp;gt;     yaxis=[yaxis,ber_simulated];&lt;br&gt;
&amp;gt; end;&lt;br&gt;
&amp;gt; xaxis=[xaxis,SNR_in_dB];&lt;br&gt;
&amp;gt; % Save BER for different SNR&lt;br&gt;
&amp;gt; save ybhawgns.mat yaxis;&lt;br&gt;
&amp;gt; % Plotting command follows&lt;br&gt;
&amp;gt; seminolog(xaxis,yyaxis,'g-');&lt;br&gt;
&amp;gt; ylabel('.............SNR(dB).............');&lt;br&gt;
&amp;gt; ylabel('.............AverageBER..........');&lt;br&gt;
&amp;gt; axis([0 17 0.000001 0.1]);&lt;br&gt;
&amp;gt; toc;              % read the stop watchtimer,print time in&lt;br&gt;
second&lt;br&gt;
&amp;gt; %%%  End of program      %%%&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    Thanks for you help,take care!&lt;br&gt;
&lt;br&gt;
I hav Got an error of line 26&lt;br&gt;
&quot;Undefined command/function 'code_matrix'.&lt;br&gt;
&lt;br&gt;
Error in ==&amp;gt; Mc at 26&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;code_mat=code_matrix(N,'hada_11');&quot;&lt;br&gt;
&lt;br&gt;
Can anyone please help me on that error......</description>
    </item>
    <item>
      <pubDate>Fri, 31 Oct 2008 15:28:02 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#608369</link>
      <author>lenin ram</author>
      <description>BULDO &amp;lt;mikailidirs@gmail.com&amp;gt; wrote in message &amp;lt;5452bf3f-bdde-41b0-97c6-25b5ee902e78@i29g2000prf.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; I am simulating MC-CDMA using Matlab. Here is the message Maltab&lt;br&gt;
&amp;gt; returned when I ran the simulation:&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Undefined function or method 'snr' for input arguments of type 'char'.&lt;br&gt;
&amp;gt; Error in ==&amp;gt; MCCDMA at 10&lt;br&gt;
&amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; I am using Matlab 2007b and the Matlab code is:&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; % MCCDMA %&lt;br&gt;
&amp;gt; % for simulation %&lt;br&gt;
&amp;gt; %%%%%%%%%%%%%%%%%%%%&lt;br&gt;
&amp;gt; %%% Transmitter Model %%%&lt;br&gt;
&amp;gt; clear all;&lt;br&gt;
&amp;gt; clc;close all;&lt;br&gt;
&amp;gt; tic;                % start a stopwatch timer&lt;br&gt;
&amp;gt; xaxis=[];&lt;br&gt;
&amp;gt; yaxis=[];&lt;br&gt;
&amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; R= 100;&lt;br&gt;
&amp;gt; for n=1:lentgh(snr_in_dB)&lt;br&gt;
&amp;gt;     no_of_errors=0;&lt;br&gt;
&amp;gt;     for m=1:R&lt;br&gt;
&amp;gt;         N=8;            %no of subchannels&lt;br&gt;
&amp;gt;         ifft_size=N;    %ifft size&lt;br&gt;
&amp;gt;         fft_size=N;     %fft size&lt;br&gt;
&amp;gt;         M=100000;      % nos of data in each subchannel&lt;br&gt;
&amp;gt;         total_no_of_data= N*M;&lt;br&gt;
&amp;gt;     rand_data_seed=11;&lt;br&gt;
&amp;gt;     % Generation of N parallel dada sequence&lt;br&gt;
&amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt;     user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt;     user_data_matrix=(user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt;     % Calling of function for code matrix&lt;br&gt;
&amp;gt;     code_mat=code_matrix(N,'hada_11');&lt;br&gt;
&amp;gt;     trans_code_mat_out=(conj(code_mat))*user_data_matrix;&lt;br&gt;
&amp;gt;     % IFFT of the code matrix out&lt;br&gt;
&amp;gt;     trans_ifft_out=iff(trans_code_mat_out,ifft_size);&lt;br&gt;
&amp;gt;     % Normalization of IFFT&lt;br&gt;
&amp;gt;     trans_ifft_out_nor=trans_ifft_out* sqrt(N);&lt;br&gt;
&amp;gt;     % Parallel to serial of transmit signal&lt;br&gt;
&amp;gt;     trans_sig_serial=reshape(trans_ifft_out_nor,1,N*M);&lt;br&gt;
&amp;gt;     recv_sig_serial=trans_sig_serial;&lt;br&gt;
&amp;gt;     %%% Receiver Model %%%&lt;br&gt;
&amp;gt;     % Serial to parallel for received signal&lt;br&gt;
&amp;gt;     recv_signal_parallel=reshape(recv_signal_serial,N*M);&lt;br&gt;
&amp;gt;     % Taking FFT of the received signal(parallel)&lt;br&gt;
&amp;gt;     recv_fft_out=fft(recv_signal_parallel,fft_size);&lt;br&gt;
&amp;gt;     % Normalization of the FFT&lt;br&gt;
&amp;gt;     recv_fft_out_nor=recv_fft_out/sqrt(N);&lt;br&gt;
&amp;gt;     % Calling function for weight matrix&lt;br&gt;
&amp;gt;     [weight_mat,diag_h]=weight_mat(N,'awgn');&lt;br&gt;
&amp;gt;     % Multiplication of Rayleigh Noise with FFT out&lt;br&gt;
&amp;gt;     recv_fft_out_rayleigh=diag_h*recv_fft_out_nor;&lt;br&gt;
&amp;gt;     % Addition of AWGN&lt;br&gt;
&amp;gt;  &lt;br&gt;
&amp;gt; recv_fft_awgn_out=awgn(recv_fft_out_rayleig,SNR_in_dB(n),'measured');&lt;br&gt;
&amp;gt;     recv_fft_out_noise=recv_fft_awgn_out-recv_fft_out_rayleigh;&lt;br&gt;
&amp;gt;     recv_fft_awgn_out=recv_fft_out_rayleigh+(recv_fft_out_noise/&lt;br&gt;
&amp;gt; sqrt(2));&lt;br&gt;
&amp;gt;     % Multiplication by weight matrix&lt;br&gt;
&amp;gt;     recv_wmat_out=weight_mat*recv_fft_awgn_out;&lt;br&gt;
&amp;gt;     % Taking inverse of code matrix&lt;br&gt;
&amp;gt;     inv_code_mat=inv(code_mat);&lt;br&gt;
&amp;gt;     % Multiplication by Inverse Code Matrix&lt;br&gt;
&amp;gt;     out_data_parallel=inv_code_mat*(recv_wmat_out);&lt;br&gt;
&amp;gt;     % Taking real part of the out_data_ parallel matrix&lt;br&gt;
&amp;gt;     real_out_data_parallel=real(out_data_parallel);&lt;br&gt;
&amp;gt;     % Converting the real_out_parallel matrix to '1' and '-1'&lt;br&gt;
&amp;gt;     out_user_data_matrix=(real_out_data_parallel&amp;gt;0)*2-1;&lt;br&gt;
&amp;gt;     % Parallel to serial conversion of out data&lt;br&gt;
&amp;gt;     out_data_serial=reshape(out_user_data_matrix,1,N*M);&lt;br&gt;
&amp;gt;     %%% calculation of bit error rate %%%&lt;br&gt;
&amp;gt;     % regeneration of transmitted user data matrix&lt;br&gt;
&amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt;     trans_user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt;     trans_user_data_matrix=(trans_user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt;     % Calculation of bit error rate&lt;br&gt;
&amp;gt;  &lt;br&gt;
&amp;gt; [no_of_errors,symbol_error_rate]=symerr(trans_user_data_matrix,out_user_data_matrix);&lt;br&gt;
&amp;gt;     no_of_errors=no_of_errors+no_of_errors;&lt;br&gt;
&amp;gt;     end;&lt;br&gt;
&amp;gt;     sym_err_rate=no_of_errors/total_no_of_data;&lt;br&gt;
&amp;gt;     ber_simulated=sym_err_rate/1.0;&lt;br&gt;
&amp;gt;     ber_simulated;&lt;br&gt;
&amp;gt;     yaxis=[yaxis,ber_simulated];&lt;br&gt;
&amp;gt; end;&lt;br&gt;
&amp;gt; xaxis=[xaxis,SNR_in_dB];&lt;br&gt;
&amp;gt; % Save BER for different SNR&lt;br&gt;
&amp;gt; save ybhawgns.mat yaxis;&lt;br&gt;
&amp;gt; % Plotting command follows&lt;br&gt;
&amp;gt; seminolog(xaxis,yyaxis,'g-');&lt;br&gt;
&amp;gt; ylabel('.............SNR(dB).............');&lt;br&gt;
&amp;gt; ylabel('.............AverageBER..........');&lt;br&gt;
&amp;gt; axis([0 17 0.000001 0.1]);&lt;br&gt;
&amp;gt; toc;              % read the stop watchtimer,print time in second&lt;br&gt;
&amp;gt; %%%  End of program      %%%&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    Thanks for you help,take care!&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
send me the entire program including function program then only we can able to rectify the complete errors</description>
    </item>
    <item>
      <pubDate>Tue, 29 Sep 2009 17:45:19 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#683487</link>
      <author>saumya mohapatra</author>
      <description>&quot;lenin ram&quot; &amp;lt;lenin_ram@rediffmail.com&amp;gt; wrote in message &amp;lt;gef862$lr4$1@fred.mathworks.com&amp;gt;...&lt;br&gt;
&amp;gt; BULDO &amp;lt;mikailidirs@gmail.com&amp;gt; wrote in message &amp;lt;5452bf3f-bdde-41b0-97c6-25b5ee902e78@i29g2000prf.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; &amp;gt; I am simulating MC-CDMA using Matlab. Here is the message Maltab&lt;br&gt;
&amp;gt; &amp;gt; returned when I ran the simulation:&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; Undefined function or method 'snr' for input arguments of type 'char'.&lt;br&gt;
&amp;gt; &amp;gt; Error in ==&amp;gt; MCCDMA at 10&lt;br&gt;
&amp;gt; &amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; I am using Matlab 2007b and the Matlab code is:&lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; % MCCDMA %&lt;br&gt;
&amp;gt; &amp;gt; % for simulation %&lt;br&gt;
&amp;gt; &amp;gt; %%%%%%%%%%%%%%%%%%%%&lt;br&gt;
&amp;gt; &amp;gt; %%% Transmitter Model %%%&lt;br&gt;
&amp;gt; &amp;gt; clear all;&lt;br&gt;
&amp;gt; &amp;gt; clc;close all;&lt;br&gt;
&amp;gt; &amp;gt; tic;                % start a stopwatch timer&lt;br&gt;
&amp;gt; &amp;gt; xaxis=[];&lt;br&gt;
&amp;gt; &amp;gt; yaxis=[];&lt;br&gt;
&amp;gt; &amp;gt; snr _in_ dB = 0:1:15;&lt;br&gt;
&amp;gt; &amp;gt; R= 100;&lt;br&gt;
&amp;gt; &amp;gt; for n=1:lentgh(snr_in_dB)&lt;br&gt;
&amp;gt; &amp;gt;     no_of_errors=0;&lt;br&gt;
&amp;gt; &amp;gt;     for m=1:R&lt;br&gt;
&amp;gt; &amp;gt;         N=8;            %no of subchannels&lt;br&gt;
&amp;gt; &amp;gt;         ifft_size=N;    %ifft size&lt;br&gt;
&amp;gt; &amp;gt;         fft_size=N;     %fft size&lt;br&gt;
&amp;gt; &amp;gt;         M=100000;      % nos of data in each subchannel&lt;br&gt;
&amp;gt; &amp;gt;         total_no_of_data= N*M;&lt;br&gt;
&amp;gt; &amp;gt;     rand_data_seed=11;&lt;br&gt;
&amp;gt; &amp;gt;     % Generation of N parallel dada sequence&lt;br&gt;
&amp;gt; &amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt; &amp;gt;     user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt; &amp;gt;     user_data_matrix=(user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt; &amp;gt;     % Calling of function for code matrix&lt;br&gt;
&amp;gt; &amp;gt;     code_mat=code_matrix(N,'hada_11');&lt;br&gt;
&amp;gt; &amp;gt;     trans_code_mat_out=(conj(code_mat))*user_data_matrix;&lt;br&gt;
&amp;gt; &amp;gt;     % IFFT of the code matrix out&lt;br&gt;
&amp;gt; &amp;gt;     trans_ifft_out=iff(trans_code_mat_out,ifft_size);&lt;br&gt;
&amp;gt; &amp;gt;     % Normalization of IFFT&lt;br&gt;
&amp;gt; &amp;gt;     trans_ifft_out_nor=trans_ifft_out* sqrt(N);&lt;br&gt;
&amp;gt; &amp;gt;     % Parallel to serial of transmit signal&lt;br&gt;
&amp;gt; &amp;gt;     trans_sig_serial=reshape(trans_ifft_out_nor,1,N*M);&lt;br&gt;
&amp;gt; &amp;gt;     recv_sig_serial=trans_sig_serial;&lt;br&gt;
&amp;gt; &amp;gt;     %%% Receiver Model %%%&lt;br&gt;
&amp;gt; &amp;gt;     % Serial to parallel for received signal&lt;br&gt;
&amp;gt; &amp;gt;     recv_signal_parallel=reshape(recv_signal_serial,N*M);&lt;br&gt;
&amp;gt; &amp;gt;     % Taking FFT of the received signal(parallel)&lt;br&gt;
&amp;gt; &amp;gt;     recv_fft_out=fft(recv_signal_parallel,fft_size);&lt;br&gt;
&amp;gt; &amp;gt;     % Normalization of the FFT&lt;br&gt;
&amp;gt; &amp;gt;     recv_fft_out_nor=recv_fft_out/sqrt(N);&lt;br&gt;
&amp;gt; &amp;gt;     % Calling function for weight matrix&lt;br&gt;
&amp;gt; &amp;gt;     [weight_mat,diag_h]=weight_mat(N,'awgn');&lt;br&gt;
&amp;gt; &amp;gt;     % Multiplication of Rayleigh Noise with FFT out&lt;br&gt;
&amp;gt; &amp;gt;     recv_fft_out_rayleigh=diag_h*recv_fft_out_nor;&lt;br&gt;
&amp;gt; &amp;gt;     % Addition of AWGN&lt;br&gt;
&amp;gt; &amp;gt;  &lt;br&gt;
&amp;gt; &amp;gt; recv_fft_awgn_out=awgn(recv_fft_out_rayleig,SNR_in_dB(n),'measured');&lt;br&gt;
&amp;gt; &amp;gt;     recv_fft_out_noise=recv_fft_awgn_out-recv_fft_out_rayleigh;&lt;br&gt;
&amp;gt; &amp;gt;     recv_fft_awgn_out=recv_fft_out_rayleigh+(recv_fft_out_noise/&lt;br&gt;
&amp;gt; &amp;gt; sqrt(2));&lt;br&gt;
&amp;gt; &amp;gt;     % Multiplication by weight matrix&lt;br&gt;
&amp;gt; &amp;gt;     recv_wmat_out=weight_mat*recv_fft_awgn_out;&lt;br&gt;
&amp;gt; &amp;gt;     % Taking inverse of code matrix&lt;br&gt;
&amp;gt; &amp;gt;     inv_code_mat=inv(code_mat);&lt;br&gt;
&amp;gt; &amp;gt;     % Multiplication by Inverse Code Matrix&lt;br&gt;
&amp;gt; &amp;gt;     out_data_parallel=inv_code_mat*(recv_wmat_out);&lt;br&gt;
&amp;gt; &amp;gt;     % Taking real part of the out_data_ parallel matrix&lt;br&gt;
&amp;gt; &amp;gt;     real_out_data_parallel=real(out_data_parallel);&lt;br&gt;
&amp;gt; &amp;gt;     % Converting the real_out_parallel matrix to '1' and '-1'&lt;br&gt;
&amp;gt; &amp;gt;     out_user_data_matrix=(real_out_data_parallel&amp;gt;0)*2-1;&lt;br&gt;
&amp;gt; &amp;gt;     % Parallel to serial conversion of out data&lt;br&gt;
&amp;gt; &amp;gt;     out_data_serial=reshape(out_user_data_matrix,1,N*M);&lt;br&gt;
&amp;gt; &amp;gt;     %%% calculation of bit error rate %%%&lt;br&gt;
&amp;gt; &amp;gt;     % regeneration of transmitted user data matrix&lt;br&gt;
&amp;gt; &amp;gt;     rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt; &amp;gt;     trans_user_data_matrix=rand(N,M);&lt;br&gt;
&amp;gt; &amp;gt;     trans_user_data_matrix=(trans_user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt; &amp;gt;     % Calculation of bit error rate&lt;br&gt;
&amp;gt; &amp;gt;  &lt;br&gt;
&amp;gt; &amp;gt; [no_of_errors,symbol_error_rate]=symerr(trans_user_data_matrix,out_user_data_matrix);&lt;br&gt;
&amp;gt; &amp;gt;     no_of_errors=no_of_errors+no_of_errors;&lt;br&gt;
&amp;gt; &amp;gt;     end;&lt;br&gt;
&amp;gt; &amp;gt;     sym_err_rate=no_of_errors/total_no_of_data;&lt;br&gt;
&amp;gt; &amp;gt;     ber_simulated=sym_err_rate/1.0;&lt;br&gt;
&amp;gt; &amp;gt;     ber_simulated;&lt;br&gt;
&amp;gt; &amp;gt;     yaxis=[yaxis,ber_simulated];&lt;br&gt;
&amp;gt; &amp;gt; end;&lt;br&gt;
&amp;gt; &amp;gt; xaxis=[xaxis,SNR_in_dB];&lt;br&gt;
&amp;gt; &amp;gt; % Save BER for different SNR&lt;br&gt;
&amp;gt; &amp;gt; save ybhawgns.mat yaxis;&lt;br&gt;
&amp;gt; &amp;gt; % Plotting command follows&lt;br&gt;
&amp;gt; &amp;gt; seminolog(xaxis,yyaxis,'g-');&lt;br&gt;
&amp;gt; &amp;gt; ylabel('.............SNR(dB).............');&lt;br&gt;
&amp;gt; &amp;gt; ylabel('.............AverageBER..........');&lt;br&gt;
&amp;gt; &amp;gt; axis([0 17 0.000001 0.1]);&lt;br&gt;
&amp;gt; &amp;gt; toc;              % read the stop watchtimer,print time in second&lt;br&gt;
&amp;gt; &amp;gt; %%%  End of program      %%%&lt;br&gt;
&amp;gt;  &amp;gt;if you will send the entire program like send the each function i will help you&lt;br&gt;
i'm also doing research on 4G technology...</description>
    </item>
    <item>
      <pubDate>Mon, 02 Nov 2009 21:19:03 -0500</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#691588</link>
      <author>Montadar Taher</author>
      <description>hi friends,&lt;br&gt;
&lt;br&gt;
i need a very simple matlab program code for cdma as i am new to cdma programming.&lt;br&gt;
&lt;br&gt;
please help me</description>
    </item>
    <item>
      <pubDate>Tue, 17 Nov 2009 09:24:01 -0500</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#695365</link>
      <author>deepak sheoran</author>
      <description>&quot;Montadar Taher&quot; &amp;lt;muntather_moto@yahoo.com&amp;gt; wrote in message &amp;lt;hcnic7$r1v$1@fred.mathworks.com&amp;gt;...&lt;br&gt;
&amp;gt; hi friends,&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; i need a very simple matlab program code for cdma as i am new to cdma programming.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; please help me&lt;br&gt;
&lt;br&gt;
even i also need the simple cdma code.&lt;br&gt;
can anybody help me with this</description>
    </item>
    <item>
      <pubDate>Wed, 30 Dec 2009 07:35:21 -0500</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#705115</link>
      <author>venkat venkatesh</author>
      <description>BULDO &amp;lt;mikailidirs@gmail.com&amp;gt; wrote in message &amp;lt;0612995c-3e43-424b-94c7-cc9d566afe65@s12g2000prg.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; Thanks for your help, but after i corrected the previous mistake, i&lt;br&gt;
&amp;gt; got a new error:??? Undefined function or method 'lentgh' for input&lt;br&gt;
&amp;gt; arguments of type 'double'.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Error in =3D=3D&amp;gt; MCCDMA at 12&lt;br&gt;
&amp;gt; for n=3D1:lentgh(snr_in_dB)&lt;br&gt;
&amp;gt; Take care!&lt;br&gt;
&amp;gt; On Mar 22, 10:45=A0am, &quot;Amir &quot; &amp;lt;amir_se...@yahoo.com&amp;gt; wrote:&lt;br&gt;
&amp;gt; &amp;gt; BULDO &amp;lt;mikailid...@gmail.com&amp;gt; wrote in message &amp;lt;5452bf3f-&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; bdde-41b0-97c6-&lt;br&gt;
&amp;gt; &amp;gt; 25b5ee902...@i29g2000prf.googlegroups.com&amp;gt;...&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; I am simulating MC-CDMA using Matlab. Here is the&lt;br&gt;
&amp;gt; &amp;gt; message Maltab&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; returned when I ran the simulation:&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; Undefined function or method 'snr' for input arguments&lt;br&gt;
&amp;gt; &amp;gt; of type 'char'.&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; Error in =3D=3D&amp;gt; MCCDMA at 10&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; snr _in_ dB =3D 0:1:15;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; I am using Matlab 2007b and the Matlab code is:&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; % MCCDMA %&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; % for simulation %&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; %%%%%%%%%%%%%%%%%%%%&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; %%% Transmitter Model %%%&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; clear all;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; clc;close all;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; tic; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0% start a stopwatch timer&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; xaxis=3D[];&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; yaxis=3D[];&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; snr _in_ dB =3D 0:1:15;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; R=3D 100;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; for n=3D1:lentgh(snr_in_dB)&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 no_of_errors=3D0;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 for m=3D1:R&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 =A0 =A0 N=3D8; =A0 =A0 =A0 =A0 =A0 =A0%no of subchannels&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 =A0 =A0 ifft_size=3DN; =A0 =A0%ifft size&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 =A0 =A0 fft_size=3DN; =A0 =A0 %fft size&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 =A0 =A0 M=3D100000; =A0 =A0 =A0% nos of data in each subchannel&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 =A0 =A0 total_no_of_data=3D N*M;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 rand_data_seed=3D11;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Generation of N parallel dada sequence&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 user_data_matrix=3Drand(N,M);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 user_data_matrix=3D(user_data_matrix&amp;gt;0.5)*2-1;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Calling of function for code matrix&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 code_mat=3Dcode_matrix(N,'hada_11');&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 trans_code_mat_out=3D(conj(code_mat))*user_data_matrix;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % IFFT of the code matrix out&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 trans_ifft_out=3Diff(trans_code_mat_out,ifft_size);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Normalization of IFFT&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 trans_ifft_out_nor=3Dtrans_ifft_out* sqrt(N);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Parallel to serial of transmit signal&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 trans_sig_serial=3Dreshape(trans_ifft_out_nor,1,N*M);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 recv_sig_serial=3Dtrans_sig_serial;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 %%% Receiver Model %%%&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Serial to parallel for received signal&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 recv_signal_parallel=3Dreshape(recv_signal_serial,N*M);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Taking FFT of the received signal(parallel)&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 recv_fft_out=3Dfft(recv_signal_parallel,fft_size);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Normalization of the FFT&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 recv_fft_out_nor=3Drecv_fft_out/sqrt(N);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Calling function for weight matrix&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 [weight_mat,diag_h]=3Dweight_mat(N,'awgn');&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Multiplication of Rayleigh Noise with FFT out&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 recv_fft_out_rayleigh=3Ddiag_h*recv_fft_out_nor;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Addition of AWGN&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; recv_fft_awgn_out=3Dawgn(recv_fft_out_rayleig,SNR_in_dB&lt;br&gt;
&amp;gt; &amp;gt; (n),'measured');&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 recv_fft_out_noise=3Drecv_fft_awgn_out-&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; recv_fft_out_rayleigh;&amp;gt; =A0 =A0 recv_fft_awgn_out=3Drecv_fft_out_rayleigh+=&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; (recv_fft_out_noise/&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; sqrt(2));&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Multiplication by weight matrix&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 recv_wmat_out=3Dweight_mat*recv_fft_awgn_out;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Taking inverse of code matrix&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 inv_code_mat=3Dinv(code_mat);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Multiplication by Inverse Code Matrix&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 out_data_parallel=3Dinv_code_mat*(recv_wmat_out);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Taking real part of the out_data_ parallel matrix&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 real_out_data_parallel=3Dreal(out_data_parallel);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Converting the real_out_parallel matrix to '1'&lt;br&gt;
&amp;gt; &amp;gt; and '-1'&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 out_user_data_matrix=3D(real_out_data_parallel&amp;gt;0)*2-1;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Parallel to serial conversion of out data&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 out_data_serial=3Dreshape(out_user_data_matrix,1,N*M);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 %%% calculation of bit error rate %%%&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % regeneration of transmitted user data matrix&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 rand('seed',rand_data_seed);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 trans_user_data_matrix=3Drand(N,M);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 trans_user_data_matrix=3D(trans_user_data_matrix&amp;gt;0.5)&lt;br&gt;
&amp;gt; &amp;gt; *2-1;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 % Calculation of bit error rate&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; [no_of_errors,symbol_error_rate]=3Dsymerr&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; (trans_user_data_matrix,out_user_data_matrix);&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 no_of_errors=3Dno_of_errors+no_of_errors;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 end;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 sym_err_rate=3Dno_of_errors/total_no_of_data;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 ber_simulated=3Dsym_err_rate/1.0;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 ber_simulated;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0 yaxis=3D[yaxis,ber_simulated];&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; end;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; xaxis=3D[xaxis,SNR_in_dB];&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; % Save BER for different SNR&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; save ybhawgns.mat yaxis;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; % Plotting command follows&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; seminolog(xaxis,yyaxis,'g-');&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; ylabel('.............SNR(dB).............');&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; ylabel('.............AverageBER..........');&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; axis([0 17 0.000001 0.1]);&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; toc; =A0 =A0 =A0 =A0 =A0 =A0 =A0% read the stop watchtimer,print time&lt;br&gt;
&amp;gt; &amp;gt; in second&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; %%% =A0End of program =A0 =A0 =A0%%%&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; &amp;gt; =A0 =A0Thanks for you help,take care!&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; You have a typo in that line. You have a space between snr&lt;br&gt;
&amp;gt; &amp;gt; and _in_ dB:&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; snr _in_ dB =3D 0:1:15; wrong, space after snr&lt;br&gt;
&amp;gt; &amp;gt; snr_in_ dB =3D 0:1:15; %Correct, no space after snr- Hide quoted text -&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; - Show quoted text -- Hide quoted text -&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; - Show quoted text -- Hide quoted text -&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; - Show quoted text -&lt;br&gt;
&amp;gt; </description>
    </item>
    <item>
      <pubDate>Sun, 10 Apr 2011 20:50:04 -0400</pubDate>
      <title>Re: MC-CDMA simulation using Matlab</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/166157#830388</link>
      <author>mohamed abourafia</author>
      <description>hi, &lt;br&gt;
&lt;br&gt;
i am trying to run the code you provided for MC-CDMA. but it won't work. gives an error massege for syntax belows. is there a missing file should work with this code?&lt;br&gt;
( : ??? Undefined function or method 'code_matrix' for input arguments&lt;br&gt;
of type 'double'.&lt;br&gt;
&lt;br&gt;
Error in ==&amp;gt; Untitled2 at 22&lt;br&gt;
code_mat=code_matrix(N,'hada_11'); )&lt;br&gt;
&lt;br&gt;
% Calling of function for code matrix&lt;br&gt;
code_mat=code_matrix(N,'hada_11');&lt;br&gt;
&lt;br&gt;
% Calling function for weight matrix&lt;br&gt;
&amp;nbsp;[weight_mat,diag_h]=weight_mat(N,'awgn');&lt;br&gt;
&amp;nbsp;&lt;br&gt;
thanks for your help,</description>
    </item>
  </channel>
</rss>

