storing data in an array from a loop

1 visualizzazione (ultimi 30 giorni)
Tristan
Tristan il 7 Ott 2013
Risposto: Jan il 7 Ott 2013
I have:
A1=(1:1:10)*1.22';
A2=(1:1:10)*2.55';
for cc=(A1+A2)/2;
G1=[1 2];
G2=[2.6 1.1];
X=(fsolve(@(x)sum(G1.*sin(G2.*x)),cc))'
end
and I want the results for X to be stored in an array

Risposta accettata

Inge
Inge il 7 Ott 2013
A1=(1:1:10)*1.22';
A2=(1:1:10)*2.55';
i=1;
for cc=(A1+A2)/2;
G1=[1 2];
G2=[2.6 1.1];
X(i)=(fsolve(@(x)sum(G1.*sin(G2.*x)),cc))'
i = i+1;
end
I think this will work!

Più risposte (1)

Jan
Jan il 7 Ott 2013
The code looks strange. Perhaps you meant:
index = (1:10) * ((1.22 + 2.55) / 2);
G1 = [1 2]; % Move constants out of the loop
G2 = [2.6 1.1];
X = zeros(1, 10);
for k = 1:10
X(k) = fsolve(@(x)sum(G1.*sin(G2.*x)), index(k))';
end
Or perhaps X should be a cell?
X = cell(1, 10);
for k = 1:10
C{k} = ...

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by