problem with assigning in a loop
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commenti
Risposta accettata
Image Analyst
il 14 Dic 2014
Modificato: Image Analyst
il 14 Dic 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 Commenti
Image Analyst
il 14 Dic 2014
Maybe you need to define Ed as a cell before the loop
Ed = cell(1, lc);
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!