mpi analysis

This commit is contained in:
Silas Oettinghaus
2023-10-09 16:23:06 +02:00
parent 37c3d4e23d
commit 3c2302aec9

View File

@@ -2,7 +2,7 @@
clear; clear;
col = linspecer(6); col = linspecer(6);
foldername = 'C:\Users\Silas\Documents\MATLAB\Labor_Datensatz_PAM4_MPI\pam4_10km_1km'; foldername = '/Users/silasoettinghaus/Documents/MATLAB/Labor_Datensatz_PAM4_MPI/pam4_10km_1km';
allfiles = dir(foldername); allfiles = dir(foldername);
@@ -13,7 +13,7 @@ ber_w_dcremoval = zeros(1,length(allfiles));
mudc = zeros(1,length(allfiles)); mudc = zeros(1,length(allfiles));
parfor i = 1:length(allfiles) for i = 1:length(allfiles)
if allfiles(i).bytes ~= 0 if allfiles(i).bytes ~= 0
current_filename = allfiles(i).name; current_filename = allfiles(i).name;
@@ -49,13 +49,24 @@ parfor i = 1:length(allfiles)
% 2.1) equalize % 2.1) equalize
eq = EQ("K",2,"plottrain",0,"plotfinal",0,... eq = EQ("K",2,"plottrain",1,"plotfinal",1,...
"training_length",4096,"training_loops",4,... "training_length",4096,"training_loops",4,...
"Ne",[50,9,9],"Nb",[2,0,0],... "Ne",[50,9,9],"Nb",[2,0,0],...
"DCmu",0.05,"DDmu",[0.0004 0.0004 0.0004 0.0004 ],"DFEmu",0.005,"FFEmu",0,... "DCmu",0.05,"DDmu",[0.0004 0.0004 0.0004 0.0004 ],"DFEmu",0.005,"FFEmu",0,...
"dd_loops",4,"epsilon",[10 100 1000 ],"M",2,... "dd_loops",4,"epsilon",[10 100 1000 ],"M",2,...
"thres",[0.005 0.004 0.005 ],"l1act",0,"delay",0,"rho",0.0005,"ideal_dfe",0,"DB_aim",0); "thres",[0.005 0.004 0.005 ],"l1act",0,"delay",0,"rho",0.0005,"ideal_dfe",0,"DB_aim",0);
eq = EQ_silas("Ne",[50,9,9],"Nb",[2,0,0],"trainlength",4096,...
"sps",2,...
"mu_dc_dd",0,...
"mu_dc_train",0,...
"mu_ffe_train",0,...
"mu_dfe_train",0.005,...
"mu_ffe_dd",[0.0004 0.0004 0.0004],...
"mu_dfe_dd",0.005,...
"ddloops",3,...
"trainloops",4,...
"dcmode",1);
[Eq_out] = eq.process(y_rx,y_digimod); [Eq_out] = eq.process(y_rx,y_digimod);
@@ -92,12 +103,12 @@ for r = 1:length(rate)
a = [parsir(parfsym==rate(r));ber_wo_reduction(parfsym==rate(r))]; a = [parsir(parfsym==rate(r));ber_wo_reduction(parfsym==rate(r))];
a=sort(a,2); a=sort(a,2);
plot(a(1,:),a(2,:),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; w/o reduction'],'LineWidth',2,'Marker','o','MarkerSize',3); plot(a(1,:),a(2,:),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; w/o reduction'],'LineWidth',2,'Marker','o','MarkerSize',3);
%scatter(parsir(parfsym==rate(r)),ber_wo_reduction(parfsym==rate(r)),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; w/o reduction'],'LineWidth',2,'Marker','o') %scatter(parsir(parfsym==rate(r)),ber_wo_reduction(parfsym==rate(r)),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; w/o reduction'],'LineWidth',2,'Marker','o')
hold on hold on
b = [parsir(parfsym==rate(r));ber_w_dcremoval(parfsym==rate(r))]; b = [parsir(parfsym==rate(r));ber_w_dcremoval(parfsym==rate(r))];
b=sort(b,2); b=sort(b,2);
plot(b(1,:),b(2,:),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; adaptive DC removal'],'LineWidth',2,'Marker','+','MarkerSize',3); plot(b(1,:),b(2,:),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; adaptive DC removal'],'LineWidth',2,'Marker','+','MarkerSize',3);
%scatter(parsir(parfsym==rate(r)),ber_w_dcremoval(parfsym==rate(r)),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; adaptive DC removal'],'LineWidth',2,'Marker','+'); %scatter(parsir(parfsym==rate(r)),ber_w_dcremoval(parfsym==rate(r)),'DisplayName',[num2str(rate(r).*1e-9),' GBd; PAM4; adaptive DC removal'],'LineWidth',2,'Marker','+');
end end
set(gca, 'YScale', 'log') set(gca, 'YScale', 'log')
yline(3.8e-3,'LineWidth',1.5); yline(3.8e-3,'LineWidth',1.5);