Effacer les filtres
Effacer les filtres

Simple Counter Problem using (i+1)

1 vue (au cours des 30 derniers jours)
bugatti79
bugatti79 le 19 Juil 2014
Réponse apportée : Jan le 19 Juil 2014
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

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 19 Juil 2014
change your for loop
for i=1:906-1;

Plus de réponses (1)

Jan
Jan le 19 Juil 2014
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;

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by