How do I fix this error: In an assignment A(I) = B, the number of elements in B and I must be the same!!!
    2 views (last 30 days)
  
       Show older comments
    
    Zena Assaad
 on 8 Oct 2014
  
    
    
    
    
    Commented: Image Analyst
      
      
 on 9 Oct 2014
            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?
0 Comments
Accepted Answer
  Image Analyst
      
      
 on 8 Oct 2014
        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 Comments
  Image Analyst
      
      
 on 9 Oct 2014
				You're welcome. Could you go ahead and officially mark the answer as "Accepted" then? Thanks in advance.
More Answers (0)
See Also
Categories
				Find more on Matrix Indexing 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!
