changes in pulsef
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
|
||||
|
||||
% 202502211_km_fiber_Pmod_15dBm_P_PD_9p2494dBm_W03C34-0603E03_160GBd_8PAM__20250221T024256.h5
|
||||
|
||||
M = 8;
|
||||
if M == 4
|
||||
@@ -40,7 +40,7 @@ elseif M ==8
|
||||
"20250221T024929",...%172 ohne balun
|
||||
"20250221T025305",...%176 ohne balun
|
||||
};
|
||||
file_codes = {"20250221T004651"};
|
||||
file_codes = {"20250221T024256"};
|
||||
baudrate = [96,112,120,128,136,144,152,160,168,172,176];
|
||||
end
|
||||
|
||||
@@ -48,34 +48,35 @@ if 1
|
||||
|
||||
uloops = struct;
|
||||
uloops.filecode = file_codes;
|
||||
uloops.tcorrect = [0];
|
||||
uloops.mu_dc = [0];
|
||||
wh = DataStorage(uloops);
|
||||
wh.addStorage("ber");
|
||||
|
||||
wh = submit_handle(@dsp_ief_file,wh,"parallel",0);
|
||||
end
|
||||
|
||||
a = wh.getStoValue('ber',uloops.filecode, uloops.tcorrect);
|
||||
|
||||
a = wh.getStoValue('ber',uloops.filecode, uloops.mu_ffe1);
|
||||
|
||||
% get best results per baudrate
|
||||
% ber_vnle_values = cellfun(@(a) cellfun(@(y) y.ber_vnle, a.vnle_package, 'UniformOutput', false), a, 'UniformOutput', false);
|
||||
% best_vnle = cellfun(@(x) min(cell2mat(x)), ber_vnle_values);
|
||||
|
||||
ber_vnle_values = cellfun(@(a) cellfun(@(y) y.ber_vnle, a.vnle_pf_package, 'UniformOutput', false), a, 'UniformOutput', false);
|
||||
ber_vnle_values = cellfun(@(a) cellfun(@(y) y.ber_vnle, a.vnle_package, 'UniformOutput', false), a, 'UniformOutput', false);
|
||||
best_vnle = cellfun(@(x) min(cell2mat(x)), ber_vnle_values);
|
||||
|
||||
ber_mlse_values = cellfun(@(a) cellfun(@(y) y.ber_mlse, a.vnle_pf_package, 'UniformOutput', false), a, 'UniformOutput', false);
|
||||
best_mlse = cellfun(@(x) min(cell2mat(x)), ber_mlse_values);
|
||||
% ber_vnle_values = cellfun(@(a) cellfun(@(y) y.ber_vnle, a.vnle_pf_package, 'UniformOutput', false), a, 'UniformOutput', false);
|
||||
% best_vnle = cellfun(@(x) min(cell2mat(x)), ber_vnle_values);
|
||||
%
|
||||
% ber_mlse_values = cellfun(@(a) cellfun(@(y) y.ber_mlse, a.vnle_pf_package, 'UniformOutput', false), a, 'UniformOutput', false);
|
||||
% best_mlse = cellfun(@(x) min(cell2mat(x)), ber_mlse_values);
|
||||
|
||||
%%% PLOT PARAMETER OPTIMIZATION
|
||||
figure()
|
||||
figure(2)
|
||||
cols = cbrewer2('Set1',6);
|
||||
hold on
|
||||
title(sprintf('%d km | %d nm | PAM %d',1,1313.5,M));
|
||||
xax = uloops.tcorrect;
|
||||
plot(xax,best_vnle,'DisplayName',sprintf('VNLE'),'Color',cols(1,:),'LineStyle','-','HandleVisibility','on');
|
||||
xax = uloops.mu_ffe1;
|
||||
plot(xax,best_vnle,'DisplayName',sprintf('VNLE 50,3,3'),'Color',cols(o,:),'LineStyle','-','HandleVisibility','on');
|
||||
|
||||
plot(xax,best_mlse,'DisplayName',sprintf('VNLE + 1 tap post-filter + MLSE'),'Color',cols(2,:),'LineStyle','-','HandleVisibility','on');
|
||||
% plot(xax,best_mlse,'DisplayName',sprintf('VNLE + 1 tap post-filter + MLSE'),'Color',cols(2,:),'LineStyle','-','HandleVisibility','on');
|
||||
|
||||
% plot(xax,best_db,'DisplayName',sprintf('DB tgt. + MLSE'),'Color',cols(3,:),'LineStyle','-','HandleVisibility','on');
|
||||
|
||||
@@ -85,12 +86,11 @@ xlim([min(xax), max(xax) ]);
|
||||
yline([3.8e-3, 2e-2],'HandleVisibility','off');
|
||||
legend
|
||||
beautifyBERplot()
|
||||
xlabel('Number 1st order taps');
|
||||
xlabel('Adaption speed');
|
||||
ylabel('BER');
|
||||
|
||||
|
||||
|
||||
|
||||
%%% PLOT COMPLETE BAUDRATE
|
||||
figure(20)
|
||||
cols = cbrewer2('Set1',6);
|
||||
|
||||
Reference in New Issue
Block a user