freq_offset_compensate.m

来自「用Matlab实现空时分组编码对其MIMO系统性能进行分析得出理想的结果」· M 代码 · 共 44 行

M
44
字号
function [quad_comp, inphase_comp, theta]=freq_offset_compensate(quad,inphase)%   %   %   Short Theoretical Background for the Function:%   %   Compensating for rotation on symbols.%   Assuming rotation is less than one circle!!!!!!%   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     %%% Function part of simulation for Space-Time%%% coding project, group Grey-2001.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   Author: SU%   Date: %   Version: %   Revision (Name & Date & Comment):%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%K = 100;            % mean-window-length, nr of symbolscomplex_signal_in = complex(inphase, quad);figure(6), plot(angle(complex_signal_in))fi = angle(complex_signal_in);fi = fi(2000:4000);                           % Study only first third part of data if phase-shift is greater than 2*pi.A = [[1:length(fi)]' ones(length(fi),1)];         % Solving least-square for straight-line equationy = fi';x = A\y                                                 % x = A\y, d鋜 x = [k m]'first_angle = x(2)end_angle   = x(1)*length(fi)+x(2)theta       = (end_angle - first_angle)delta_theta = abs(theta/length(fi))     % Angle-change per symbol.a = 0:(length(complex_signal_in)-1);rotation_vector = exp(-j*a*delta_theta);                               % Rotation compensating vector.complex_signal_out = rotation_vector .* complex_signal_in;quad_comp = real(complex_signal_out);inphase_comp = imag(complex_signal_out);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?