storing data in an array from a loop

1 view (last 30 days)
Tristan
Tristan on 7 Oct 2013
Answered: Jan on 7 Oct 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

Accepted Answer

Inge
Inge on 7 Oct 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!

More Answers (1)

Jan
Jan on 7 Oct 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} = ...

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!