|
0
|
1 function allmz=mz_3_extract_all_mz2(resbary0)
|
|
|
2
|
|
|
3 // extraction des m/z et des signaux totaux
|
|
|
4
|
|
|
5 // resbary0: une structure avec les champs .time et .mzdata
|
|
|
6
|
|
|
7 // allmz: une matrie ce deux colonnes: m/z et signal total
|
|
|
8
|
|
|
9 n=max(size(resbary0.time));
|
|
|
10
|
|
|
11 allmz=resbary0.mzdata(1);
|
|
|
12
|
|
|
13 for i=2:n;
|
|
|
14 allmz=[allmz;resbary0.mzdata(i)];
|
|
|
15 end
|
|
|
16
|
|
|
17 // arrondis
|
|
|
18 allmz(:,1)=round(10000*allmz(:,1))/10000;
|
|
|
19
|
|
|
20 // tri des donnees
|
|
|
21 [nul,tri]=gsort(allmz(:,1),'g','i');
|
|
|
22 allmz=allmz(tri,:);
|
|
|
23
|
|
|
24 // regroupememt des valeurs identiques
|
|
|
25 n2=max(size(allmz));
|
|
|
26 for i=2:n2;
|
|
|
27 if allmz(i-1,1)==allmz(i,1) then
|
|
|
28 allmz(i,2)=allmz(i,2)+allmz(i-1,2); // rajout des signaux
|
|
|
29 allmz(i-1,1)=0;
|
|
|
30 end
|
|
|
31 end
|
|
|
32
|
|
|
33 // suppression des valeurs nulles
|
|
|
34 tri=find(allmz(:,1)~=0);
|
|
|
35 allmz=allmz(tri,:);
|
|
|
36
|
|
|
37 endfunction
|