How to save outputs in a while loop

I would like to save each output of the following while loop, however I do not know how to do this.
while i<a
i=1+i;
E=members(i,4);
A=members(i,5);
start=members(i,2); %the starting joint of the member
last=members(i,3); %The end joint of the member
Xb=joints(start,2); %Beginign x coordinate
Xe=joints(last,2); %Ending x coordinate
Yb=joints(start,3); %Begingin y cooridnate
Ye=joints(last,3); %Ending y coordinate
[K,T]=stiff_truss(E,A,Xb,Yb,Xe,Ye); %Creates the K,T for each member
end

답변 (1개)

KSSV
KSSV 2017년 3월 1일
편집: KSSV 2017년 3월 1일

0 개 추천

Say you want to store K,T inside the loop. Do as follows:
iwant = cell(a,2) ;
while i<a
i=1+i;
E=members(i,4);
A=members(i,5);
start=members(i,2); %the starting joint of the member
last=members(i,3); %The end joint of the member
Xb=joints(start,2); %Beginign x coordinate
Xe=joints(last,2); %Ending x coordinate
Yb=joints(start,3); %Begingin y cooridnate
Ye=joints(last,3); %Ending y coordinate
[K,T]=stiff_truss(E,A,Xb,Yb,Xe,Ye); %Creates the K,T for each member
iwant{i,1} = K ;
iwant{i,2} = T ;
end

댓글 수: 2

Krasho4
Krasho4 2017년 3월 1일
I added the new code into and I received an error message saying sub-scripted assignment dimension mismatch. It specified the line iwant(i,:)=[K,T];
KSSV
KSSV 2017년 3월 1일
편집: KSSV 2017년 3월 1일
Ohh...then K and T is a matrix? Edited my answer, considering K and T as a matrix.

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

카테고리

도움말 센터File Exchange에서 Performance and Memory에 대해 자세히 알아보기

태그

질문:

2017년 3월 1일

편집:

2017년 3월 1일

Community Treasure Hunt

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

Start Hunting!

Translated by