Comments (6)
@kfritzsc I'm certain that you know more about the format of Bruker pdata data that I do. I never used this type of data while I was doing NMR. I've never hear of data being "striped transformed", can you give more details on this process. Is this similar to to oversampling and decimation of data?
I think the logic of getting the correct unit_conversion
object from this type of data should lie in the bruker.guess_udic
function and not the fileiobase.uc_from_udic
. The parameters of the universal dictionary should match the data to give the correct unit conversions, even if the file metadata incorrectly identifies these parameters.
That said I don't complete understand this issue, if you could provide a stand alone example it might be helpful.
from nmrglue.
I've never hear of data being "striped transformed", can you give more details on this process.
Bruker has an option to only save some of the data points after Fourier transform. The range of points to be saved (i.e. the strip) is set using the options SI, STSI and STSR. SI is the total number of points in a given dimension, to help clarify: the number of points zero filled is SI-TD, where TD is number of points collected. STSI is the 'Strip SI', i.e. the number of point to keep after a FT. STSR is the 'Strip SR', this parameter controls the location of the first point to start keeping data (normally from the left of the spectrum).
In solid-state NMR it is desirable for many reasons to collect a larger spectral width in the direct dimension. On older spectrometers, due to filter restriction it is often the only option. Still it is silly to manipulate all of the extra points. Therefore, STSI and STSR can be used to save a large amount of memory and computation time.
Is this similar to to oversampling and decimation of data?
It is different. Although we sometimes do something like decimation and some FT tricks in the indirect dimension to prevent zero frequency artifacts.
I think the logic of getting the correct unit_conversion object from this type of data should lie in the bruker.guess_udic...
Okay, I will add this functionality to bruker.guess_udic
.
My current problem is that SI is overwritten by STSI and the set SI is saved as a 'status parameter'. The parameter we need is therefore not in 'procs' but in the 'audit trail' saved to 'auditp.txt', for example '1/pdata/1/auditp.txt' . This file is in a slightly odd JCAMPDX format so I will have to write an additional parser for it.
After I parse the audit file, We should be able to make the 'effective' udic parameters for strip transformed data with something like:
# Careful, untested code.
strip_sw = (SI/sw) * STSI
strip_car = (SI/sw) * STSR + car
That said I don't complete understand this issue, if you could provide a stand alone example it might be helpful.
I will provide an example soon, I can not share the current data I am working on, but can look for some data of a model compound. It will take me a few days to get back to this.
from nmrglue.
I forgot about the parameter FTSIZE, that makes things a lot easier.
from nmrglue.
Alright, this creates a strip. Makes complete sense now. I was thinking in this was time domain data and got lost. Yes, the best method is to "fake" the various spectral parameters to give the correct parameters to the universal dictionary. NMRPipe does a similar procedure with the EXT function which extracts a region from a spectrum. In nmrglue the ng.pipe_proc.ext
function also adjusts the spectral width and other additional parameters to account for the new layout of the data. I'll check out #50 shortly.
from nmrglue.
I believe this is closed by #50. @kfritzsc if you can confirm.
from nmrglue.
Thank you @jjhelmus!
from nmrglue.
Related Issues (20)
- Problem number of points in 2D experiments HOT 6
- nmrglue import fails with scipy=1.8
- Installation fails with setuptools v61.2.0 HOT 2
- Import error - scipy version 1.8.0 HOT 1
- integrate_2d: how to get limits.in? HOT 2
- Problem with 1D plotting - maybe HOT 3
- Failed to load Bruker Data HOT 2
- Give up on Python 3.6 HOT 1
- Process_pipe_3d:There seems to be some issues with the processing script HOT 13
- nmrglue fails loading due to scipy.minpack deprecation (1.9.3) HOT 2
- Does the spectral raw data obtained by 'Echo-Antiecho', 'States', 'TPPI' and 'States-TPPI' require additional manual operations? HOT 2
- ng.analysis.peakpick.pick() generating deprecation warning due to np.float() HOT 3
- Suggestion: nmrglue/fileio/SPINit.py
- Issue when trying to convert Varian data to Pipe HOT 2
- How to Process and display multiple 1D Bruker data HOT 3
- Port tests away from nose HOT 2
- New release HOT 4
- Help plotting Bruker 2D spectra HOT 3
- Issue with ng.peakpick.pick for "thres" and "thres-fast" algorithms with Numpy ^v1.22 HOT 2
- Peak picking from a 2D contour plot HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nmrglue.