?? rand_gen.m
字號:
function Data = rand_gen(NumCarr,MQAM,NumSymb,State)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% rand_gen_mul Generates random data symbol to be transmitted %
% Primitive: Data = rand_gen(NumCarr,MQAM,NumSymb,State) %
% Argument: NumCarr-----Number of Carriers; %
% MQAM--------Wordsize of I,Q subchannel; %
% NumSymb-----Number of symbols to be generated %
% State-------Random generator state para,so as to generate the same data %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
switch nargin
case 1
MQAM = 4;
NumSymb = 1;
case 2
NumSymb = 1;
case 3
case 4
PrevState = rand('state');
rand('state',State);
otherwise
errordlg('Invalid arguments','Error');
end
switch MQAM
case 4
Range = [0,1];
case 16
Range = [-1,2];
case 64
Range = [-3,4];
otherwise
errordlg('Input M-QAM invalid','Input Error');
end
DataI = 2*randint(NumSymb,NumCarr,Range)-1;
DataQ = 2*randint(NumSymb,NumCarr,Range)-1;
Data = DataI+i*DataQ;
if nargin ==4
rand('state',PrevState)
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -