From: Georgiou, A. <A.G...@uu...> - 2008-07-09 12:14:11
|
Hello everyone, this is my first post on this list and I'd like to share my experiences trying to write java code that will decode binary arrays. I believe I have found a couple of errors that need correcting. First of all, I would like to say that during the last few days I have tried as hard as I could to eliminate the possibility of bugs in my code, but there is always a possibility that the mistake is on my part. Having said this, I believe that the data in the small_zlib.pwiz.mzML file is invalid. After I decompress the data with ZLIB (the java.util.zip.Inflater class does not complain so it seems the compression format is OK), there is no way I can unpack the bytes to sensible (always positive) 32-bit floats, no matter which byte ordering I try (according to the docs, it should be little-endian). My decompressor works OK with ZLIB'd 64-bit values so I don't think ZLIB is causing the problem. So I used msconvert to convert small.raw to 4 files: small_32bit_nozlib.mzML, small_32bit_zlib.mzML, small_64bit_nozlib.mzML, and small_64bit_zlib.mzML. I have no problem decoding the two 64-bit files, and also the uncompressed 32-bit file now works. As for 32-bit with ZLIB, *most* of the values I get are the same as those I get from the other files. The exception is that the first 68 32-bit values in the mz array are copied from the end of the array (last 68 values from the array are also copied to the beginning of the array) and the corresponding first 68 32-bit intensities in the intensity array appear to be garbage. I have been debugging by code for a couple of days now and I think there is a good chance that the error is in protein wizard and not my code. In any case, whether there is a bug in protein wizard or not, I feel pretty sure that there is something wrong with the example file "small_zlib.pwiz.mzML" so maybe someone might want to check it again. I believe that the two problems are actually one: There must be a bug in protein wizard when it writes to ZLIB compressed 32-bit data. Possibly something to do with buffer/array indices. Any help/comments on this will be appreciated. thanks, Alex ------------------------------------- Alexandros Georgiou Department of Biomolecular Mass Spectrometry Utrecht University Sorbonnelaan 16 (room N319) 3584CA Utrecht The Netherlands http://www.pharm.uu.nl/ffwuk.htm?/bioms/ http://proteomics.chem.uu.nl/ |