|
12 | 12 | % the waterdata is before loading in the GABAdata. |
13 | 13 |
|
14 | 14 | %% Read in water data -- MGSaleh 2017 |
| 15 | + |
| 16 | +ii = MRS_struct.ii; |
| 17 | + |
15 | 18 | if nargin > 2 |
16 | 19 | % work out data header name |
17 | 20 | sparname = [fname_water(1:(end-4)) 'list']; |
18 | 21 | sparheader = textscan(sparname, '%s'); |
19 | 22 | %ADH - decide if there is water data as ref data included in the data and |
20 | 23 | %if so, set a flag to pull it out properly... |
21 | 24 | sparidx=find(ismember(sparheader, 'F-resolution')==1); |
22 | | -MRS_struct.p.npoints_water = str2double(sparheader{sparidx+2}); |
| 25 | +MRS_struct.p.npoints_water(ii) = str2double(sparheader{sparidx+2}); |
23 | 26 | sparidx=find(ismember(sparheader, 'number_of_extra_attribute_1_values')==1); |
24 | | -MRS_struct.p.nrows_water = str2double(sparheader{sparidx+2}); |
| 27 | +MRS_struct.p.nrows_water(ii) = str2double(sparheader{sparidx+2}); |
25 | 28 | sparidx=find(ismember(sparheader, 'number_of_signal_averages')==1); |
26 | | -MRS_struct.p.NSA_water(MRS_struct.ii) = str2double(sparheader{sparidx+2}); |
27 | | -MRS_struct.p.Navg_water(MRS_struct.ii) = MRS_struct.p.NSA_water(MRS_struct.ii)*MRS_struct.p.nrows_water; |
| 29 | +MRS_struct.p.NSA_water(ii) = str2double(sparheader{sparidx+2}); |
| 30 | +MRS_struct.p.Navg_water(ii) = MRS_struct.p.NSA_water(ii)*MRS_struct.p.nrows_water; |
28 | 31 | %Need to determine the offset of the data - i.e. how many channels are |
29 | 32 | %there... |
30 | 33 | sparidx=find(ismember(sparheader, 'NOI')==1); |
31 | 34 | MRS_struct.p.coil_channels=size(sparidx,1)-2; |
32 | 35 | sparidx=find(ismember(sparheader, 'STD')==1); |
33 | 36 | MRS_struct.p.ptr_offset_water=str2double(sparheader{sparidx(3)+20}); |
34 | 37 |
|
35 | | -MRS_struct.p.Navg_water(MRS_struct.ii) = MRS_struct.p.Navg_water(MRS_struct.ii)*MRS_struct.p.coil_channels; % MGSaleh |
| 38 | +MRS_struct.p.Navg_water(ii) = MRS_struct.p.Navg_water(ii)*MRS_struct.p.coil_channels; % MGSaleh |
36 | 39 | %Need to skip rows associated with the ' |
37 | 40 | % [ %real/imag FID points random total_FIDS/dynamic scans dynamic scans] |
38 | | -MRS_struct.fids.data_water = readraw_Gannet(fname_water, 'float', [2 MRS_struct.p.npoints_water 1 MRS_struct.p.Navg_water(MRS_struct.ii)/MRS_struct.p.nrows_water MRS_struct.p.nrows_water], 'l',MRS_struct.p.ptr_offset_water); |
| 41 | +MRS_struct.fids.data_water = readraw_Gannet(fname_water, 'float', [2 MRS_struct.p.npoints_water 1 MRS_struct.p.Navg_water(ii)/MRS_struct.p.nrows_water MRS_struct.p.nrows_water], 'l',MRS_struct.p.ptr_offset_water); |
39 | 42 | % Make data complex. |
40 | 43 | MRS_struct.fids.data_water = squeeze(complex(MRS_struct.fids.data_water(1,:,:,:,:), MRS_struct.fids.data_water(2,:,:,:,:))); |
41 | 44 | FullData_water = MRS_struct.fids.data_water; |
|
71 | 74 | sparidx=find(ismember(sparheader, 'number_of_extra_attribute_1_values')==1); %Dynamic scans |
72 | 75 | MRS_struct.p.nrows = str2double(sparheader{sparidx+2}); |
73 | 76 | sparidx=find(ismember(sparheader, 'number_of_signal_averages')==1); |
74 | | -MRS_struct.p.Navg(MRS_struct.ii) = str2double(sparheader{sparidx+2}); |
| 77 | +MRS_struct.p.Navg(ii) = str2double(sparheader{sparidx+2}); |
75 | 78 | %Need to determine the offset of the data - i.e. how many channels are there... |
76 | 79 | sparidx=find(ismember(sparheader, 'NOI')==1); |
77 | 80 | MRS_struct.p.coil_channels=size(sparidx,1)-2; |
78 | 81 | sparidx=find(ismember(sparheader, 'STD')==1); |
79 | 82 | MRS_struct.p.ptr_offset=str2double(sparheader{sparidx(3)+20}); |
80 | | -MRS_struct.p.Navg_all_chann(MRS_struct.ii) = MRS_struct.p.Navg(MRS_struct.ii)*MRS_struct.p.nrows*MRS_struct.p.coil_channels; % MGSaleh |
| 83 | +MRS_struct.p.Navg_all_chann(ii) = MRS_struct.p.Navg(ii)*MRS_struct.p.nrows*MRS_struct.p.coil_channels; % MGSaleh |
81 | 84 | %Need to skip rows associated with the [real/imag FID points random total_FIDS/dynamic_scans dynamic scans ] |
82 | | -MRS_struct.fids.data = readraw_Gannet(fname, 'float', [ 2 MRS_struct.p.npoints 1 MRS_struct.p.Navg_all_chann(MRS_struct.ii)/MRS_struct.p.nrows MRS_struct.p.nrows], 'l',MRS_struct.p.ptr_offset); |
| 85 | +MRS_struct.fids.data = readraw_Gannet(fname, 'float', [ 2 MRS_struct.p.npoints 1 MRS_struct.p.Navg_all_chann(ii)/MRS_struct.p.nrows MRS_struct.p.nrows], 'l',MRS_struct.p.ptr_offset); |
83 | 86 | % Make data complex. |
84 | 87 | MRS_struct.fids.data = squeeze(complex(MRS_struct.fids.data(1,:,:,:,:), MRS_struct.fids.data(2,:,:,:,:))); |
85 | 88 | % [ FID points coil NSA dynamic scans ] |
|
109 | 112 | end |
110 | 113 | disp('water suppressed data ... done') |
111 | 114 | %I moved it to the end of the function -- MGSaleh 05252018 |
112 | | -MRS_struct.p.Navg(MRS_struct.ii) = MRS_struct.p.Navg(MRS_struct.ii)*MRS_struct.p.nrows; |
| 115 | +MRS_struct.p.Navg(ii) = MRS_struct.p.Navg(ii)*MRS_struct.p.nrows; |
113 | 116 |
|
114 | 117 | end |
115 | 118 |
|
0 commit comments