Bonjour,
je suis entrain de développer sous matlab , je voudrais savoir comment on stocke des résultats dans un fichier txt en les rajoutant sur les anciens sans les écraser , sachant que mon code me stocke que le derniers résultats obtenus..., en fait mon code utilise plusieurs fichiers et pour chaque fichier j'ai un résultat associé ...
function [cfg]=t2fit_nnlsB(dirpath)
close all;
sampleName=sName(dirpath);
Idata=load(dirpath);
[sampleName, remain] = strtok(sampleName, '.');
dirpath='F:\PTF\Bonduelle\Traitement\France_14\';
dirname=[dirpath, sampleName];
mkdir(dirname);
cd(dirname);
te =Idata(:,2);
y_e=Idata(:,3);
figure(1),clf;
%plot(te, y_e, 'x');
semilogx(te, y_e, 'x');
title(['T2 multiexp_', sampleName ]);
xlabel('TE (ms)');
ylabel('Signal');
% Setup the kernel
t2 = te';
A = exp( - kron(te, 1./ t2) );
% Add a baseline component
A = [A ones(size(A,1), 1)];
%x0=[7, 30, 150];
[x,RESNORM,RESIDUAL,EXITFLAG,OUTPUT,LAMBDA] = lsqnonneg(A, y_e);
baseline = x(end);
amplitudes = x(1:end-1);
% amplit=nonzeros(amplitudes);
[amplit, indices]=findpeaks(amplitudes);
pop=amplit./sum(amplit);
t2values=te(1)*indices;
results=[t2values pop]
fid = fopen('resultat.txt','w');
save ('resultat.txt' , 'results','-ascii');
fclose(fid);
end
Partager