- plot raw H
- plot FAC syms

[CalcWiener]
- added sigma to PHI
- fixed fd_max and tau_max


git-svn-id: http://moon:8086/svn/matlab/trunk@47 801c6759-fa7c-4059-a304-17956f83a07c
This commit is contained in:
2015-05-01 09:57:24 +00:00
parent b6e651271f
commit 248acd843e
2 changed files with 57 additions and 31 deletions
+15 -3
View File
@@ -5,6 +5,11 @@ function W_syms = calcWiener(drm_mode, drm_bw)
N = params.nu
sigm = 10^(-14/10);
Ns = (params.nu+params.ng);
Nu = (params.nu);
Ng = (params.ng);
frames_per_window = 2*params.y
window_delay = params.y
num_symbols_per_frame = params.nspf
@@ -12,18 +17,23 @@ num_carrier_per_symbol = spec_occ.kmax - spec_occ.kmin
num_symbols_per_frame = num_symbols_per_frame * num_carrier_per_symbol
% PHI = auto-covariance-matrix
f_cut_t = 0.0675*1/window_delay; % two-sided maximum doppler frequency (normalized w.r.t symbol duration Ts)
f_cut_k = 1.75*params.ng/params.nu; % two-sided maximum echo delay (normalized w.r.t useful symbol duration Tu)
f_cut_t = 0.0675*1/params.y % two-sided maximum doppler frequency (normalized w.r.t symbol duration Ts)
f_cut_k = 1.75*Ng/Nu % two-sided maximum echo delay (normalized w.r.t useful symbol duration Tu)
f_D_max = f_cut_t*12000/Ns/2
tau_max = f_cut_k*Nu/12000/2
W_syms = cell( params.y, 1 );
for d=0:window_delay-1
k2_pos = [];
t2_pos = [];
ref_gain_a = [];
for s=0:frames_per_window-1
[c, p, a] = getRefGain(params, spec_occ, s+d);
k2_pos = [k2_pos c]; % length = window_delay*frames_per_window
t2_pos = [t2_pos ones(1, length(c))*(s)]; % length = window_delay*frames_per_window
ref_gain_a = [ref_gain_a a];
end
PHI = zeros(length(k2_pos));
@@ -34,7 +44,9 @@ for d=0:window_delay-1
t1_pos = t2_pos(k1);
PHI(k1,k2) = sinc(f_cut_k*(k1_pos-k2_pos)) .* sinc(f_cut_t*(t1_pos-t2_pos));
end
PHI_inv = inv(PHI + eye(length(PHI))*sigm);
PHI = PHI + sigm*diag(2./(ref_gain_a.^2));
PHI_inv = inv(PHI);
THETA = zeros(1, length(k2_pos));
% THETA