mapVBVD Error reading Siemens HERMES Twix

Hello,

I am a graduate student attempting to analyze some HERMES GABA MRS data using Osprey. When trying to read in a specific subjects data I get the following error.

{Array indices must be positive integers or logical values.

Error in <a href="matlab:matlab.internal.language.introspective.errorDocCallback('mapVBVD>loop_mdh_read', '/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/mapVBVD/mapVBVD.m', 739)" style="font-weight:bold">mapVBVD>loop_mdh_read</a> (<a href="matlab: opentoline('/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/mapVBVD/mapVBVD.m',739,0)">line 739</a>)
    filePos( n_acq+1 ) = cPos;  % save pointer to the next scan

Error in <a href="matlab:matlab.internal.language.introspective.errorDocCallback('mapVBVD', '/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/mapVBVD/mapVBVD.m', 417)" style="font-weight:bold">mapVBVD</a> (<a href="matlab: opentoline('/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/mapVBVD/mapVBVD.m',417,0)">line 417</a>)
    [mdh_blob, filePos, isEOF] = loop_mdh_read( fid, version, NScans, s, measOffset{s}, measLength{s});  % uint8; size: [ byteMDH  Nmeas ]

Error in <a href="matlab:matlab.internal.language.introspective.errorDocCallback('io_loadspec_twix', '/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/io_loadspec_twix.m', 34)" style="font-weight:bold">io_loadspec_twix</a> (<a href="matlab: opentoline('/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/io_loadspec_twix.m',34,0)">line 34</a>)
twix_obj=mapVBVD(filename);

Error in <a href="matlab:matlab.internal.language.introspective.errorDocCallback('osp_LoadTwix', '/blue/vabfmc/data/working/robert727/software/osprey/load/osp_LoadTwix.m', 81)" style="font-weight:bold">osp_LoadTwix</a> (<a href="matlab: opentoline('/blue/vabfmc/data/working/robert727/software/osprey/load/osp_LoadTwix.m',81,0)">line 81</a>)
                raw_ref                     = io_loadspec_twix(MRSCont.files_ref{ref_ll,kk});

Error in <a href="matlab:matlab.internal.language.introspective.errorDocCallback('OspreyLoad', '/blue/vabfmc/data/working/robert727/software/osprey/load/OspreyLoad.m', 197)" style="font-weight:bold">OspreyLoad</a> (<a href="matlab: opentoline('/blue/vabfmc/data/working/robert727/software/osprey/load/OspreyLoad.m',197,0)">line 197</a>)
                [MRSCont] = osp_LoadTwix(MRSCont);

Error in <a href="matlab:matlab.internal.language.introspective.errorDocCallback('osp_onLoad', '/blue/vabfmc/data/working/robert727/software/osprey/GUI/osp_onLoad.m', 35)" style="font-weight:bold">osp_onLoad</a> (<a href="matlab: opentoline('/blue/vabfmc/data/working/robert727/software/osprey/GUI/osp_onLoad.m',35,0)">line 35</a>)
    MRSCont = OspreyLoad(MRSCont);
} 
Error while evaluating UIControl Callback.

matlab.internal.language.introspective.errorDocCallback('osp_LoadTwix', '/blue/vabfmc/data/working/robert727/software/osprey/load/osp_LoadTwix.m', 81)
matlab.internal.language.introspective.errorDocCallback('osp_LoadTwix', '/blue/vabfmc/data/working/robert727/software/osprey/load/osp_LoadTwix.m', 81)
matlab.internal.language.introspective.errorDocCallback('OspreyLoad', '/blue/vabfmc/data/working/robert727/software/osprey/load/OspreyLoad.m', 197)
matlab.internal.language.introspective.errorDocCallback('osp_LoadTwix', '/blue/vabfmc/data/working/robert727/software/osprey/load/osp_LoadTwix.m', 81)
matlab.internal.language.introspective.errorDocCallback('mapVBVD>loop_mdh_read', '/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/mapVBVD/mapVBVD.m', 739)
load('rtinsula.mat')
matlab.internal.language.introspective.errorDocCallback('mapVBVD', '/blue/vabfmc/data/working/robert727/software/osprey/libraries/FID-A/inputOutput/mapVBVD/mapVBVD.m', 417)
mapVBVD("/blue/vabfmc/data/archive/Lamb_BT/sub-084/mrs/sub-084_acq-hermes_nuc-1H_vox-rtinsula_svs.dat")
{Error using <a href="matlab:matlab.internal.language.introspective.errorDocCallback('mapVBVD')" style="font-weight:bold">mapVBVD</a>
File with meas. id /blue/vabfmc/data/archive/Lamb_BT/sub-084/mrs/sub-084_acq-hermes_nuc-1H_vox-rtinsula_svs.dat not found.
} 

Sometimes our Siemens scanner will generate extra, small dat files. I added some code to my job file to ensure that the correct sized file is used, but to be extra sure I checked the subjects data and ensured it is of the correct size. I also went into the MRSCont for my analyses and checked that the file paths for this subjects data exist and they do.

After I attempted to use the pyMapVBVD python package to read in the dat files and found that the metabolite file read in fine, but for the reference file I got the following error:

An unexpected read error occurred at this byte offset: 46563744 (0.04336586594581604 GiB)
Will stop reading now.

This indicates a problem with my reference file, but I am not sure if this problem is fixable or not.
I am using the GUI in Osprey 2.5.0.

I am fairly inexperienced with processing MRS data so please let me know if I left anything out. Any help is appreciated

Hi @Claar727,

Thank you for reaching out!

It is relatively hard to say what is going wrong. Would you be able to share the data?

Best,
Helge

HI @Helge,

Thanks for your response! Let me email my advisor who is the PI on the study and ask if that would be okay and I will get back to you.

Hello,

My data was not reading in properly because of the Siemens scanner creating extra, small files as I mentioned above. I included code to my job file to handle this based on the file sizes but the participant in question had an extra reference file that was within the limits I set in my code so incomplete data was passed in. I have the correct file being read in now.