MATLAB: Outputting Data in Excel

dataexcelfprintffsolveoutputreadsave

Hey all, I'm running the piece of code here:
data = csvread('data.csv');
assert (mod(size(data, 1), 3) == 0, ...
'Input data must have an integer multiple of 3 rows');
assert (size(data, 2) == 6, ...
'Input data must have exactly six columns.');
nsys = size(data, 1) / 3;
soln = zeros(nsys, 3);
options=optimset('MaxFunEvals',1e10,'MaxIter',25000);
for k = 1 : nsys,
F = generate_system(data(3*(k-1) + (1:3), 1:end));
guess = [1.55 0 300];
soln(k, :) = fsolve(F, guess,options);
end
fid=fopen('results.csv','a');
fprintf(fid,'%5.5f %5.5f %4.0f\n',soln);
fclose(fid);
It's purpose is to take a bunch of data, processes it through an fsolve command, and then output the three solutions. My problem right now is that the program outputs the data as the calculated array in a single cell, ie [20 0 300] appears in a single cell. It really is a nightmare for running further calculations. Does anyone know how to output the data in excel such that each peice of data occupies its own cell?
Thanks.

Best Answer

Write your results using the xlswrite function. Simply write:
xlswrite('results.xls',soln);
See the xlswrite help page for further details.
Related Question