Array indices must be positive integers or logical values.ERROR

1 次查看(过去 30 天)
for d=0:5:50
Pl=40*log(d)-(10*log(gt)+10*log(gr_s)+20*log(ht)+20*log(hr));
Rss= pt+gt+gr_s-L50-L;
SNIR= Rss/n+I;
c=B*log(1+SNIR);
throuput1=(c(B*log(1+SNIR)));
end

回答(2 个)

Walter Roberson
Walter Roberson 2019-11-12
c(B*log(1+SNIR)) is a request to index the variable c at the computed value. MATLAB does not have any implicit multiplication: if you want multiplication you need the * or .* operator.

David Hill
David Hill 2019-11-12
throuput1=(c*(B*log(1+SNIR)));%I think you left out a * (c*...) otherwise you are trying to index into c
Also, log(0) will be -inf. Do you want to start out at d=0?

类别

Help CenterFile Exchange 中查找有关 Time Series Collections 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by