Index exceeds problem in line 19

3 views (last 30 days)
Aiman Lutf
Aiman Lutf on 25 Mar 2021
Answered: darova on 25 Mar 2021
clear all
close all
Nn=60;
Tn=0.5*10^-3;
B0=1*10^3;
Lambda=50; %(50,100)
Cn=10:40:300;
for i = 1:20
for n=1:20
%Dr(n)=Lambda*testQ;
Q1=Nn*Tn*B0*Cn(i)-Lambda+(log(Nn*Tn*B0))/2
Q2= log10(exp(1))*sqrt(Nn*Tn*B0)
Qf= qfunc(Q1/Q2)
Dr(n)=Lambda*(1- Qf)/(Nn*B0);
end
Dr_s(i)=sum(Dr(n));
end
figure;
plot(Cn,Dr_s)
grid on
I have a problem in line 19 with Q1, the message is index exceeds the number of array elements (8). can anyone help me with that.

Answers (2)

DGM
DGM on 25 Mar 2021
It means exactly what it says. You've defined Cn as a 1x8 vector, then you are trying to reference its i-th element, where i is an index from 1-20. Cn does not have any more than 8 elements.

darova
darova on 25 Mar 2021
Cn uses index i
i loops through 1:20, but Cn has only 8 elements

Products

Community Treasure Hunt

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

Start Hunting!