필터 지우기
필터 지우기

Simple Counter Problem using (i+1)

조회 수: 1 (최근 30일)
bugatti79
bugatti79 2014년 7월 19일
답변: Jan 2014년 7월 19일
Hi Folks,
I have an excel 1 column 906 rows which i call into this script. I want to get the difference between the i+1 row and the ith row, ie B6-B5, B7-B6 all the way down the column. The problem is when i run into the last row i get the following error
"??? Attempted to access t(907); index out of bounds because numel(t)=906."
I suspect this is a classical problem with counters but i dont know a workaround. Thanks
Here is my script. The problem is the 2nd line "dt"
for i=1:906;
dt(i+1)=t(i+1)-t(i);
dT(i)=dt(i+1)*(P_loss(i)-h*As*(T_Oil(i)-T_amb(i)))/(ma*Cp);
T_final(i)=(T_Oil(i)+dT(i));
end

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2014년 7월 19일
change your for loop
for i=1:906-1;

추가 답변 (1개)

Jan
Jan 2014년 7월 19일
Or more Matlabish without a loop:
dt = diff(t);
dT = dt .* (P_loss(1:905) - h*As*(T_Oil(1:905) - T_amb(1:905))) ./ (ma*Cp);
T_final = T_Oil(1:905) + dT;

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by