www.gusucode.com > DS-cdma仿真matlab程序 > code8/cdma/fade.m

    %***********************************************************
%        This mfunction generates faded envelope and phase 
%        corresponding to Rayleigh fading
%
%        AUTHOR: Wenbin Luo
%        DATE  : 04/27/01
%
%        FUNCTION SYNOPSIS: 
%        [env,phi] = fade(L,para)
% 
%        Parameter Description: 
%        L          :   number of samples needed  
%        variance   :   variance 
%**********************************************************
function [env,phi] = fade(L,variance)
%  Error check
if variance <= 0
   error('Positive variance needed')
elseif nargin ~= 2
   error('Insufficient input parameters')
end
%  Generate bivariate Gaussian uncorrelated 
%  random variables
mu = zeros(1,2);
C = variance*eye(2,2);
r = mvnrnd(mu,C,L);
%  Convert to polar coordinates and compute 
%  magnitude and phase 
z = r(:,1) + j*r(:,2);
env = abs(z); phi = angle(z);
%**********************************************************