i am getting an error "Index exceeds the number of array elements (2).", please can someone correct it. thanks in advance

1 vue (au cours des 30 derniers jours)
K=2;
r=0.75;
tau=1-(K/T);
L=1;
N=K;
t=100;
L=1;
N=K;
t=100;
Z=1;
T=100;
Pt=0.199;
Pb=0.6;
NoAntenna=[5 10 15 20 25 30 35 40 45 50];
Slul=0;
phi22=0;
a=zeros(L,L,N);
b=zeros(L,L,N);
c1=zeros(1,T);
c2=zeros(1,T);
c3=zeros(1,T);
c4=zeros(1,T);
c5=zeros(1,T);
c6=zeros(1,T);
c7=zeros(1,T);
c8=zeros(1,T);
c9=zeros(1,T);
c10=zeros(1,T);
for S=1:T
phi1=zeros(N,L);
phi2=zeros(N,L);
phi3=zeros(N,L);
phi4=zeros(N,L);
d=(poissrnd(r,L,N,L))/1000;
B=10.^(-13.9 - 3.5*log(d) + 0.8*randn(L,N,L));
G=10.^(-13.9 - 3.5*log(d) + 0.8*randn(L,N,L));
for k=1:N
for g=1:L
for z=1:L
Slul=Slul+Pt*t*B(g,k,z);
end
b(:,g,k)=B(:,k,g)/sqrt((1+Slul));
g=g+1;
end
Slul=0;
k=k+1;
end
for k=1:N
a(:,:,k)=inv(b(:,:,k));
k=k+1;
end
M=NoAntenna(1);
c1(S)=tau*log(2)*(1+Pb*b(M-2));
M=NoAntenna(2);
c2(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(3);
c3(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(4);
c4(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(5);
c5(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(6);
c6(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(7);
c7(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(8);
c8(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(9);
c9(S)=tau*log(2)*(1+Pt*b(M-2));
M=NoAntenna(10);
c10(S)=tau*log(2)*(1+Pt*b(M-2));
end
c=[sum(c1) sum(c2) sum(c3) sum(c4) sum(c5)...
sum(c6) sum(c7) sum(c8) sum(c9) sum(c10)]./T

Réponse acceptée

Walter Roberson
Walter Roberson le 14 Août 2020
d=(poissrnd(r,L,N,L))/1000;
d is fairly likely to have entries that are 0.
B=10.^(-13.9 - 3.5*log(d) + 0.8*randn(L,N,L));
Those 0 entries get log(0) which is infinite, so you start getting nan,and the rest of your calculation gets ruined.
b(M-2)
b only has 2 elements but M is 5. Is it possible you want to multiply b by M-2 instead of indexing b and M-2 ?

Plus de réponses (0)

Catégories

En savoir plus sur Robust Control Toolbox dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by