📄 integer_freq_offset_fin_timing_estimate.m
字号:
function [fin_timing_offset,integer_freq_offset]=integer_freq_offset_fin_timing_estimate(N,L,coarse_fft_data,phase_reference_symbol);
sum0=0;
sum=[];
max_sum=[];
integer_freq_offset=[];
reverse_modulation=[];
max_freq_offset=[];
coarse_fft_data_temp=[coarse_fft_data 0];
offset=60;
% sum(1,1)=0;
for i=1:1;
for d=-offset:offset;
for k=1:N;
m=mod(k+d,N);
if m==0;
sum0=sum0+conj(phase_reference_symbol(1,k))*coarse_fft_data_temp(i,m+1);
reverse_modulation(i,k)=conj(phase_reference_symbol(1,k))*coarse_fft_data_temp(i,m+1); %reverse modulation
else
sum0=sum0+conj(phase_reference_symbol(1,k))*coarse_fft_data_temp(i,m);
reverse_modulation(i,k)=conj(phase_reference_symbol(1,k))*coarse_fft_data_temp(i,m);
end;
end;
sum(i,d+offset+1)=sum0;
sum0=0;
[max_tf(i,d+offset+1),max_tf_offset(i,d+offset+1)]=ifft_reverse_modulation(N,reverse_modulation(i,:));
end;
max_temp(i)=max((max_tf(i,:)));
for l=1:length(max_tf);
if max_temp(i)==max_tf(i,l);
integer_freq_offset(i)=l-offset-1;
fin_timing_offset(i)=max_tf_offset(i,l)-1;
end;
end;
end;
%plot([-offset:offset],abs(sum(1,1:2*offset+1)));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -