stuff from 400G analysis (project deliv 01)
This commit is contained in:
68
projects/IMDD_base_system/analyze_burg.m
Normal file
68
projects/IMDD_base_system/analyze_burg.m
Normal file
@@ -0,0 +1,68 @@
|
||||
% basePath = 'C:\Users\Silas\Documents\MATLAB\Datensätze\sioe_labor\';
|
||||
% db = DBHandler("pathToDB",[basePath,'silas_labor.db']);
|
||||
if 0
|
||||
|
||||
uloops = struct;
|
||||
uloops.precomp = [0];
|
||||
uloops.db_precode = [0];
|
||||
uloops.bitrate = [330,390,450].*1e9; %[300,330,360,390,420,450,480]
|
||||
uloops.laser_wavelength = [1310];
|
||||
uloops.M = [4];
|
||||
uloops.link_length = [2]; % 1,2,3,5,6,8,10
|
||||
%uloops.alpha = [0:0.1:1];
|
||||
|
||||
wh = DataStorage(uloops);
|
||||
wh.addStorage("ber");
|
||||
|
||||
wh = submit_simulations(wh,"parallel",1,"simulation_mode",0);
|
||||
|
||||
end
|
||||
|
||||
col = cbrewer2('spectral',6);%
|
||||
col=linspecer(5);
|
||||
|
||||
cnt = 1;
|
||||
for br = uloops.bitrate
|
||||
a = wh_burg.getStoValue('ber',uloops.precomp, uloops.db_precode, br , uloops.laser_wavelength, uloops.M, uloops.link_length);
|
||||
ber_mlse = cellfun(@(x) x.vnle_pf_package{1,1}.ber_mlse, a);
|
||||
alpha = cellfun(@(x) x.vnle_pf_package{1,1}.pf.coefficients, a,'UniformOutput', false);
|
||||
figure(23)
|
||||
hold on
|
||||
scatter(alpha{1}(2),ber_mlse,100,'MarkerEdgeColor',col(cnt,:),'Marker','x','LineWidth',2,'HandleVisibility','off');
|
||||
cnt = cnt+1;
|
||||
end
|
||||
|
||||
|
||||
|
||||
cnt = 1;
|
||||
alpha = [];
|
||||
|
||||
for br = uloops.bitrate
|
||||
|
||||
a = wh_alphas.getStoValue('ber',uloops.precomp, uloops.db_precode, br , uloops.laser_wavelength, uloops.M, uloops.link_length, [0:0.1:1]);
|
||||
ber_mlse = cellfun(@(x) x.vnle_pf_package{1,1}.ber_mlse, a);
|
||||
|
||||
x_ax = [0:0.1:1];
|
||||
|
||||
figure(23)
|
||||
hold on
|
||||
% title(sprintf('%d km | %d nm | PAM %d',uloops.link_length,wavelength,uloops.M));
|
||||
plot(x_ax,ber_mlse,'DisplayName',sprintf(' %d GBps PAM 4',br.*1e-9),'LineStyle','-','HandleVisibility','on','Color',col(cnt,:));
|
||||
|
||||
xticks(x_ax);
|
||||
set(gca, 'YScale', 'log');
|
||||
ylim([1e-5 0.4]);
|
||||
xlim([min(x_ax), max(x_ax) ]);
|
||||
yline([3.8e-3, 2e-2],'HandleVisibility','off');
|
||||
legend
|
||||
beautifyBERplot();
|
||||
xlabel('Channel $\alpha$');
|
||||
ylabel('BER');
|
||||
|
||||
cnt = cnt+1;
|
||||
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user