I need help with fixing the error in my for loop equation
Show older comments
Please how do I fix the error message: Attempted to access ID(3); index out of bounds because numel(ID)=2.
I am trying to get a sum of all the iteration (H) from the code below: The error is somewhere in the formula for H but I am not able to fix it.
i= input('Number of Layers = '); % Say i=4
for n=1:i
ID(n)= input(['Layer ' , num2str(n) , ' Internal Diameter (m)= ']);
OD(n)= input(['Layer ' , num2str(n) , ' Outer Diameter (m)= ']);
k_L(n)= input(['Thermal Conductivity of Layer ' , num2str(i) , '(W/(m*K))= ']);
*H= ID(1)*sum((log(ID(n+1)/ID(n))/(2*k_L(n))))* ;
%D(1) is the innermost pipe layer which is ID at n=1
end
The formula for H is given below.

Accepted Answer
More Answers (1)
Jos (10584)
on 7 Apr 2015
You want to put the formula for H out of the loop
for ..
% ask for values here
end
% summing formula here
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!