For loop element Matrix construction

조회 수: 1 (최근 30일)
Mark
Mark 2012년 11월 13일
I am currently writing an element based analytical program for Uni but have hit a wall. I have a for loop for a set number of elements within which a number of different equations each giving a different aspect of each element. So, for 10 iterations(i) (or 10 elements) i am calculating A(i) B(i) C(i) etc. and i want to put these in one table or matrix related to their element number so the colums are denoted by the element number and the rows have a diferent result in (A,B or C...). What code do i use to do this?

채택된 답변

Thomas
Thomas 2012년 11월 13일
편집: Thomas 2012년 11월 13일
This video should help:
You can save the output in a vector or matrix as shown,
Eg:
% Preallocate space for y
y = zeros(1,10);
z = zeros(1,10);
for ii=1:10
y(ii)=ii+rand; % use y(ii) so that it is written as a vector
z(ii)=ii+rand; % use z(ii) so that it is written as a vector
end
out=[y' z'] % output as a matrix

추가 답변 (2개)

Mark
Mark 2012년 11월 13일
편집: Mark 2012년 11월 13일
I dont quite see how to do it for numerous varibales...Sorry :-s
So my code is:
for i = 1:nbe;
r(i) = (R*xo)+(deltar*(i-1));
x(i) = r(i)/R;
M(i) = x(i)*((Omega*R)/sos);
Theta(i) = Trad0+(x(i)*Trad1);
a(i) = (0.1/(1-M(i)^2))-(0.01*M(i));
v1(i) = ((Omega*a(i)*R*sigma)/16)*(-1+(1+((32*Theta(i)*x(i))/(a(i)*sigma)))^0.5);
phi(i) = atan((v1(i))/(Omega*r(i)));
end
And i want a table or matrix in the form of i against all these variables, one per row...
  댓글 수: 2
Jan
Jan 2012년 11월 13일
I still do not understand the question. Where are "A, B, C, ..." created in your code? Why do you need a loop here? A vectorization would simplify the code.
In general creating "A, B, C, ..." is less efficient than creating a cell "A{1}, A{2}, ...", because the later can processed in a loop directly.
Mark
Mark 2012년 11월 13일
Sorry, the initial question was an example. I used a for loop because when i tried creating it to solve element wise outside of a loop i started getting inner matrix dimensionality issues. Would you suggest a different approach?

댓글을 달려면 로그인하십시오.


Mark
Mark 2012년 11월 13일
Sorry to be so confusing, ill leave it and do it a slightly different way, thanks though

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by