Home > WaveComBox > Toolbox > Channel > Channel_PhaseNoise.m

Channel_PhaseNoise

PURPOSE ^

Simulates the impact of phase noise on the received signal.

SYNOPSIS ^

function [ r ] = Channel_PhaseNoise( s, linewidth, Para )

DESCRIPTION ^

 Simulates the impact of phase noise on the received signal.

 function [ r ] = Channel_ChromaticDispersion( s, L_fiber, D, Para )

 The function works for SISO and MIMO systems.

 Input arguments:

   s: transmit signal. Size: matrix [N, nFrameSamples]

   linewidth: phase noise linewidth [Hz]

   Para: structure containing the modulation parameters.

 Outputs arguments:

   r: received signal impacted by phase noise. Size: matrix [N,
   nFrameSamples]

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [ r ] = Channel_PhaseNoise( s, linewidth, Para )
0002 % Simulates the impact of phase noise on the received signal.
0003 %
0004 % function [ r ] = Channel_ChromaticDispersion( s, L_fiber, D, Para )
0005 %
0006 % The function works for SISO and MIMO systems.
0007 %
0008 % Input arguments:
0009 %
0010 %   s: transmit signal. Size: matrix [N, nFrameSamples]
0011 %
0012 %   linewidth: phase noise linewidth [Hz]
0013 %
0014 %   Para: structure containing the modulation parameters.
0015 %
0016 % Outputs arguments:
0017 %
0018 %   r: received signal impacted by phase noise. Size: matrix [N,
0019 %   nFrameSamples]
0020 %
0021 
0022 % This file is part of WaveComBox: www.wavecombox.com and is distributed under
0023 % the terms of the MIT license. See accompanying LICENSE file.
0024 % Original author: François Rottenberg, May 3, 2018.
0025 % Contributors:
0026 % Change log:
0027 
0028 
0029 T_s = Para.T/Para.nSubcarriers;
0030 sigma_nu_2=2*pi* linewidth *T_s;
0031 
0032 [N, nFrameSamples]=size(s);
0033 r=zeros(N,nFrameSamples);
0034 for index_N=1:N
0035     delta_phase = sqrt(sigma_nu_2)*randn(1, length(s));
0036     phase_noise       = cumsum(delta_phase);
0037     r (index_N,:)= s(index_N,:).*exp(1i.*phase_noise);
0038 end
0039 
0040 end
0041

Generated on Mon 14-Oct-2019 13:48:34 by m2html © 2005