problem with assigning in a loop

1 Ansicht (letzte 30 Tage)
Hamid
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

Akzeptierte Antwort

Image Analyst
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
Image Analyst am 14 Dez. 2014
Maybe you need to define Ed as a cell before the loop
Ed = cell(1, lc);
Hamid
Hamid am 14 Dez. 2014
excellent, thanks.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by