%% current = 225:10:285; current = string(current); power = [28.02, 33.2, 37.5, 42.3, 46.3, 49.3, 53.4]; power = string(power); num_pf_coeff = 4; taps_ffe = [300, 0, 0]; taps_dfe = [0, 0, 0]; M = 4; trlength = 4096*4; x = 225:10:285; BER_PAM_4 = []; BER_num_signal_sweep = []; BER_num_signal_sweep_matrix = []; filter_length = 210; our_signal = 1; idx_opt = []; for eq_method = 1:4 for j = 1:length(power) for num_signal_sweep = 1:15 BER_run = first_analysis_ber(current(j), power(j), num_pf_coeff, taps_ffe, taps_dfe, M, trlength, eq_method, filter_length, num_signal_sweep, our_signal); BER_num_signal_sweep = [BER_num_signal_sweep, BER_run]; end [BER_opt, num_signal_opt] = min(BER_num_signal_sweep); BER_PAM_4 = [BER_PAM_4, BER_opt]; idx_opt = [idx_opt, num_signal_opt]; BER_num_signal_sweep_matrix = [BER_num_signal_sweep_matrix; BER_num_signal_sweep]; BER_num_signal_sweep = []; end save('C:\Users\magf\Desktop\Desktop\Projekte\FSO\Data\BER_PAM_4_Optimal' + string(eq_method) + '.mat', 'BER_PAM_4', 'BER_num_signal_sweep_matrix', 'idx_opt') BER_PAM_4 = []; idx_opt = []; end %% for k = 1:4 BER = load('C:\Users\magf\Desktop\Desktop\Projekte\FSO\Data\BER_PAM_4_Optimal' + string(k) + '.mat'); BER_values = BER.BER_PAM_4; figure(202120) plot(x, BER_values, '-o','LineWidth',1.75); hold on end % old_BER = [-1.6, -1.85, -2.2, -2.45, -2.3, -2, -1.4]; % old_BER = 10.^(old_BER); % plot(x, old_BER, '-o','LineWidth',1.75) h1 = yline(2e-2, ':k', 'LineWidth',1.5); h2 = yline(3.8e-3,':b', 'LineWidth',1.5); h3 = yline(4.85e-3,':g', 'LineWidth',1.5); h4 = yline(2.2e-4,':r', 'LineWidth',1.5); % Legende NUR für Kurven legend('FFE', 'FFE+PF+MLSE', 'DB', 'ML-MLSE', 'BER Paper', ... 'Interpreter','latex', ... 'Location','northwest', 'FontSize', 14) % FEC Labels direkt im Plot text(23,2.6e-2,'o-FEC','Color','k','FontSize', 14, 'Interpreter','latex') text(23,2.6e-3,'HD-FEC','Color','b','FontSize', 14, 'Interpreter','latex') text(23.5,6.5e-3,'KP4+Hamming','Color','g','FontSize', 14,'Interpreter','latex') text(23,1.4e-4,'KP4','Color','r','FontSize', 14,'Interpreter','latex') xlabel('Laser Bias Current [mA]', 'Interpreter','latex', 'FontSize', 14) ylabel('BER', 'Interpreter','latex', 'FontSize', 14) % title('BER for PAM-4', 'Interpreter','latex') grid minor ylim([1e-4 5e-1]) set(gca,'YScale','log') % beautifyBERplot hold off