Sửa giúp mình đoạn code này với!!!

  • Thread starter Aichan
  • Ngày mở chủ đề
A

Aichan

Author
Mình có bài tập sau, yêu cầu sửa lại chỗ sai nhưng mò mãi không xong. Ai giúp mình với nhé, cảm ơn nhiều! :1::

% OP theory
format long
clear all
clc
P_db = 25:5:60;
P = 10.^(P_db./10);
R = 3;
K = 4;
l1 = 1;
l2 = 1;
opns = zeros(1,length(P));
opos = zeros(1,length(P));
opmm = zeros(1,length(P));
opmsl = zeros(1,length(P));
opmsu = zeros(1,length(P));
for idx = 1:0.1:length(P)
t0 = 1 - exp(-(2.^(4.*R)-1)./P(idx)).*(((2.^(4.*R))-(2.^(2.*R+1))+1)./P(idx) + 1);
t1 = t0.^K;
opns(idx) = opns(idx) + t0; % Non selection
opos(idx) = opos(idx) + t1; % Optimal Selection
%
eta0 = (2.^(2.*R)-1)./P(idx);
eta1 = (2.^(4.*R)-1)./P;
t3 = 1 - exp(-(eta1-eta0)).*((1-exp(-eta0)).^K);
t4 = 1 - exp(-(eta1-eta0)) - K.*exp(-eta1).*(eta1-eta0);
t5 = 0;
for mm = 2:K
t6 = nchoosek(K,mm).*((-1).^(mm)).*(1./(mm-1))
t7 = exp(-eta1.*(mm-1)) - exp(-eta0.*(mm-1))
t8 = t6.*t7;
t5 = t5 + t8;
end
t9 = t5.*exp(-eta1);
t10 = t4 - t9;
t11 = t3 - t10;
t12 = 1 - t11;
opmm = opmm + t12; % Max-Min
%
t20 = (0.5).*exp(-eta0./2);
t21 = (0.5).*(1-((1-exp(-eta0(idx)) - eta0.*exp(-eta0) ).^K ));
t22 = t20 + t21;
t23 = 1 - t22;
opmsl(idx) = opmsl(idx) + t23; % Max -Sum Lower Bound
%
t24 = 1 - exp(-2.*eta0).(1-((1-exp(-eta1) - eta1.*exp(-eta1) ).^K ));
opmsu(idx) = opmsu(idx) + t24; % Max - Sum Upper Bound
end
%
semilogy(P_db,opns,P_db,opos,P_db,opmm,P_db,opmsl,P_db,opmsu)
grid on
xlabel('\mathcal{P} [dB]')
ylabel('Outage Probability')
legend('Non-selection (Simulation)')
 
A

Aichan

Author
Ðề: Sửa giúp mình đoạn code này với!!!

cái chỗ mặt cười là 25:5:60 nha
 
Ðề: Sửa giúp mình đoạn code này với!!!

Bạn chạy xem nó báo lỗi gì thì gõ lỗi lên đây ( lỗi là dòng báo màu đỏ đó ).
 
Top