📄 tx_diversity3.m
字号:
%用于4*4天线情况
%2005年5月11日修改
function syms_out = tx_diversity2(symbols)%需要修改
%if sim_options.UseTxDiv
% Radon-Hurwitz or Alamouti tx diversity
%symbols
num_symbols = length(symbols);
ant1_syms = zeros(1, 2*num_symbols);
ant2_syms = zeros(1, 2*num_symbols);
ant3_syms = zeros(1, 2*num_symbols);
ant4_syms = zeros(1, 2*num_symbols);
% unchanged symbols
ant1_syms(:,1:8:2*num_symbols) = symbols(:,1:4:num_symbols);
ant2_syms(:,1:8:2*num_symbols) = symbols(:,2:4:num_symbols);
ant3_syms(:,1:8:2*num_symbols) = symbols(:,3:4:num_symbols);
ant4_syms(:,1:8:2*num_symbols) = symbols(:,4:4:num_symbols);
ant1_syms(:,2:8:2*num_symbols) = -symbols(:,2:4:num_symbols);
ant2_syms(:,2:8:2*num_symbols) = symbols(:,1:4:num_symbols);
ant3_syms(:,2:8:2*num_symbols) = -symbols(:,4:4:num_symbols);
ant4_syms(:,2:8:2*num_symbols) = symbols(:,3:4:num_symbols);
ant1_syms(:,3:8:2*num_symbols) = -symbols(:,3:4:num_symbols);
ant2_syms(:,3:8:2*num_symbols) = symbols(:,4:4:num_symbols);
ant3_syms(:,3:8:2*num_symbols) = symbols(:,1:4:num_symbols);
ant4_syms(:,3:8:2*num_symbols) = -symbols(:,2:4:num_symbols);
ant1_syms(:,4:8:2*num_symbols) = -symbols(:,4:4:num_symbols);
ant2_syms(:,4:8:2*num_symbols) = -symbols(:,3:4:num_symbols);
ant3_syms(:,4:8:2*num_symbols) = symbols(:,2:4:num_symbols);
ant4_syms(:,4:8:2*num_symbols) = symbols(:,1:4:num_symbols);
% transformed symbols
ant1_syms(:,5:8:2*num_symbols) = conj(symbols(:,1:4:num_symbols));
ant2_syms(:,5:8:2*num_symbols) = conj(symbols(:,2:4:num_symbols));
ant3_syms(:,5:8:2*num_symbols) = conj(symbols(:,3:4:num_symbols));
ant4_syms(:,5:8:2*num_symbols) = conj(symbols(:,4:4:num_symbols));
ant1_syms(:,6:8:2*num_symbols) = -conj(symbols(:,2:4:num_symbols));
ant2_syms(:,6:8:2*num_symbols) = conj(symbols(:,1:4:num_symbols));
ant3_syms(:,6:8:2*num_symbols) = -conj(symbols(:,4:4:num_symbols));
ant4_syms(:,6:8:2*num_symbols) = conj(symbols(:,3:4:num_symbols));
ant1_syms(:,7:8:2*num_symbols) = -conj(symbols(:,3:4:num_symbols));
ant2_syms(:,7:8:2*num_symbols) = conj(symbols(:,4:4:num_symbols));
ant3_syms(:,7:8:2*num_symbols) = conj(symbols(:,1:4:num_symbols));
ant4_syms(:,7:8:2*num_symbols) = -conj(symbols(:,2:4:num_symbols));
ant1_syms(:,8:8:2*num_symbols) = -conj(symbols(:,4:4:num_symbols));
ant2_syms(:,8:8:2*num_symbols) = -conj(symbols(:,3:4:num_symbols));
ant3_syms(:,8:8:2*num_symbols) = conj(symbols(:,2:4:num_symbols));
ant4_syms(:,8:8:2*num_symbols) = conj(symbols(:,1:4:num_symbols));
syms_out = zeros(4, 2*length(symbols));
syms_out(1,:) = ant1_syms(:).';
syms_out(2,:) = ant2_syms(:).';
syms_out(3,:) = ant3_syms(:).';
syms_out(4,:) = ant4_syms(:).';
%else
% No diversity
%div_ofdm_syms = ofdm_symbols;
%end
clear num_symbols
clear ant1_syms
clear ant2_syms
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -