How do I fix this error: In an assignment A(I) = B, the number of elements in B and I must be the same!!!

3 ビュー (過去 30 日間)
Hi all,
I am very new to Matlab and I am trying to define a variable V to be any number >=700 within the following for loop:
for i = 1:29
disp(i) = norm([p1(1,i+1),p1(2,i+1)]-[p1(1,i),p1(2,i)])*1000;
V = randn(1x29);
v >= 700;
CL(i) = (W(i).*g)./(0.5*density*(V.^2)*S);
CD(i) = CDo + ((CL(i).^2)/(3.14*AR*e));
T = ((CD(i)/CL(i))*(W(i)*g))/1000;
Wf(i) = SFC*T*(disp(i)/V);
W(i+1) = W(i)-Wf(i);
end
I have tried defining V to be a random (1x29) matrix but I get the following error:
In an assignment A(I) = B, the number of elements in B and I must be the same.
Error in trial (line 38)
CL(i) = (W(i).*g)./(0.5*density*(V.^2)*S);
Can anybody please help?

採用された回答

Image Analyst
Image Analyst 2014 年 10 月 8 日
CL(i) is a single number, the i'th element of CL. You're trying to stuff a whole 29 element array into a space that can hold only a single number. Perhaps you want this???
CL(i) = (W(i).*g)./(0.5*density*(V(i).^2)*S);
If g, density, and S are also arrays, then you'd need to add (i) following them also, as well as having .* in front of S(i).
  4 件のコメント
Zena Assaad
Zena Assaad 2014 年 10 月 8 日
This worked perfectly. Thank you very much!!!!!!
Image Analyst
Image Analyst 2014 年 10 月 9 日
You're welcome. Could you go ahead and officially mark the answer as "Accepted" then? Thanks in advance.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by