multiplet-analysis

NPM version build status npm download

The goal of this project is to be able to determine the multiplicity of a NMR signal as well as the coupling constants. It is based on a delta-function deconvolution developed by D. Jeannerat and G. Bodenhausen and published in J. Magn. Reson. 1999, 141(1), p133 doi:10.1006/jmre.1999.1845. More info and discussion in doc/README.md The result of the analysis that is an object composed:

Technical information

Run example

node -r esm examples/quadruplet.js
node -r esm examples/ddd.js
node -r esm examples/ddd_ABCD.js
node -r esm examples/doublet.js

node -r esm examples/simulate.js; # to simulate from a user-defined spin system
node -r esm examples/dd-exp.js; # to simulate from a user-defined spin system
node -r esm examples/asymDoublet.js; # to simulate from a user-defined spin system

Developement

git clone https://github.com/cheminfo/multiplet-analysis.git
cd multiplet-analysis
code .

To run the jest tests in an interactive way (preferably on a second screen): npx jest --watch

In order to debug you may anytime add a console.log in the code. The result of the log will appear in the jest --watch.

In the jest --.watch terminal you may as well select only one specific test.

In is also possible to select a specific test in the code by adding .only after describe or it like for example: it.only('s

Debugging data

In order to debug algorithm it is important to be able to visualize them. In the project we added a folder /examples/web that contains index.html. This webpage will load data.json and annotations.json and display a chart.

To automatically use and refresh this webpage you should install the plugin Live server typing code --install-extension ritwickdey.liveserver. Then, right click on index.html and open with live server. This will open the webpage in the browser and reload it if the files change.

There are also 2 examples files to create the data:

When you clone / update the project don’t forget to npm i to load possible new dependencies.

If you want to execute those scripts written as module you need to use esm that is installed as a development dependency. npm install esm node -r esm ./examples/web/exampleGenerateAnnotations.js

Creating simulated data

Spectra can be simulated on

http://www.nmrdb.org/simulator/

And the data can be download as a JSON file.

Installation

npm i multiplet-analysis

Usage

import library from 'multiplet-analysis';

const result = library(args);
// result is ...

API Documentation

License

MIT

npm i ml-fft npm home ml-fft

Demo and examples

Main scientific page.

example 1.

example 2.