spread.m
上传用户:m_sun_001
上传日期:2014-07-30
资源大小:1115k
文件大小:1k
源码类别:

matlab例程

开发平台:

Matlab

  1. % Program 5-7
  2. % spread.m
  3. %
  4. % Data spread function
  5. %
  6. % Programmed by M.Okita and H.Harada
  7. %
  8. function [iout, qout] = spread(idata, qdata, code1)
  9. % ****************************************************************
  10. %   idata   : ich data sequcence
  11. %   qdata   : qch data sequcence
  12. %   iout    : ich output data sequence
  13. %   qout    : qch output data sequence
  14. %   code1    : spread code sequence
  15. % ****************************************************************
  16. switch nargin
  17. case { 0 , 1 }
  18.     error('lack of input argument');
  19. case 2
  20.     code1 = qdata;
  21.     qdata = idata;
  22. end
  23. [hn,vn] = size(idata);
  24. [hc,vc] = size(code1);
  25. if hn > hc
  26.     error('lack of spread code sequences');
  27. end
  28. iout = zeros(hn,vn*vc);
  29. qout = zeros(hn,vn*vc);
  30. for ii=1:hn
  31.     iout(ii,:) = reshape(rot90(code1(ii,:),3)*idata(ii,:),1,vn*vc);
  32.     qout(ii,:) = reshape(rot90(code1(ii,:),3)*qdata(ii,:),1,vn*vc);
  33. end
  34. %******************************** end of file ********************************