problem with assigning in a loop
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hamid
am 14 Dez. 2014
Kommentiert: Hamid
am 14 Dez. 2014
my code runs correctly when lc is 1,I want lc>1 ;
Ed is 45*6 matrix and I think there is a way to assign Ed for lc>1 .
What can I do?
please help.
for i=1:lc
ff=f(:,i);
[a,r]=solveq(K,ff,bc);
Ed=extract(Edof,a);
end
----------------------------------------
function [ed]=extract(edof,a)
[nie,n]=size(edof);
t=edof(:,2:n);
for i = 1:nie
ed(i,1:(n-1))=a(t(i,:))';
end
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 14 Dez. 2014
Bearbeitet: Image Analyst
am 14 Dez. 2014
Store the various values of Ed for different iterations in a cell array
Ed{i} =extract(Edof,a);
or a 3D array
thisEd=extract(Edof,a);
allEd(:,:,i) = thisEd;
If you use a 3D array, be sure to preallocate before the loop starts
Ed=allED(45,6,lc);
3 Kommentare
Image Analyst
am 14 Dez. 2014
Maybe you need to define Ed as a cell before the loop
Ed = cell(1, lc);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!