showing error " Array indices must be positive or logical values"
5 views (last 30 days)
Show older comments
clc
clear all
N=2;
c=linspace(0.035,0.010,21)
r=linspace(0.0001,1,21)
thetaroot=15;
thetatip=4;
a=5.7
R=0.35;
theta=(thetaroot+(r.*(thetatip-thetaroot)))./57.3
sigma=(N.*c(i))./(pi.*R)
lambda=sigma.*a((sqrt(1+32.*theta.*r)./(sigma(i).*a))-1)
1 Comment
VBBV
on 4 Apr 2024
Moved: VBBV
on 5 Apr 2024
i & j are complex quantities in Matlab, if you use it as index without assigning any value to them would give such error, since Matlab uses 1 based positive integer indexing
clc
clear all
N=2;
c=linspace(0.035,0.010,21);
r=linspace(0.0001,1,21);
thetaroot=15;
thetatip=4;
a=5.7;
R=0.35;
theta=(thetaroot+(r.*(thetatip-thetaroot)))./57.3;
sigma=(N.*c)./(pi.*R) % i & j are complex quantities in Matlab
lambda=sigma.*a((sqrt(1+32.*theta.*r)./(sigma.*a))-1) % same in this line
Answers (2)
Torsten
on 4 Apr 2024
Edited: Torsten
on 4 Apr 2024
lambda=sigma.*a.*((sqrt(1+32.*theta.*r)./(sigma(i).*a))-1)
instead of
lambda=sigma.*a((sqrt(1+32.*theta.*r)./(sigma(i).*a))-1)
And since "i" is undefined, c(i) and thus sigma(i) are empty.
2 Comments
Image Analyst
on 4 Apr 2024
If this Answer solves your original question, then could you please click the "Accept this answer" link to award the answerer with "reputation points" for their efforts in helping you? They'd appreciate it. Thanks in advance. 🙂 Note: you can only accept one answer (so pick the best one) but you can click the "Vote" icon for as many Answers as you want. Voting for an answer will also award reputation points.
Image Analyst
on 4 Apr 2024
Moved: VBBV
on 5 Apr 2024
See the FAQ for a thorough discussion of the error:
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!