Index exceeds matrix dimensions error

for i=1:6
w(1)=w_o;
Vmean(i) = sqrt ((w(i)-V*sind(alpha))^2 + (V*cosd(alpha))^2);
w(i) = T / (2*rho*A*Vmean(i))
end
Hey, i'm trying to do an iterative process with the 2 equations above until my w value converges, when using this for loop, i keep getting an "index exceeds matrix dimensions" error when i try and run it. would appreciate some help, and maybe some tips on maybe a better way to do the iteration, because ideally i think a while loop would be better but i didn't know how to go about it. Thanks in advance.

답변 (2개)

James Tursa
James Tursa 2018년 5월 29일
편집: James Tursa 2018년 5월 29일

0 개 추천

You can get this error if numel(w)<6, so I would check that first.
the cyclist
the cyclist 2018년 5월 29일
편집: the cyclist 2018년 5월 29일

0 개 추천

I am guessing that the variable w does not exist until you create it using the line
w(1)=w_o;
Therefore, w is a vector with one element.
On the second pass through that loop, you then try to access that one-element vector with
w(2)
but there is no second element, so you get that error.
It looks like there might be some other fundamental errors with your code, but it is difficult to know exactly what you intend to do, so it is difficult to give advice.

이 질문은 마감되었습니다.

제품

릴리스

R2016b

태그

질문:

2018년 5월 29일

마감:

2021년 8월 20일

Community Treasure Hunt

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

Start Hunting!

Translated by