Hi and thanks for answering my prev. questions! Decided to ask this one:
How can I convert fid data (ser file) to plain text openable in programmes like Origin? Would really like to know how to do this in Topspin and XWinNMR.
A simple way to do this is with the "od" (octal dump) command which is standard on Linux (and may be available under Cygwin for Windows). Use, in the directory containing the fid:
od -An -i -v -w4 fid > fid.txt
which will create a file fid.txt containing the data in readable form, one number per line. If you're doing this on an ser file the result may be quite large! This can also be used on 1r, 2rr etc... Note that you will not have the time/frequency that corresponds to each point, just the intensity of each fid point.
I should add that you probably need to convert digital data to analogue first with "convdta" in Topspin before running this. On older systems e.g. RHEL4 the syntax is slightly different:
od -An -t dI -v -w4 fid > fid.txt
added: 20 Jan 2010
To tell if byte swapping (converting from one endianness to another) is necessary look at the BYTORDA parameter in the acqus file. If it is 1 (on a Linux system) then you need to swap the byte order of the data for od to work correctly. A command to do this is:
ls fid | cpio -o | cpio -i --swap -u
Once run you will need to edit the acqus file so that BYTORDA = 0 or Topspin will not be able to process the fid correctly.
Finally, if the data is floating point rather than integer, od probably wont work (check parameter DTYPA in acqus - should be 0 for integer).
the simple way for ur problem is ,open spectra in topspin-file-save-save data of current displayed region in a text file or save data in zip flie..these commands are availble in topspin2.1 if it not availble just type tozip or tojcampdx in command menu..
answered Jul 16 '10 at 20:26
you can also type convfid2asc for the conversion of FID's to a csv type file. convbin2asc willdo the same for spectra. Both of these commands are for 1D data only.
answered Jul 23 '10 at 21:23
Thanks for your comments, they are very useful. I try to read a 1r processed file. I know that the raw file contains 41 966 values (so 167 864 bytes in Int). I'm unable to read the same file size in 1r (processed). In the acqus params seem to be: TYPE = 0 and ORDER = 0... In FlexAnalysis, data are in float. For example, first values are -2.16, -2.14, -2.22. When I read it in single float I have: -4 530 778, -4 475 780, -4 448 312. Any solutions?