iNMR icon

  Fitting an Experimental Spectrum Automatically

A successful fitting requires so many preparatory steps that the word “automatic” may sound out of place.

acquire the experimental spectrum

You don't need to be said how important are an homogeneous magnetic field, narrow lines, a flat baseline and a pure sample. Fitting also benefits from an high digital resolution, which can be achieved with an adequate acquisition time, and from an high signal/noise ratio, which is achieved with many scans.

process the experimental spectrum

Here again you must pay attention to phase and baseline corrections and high digitization (which can be increased with zero-filling). Some cosmetic adjustments are possible. For example, if you identify an impurity and can acquire a spectrum of it, you can also subtract the impurity with iNMR. The resolution can be increased with visual weighting.

create the simulated spectrum

Create a new document as explained into a previous chapter. First you specify the number of nuclei and their coupling, then you set the value of the parameters (chemical shifts and Js) as near as possible to those of the experimental spectrum. Introduce the latter as an overlay. You can visually compare the two.

click the assimilate button

At this point we need to create a correspondence between each point of the experimental spectrum and another point in the simulation. It is necessary to have identical carrier frequency, spectral width and digital resolution in both spectra. The assimilate button (at the top of the drawer) cares about these things. It is advisable, before clicking it, to restrict the displayed region to the minimum necessary (not more than the region to fit). This is also the moment to...

adjust the population(s)

The iNMR strategy for fitting is a two-steps process. First the intensities (populations) are fitted, then the other parameters (only those with a check mark!). You control which parameters are checked and which not. In the case of populations, it is enough to click the population of only one system and all population will be recalculated, because the relative ratio of populations must remain constant. Both the command “Simulate/Fit to Overlay” and the button “assimilate” perform the same kind of fitting: the areas of the two spectra are equalized and the areas are calculated over the displayed region only.
You can select a single peak to perform this preliminary fitting and another region to optimize the other parameters. In this case UNCHECK all populations if you are happy with their value, otherwise they will be recalculated at every “assimilate” or “fit” command.

fit manually

Fitting requires starting values (estimates) of the parameters. The more accurate the estimates, the higher the probability of a successful fitting.

adjust the shapes

What we have being calling “lines” have actually a measurable width and a shape. The theoretical equation that describes an NMR signal is the Lorentzian. Many symmetrical lines can be approximated with a mixture of a Lorentzian and Gaussian shape, though there is little theoretical fundament for such a practice. In the case you have artificially increased the resolution of the experimental spectrum with weighting, then it's obvious that you have introduced a Gaussian component. Whatever the justification, you have the possibility to improve the fit varying the shape of the simulated peaks with the parameter “%Lor” (percentage of Lorentzian character; the residual is assumed to be Gaussian). For the sake of simplicity, there is just one copy of this parameter and it affects all peaks. Optionally, you can include it among the parameters to be automatically optimized.

adjust the width

You have more flexibility with widths. If you prefer to keep things simple, use the “%defW” (default width) for all lines. Otherwise re-open the dialog with “Simulate/Define Systems...” and uncheck the option “same width for all lines”. The effect will be that a new width parameter will be created for each nucleus.

choose the battlefield

Simulating an whole spectrum is neither easy nor necessary. Select just a portion of it. The portion must be narrow enough to be clean from impurities and artifacts (including baseline distortions) and large enough to contain all the information that you need. The operation for selection simply consists in zooming in into the region you choose. In other words, only the displayed part is fitted. If you have used the cutter tool for fragmenting the frequency scale, only one fragment will be fitted.

tune the pulling force

In its basic version, the fitting algorithm simply refines the parameters until the first local minimum is found, which can correspond to the first peak or the first shoulder or even the present state of the simulation. To pull the algorithm out of these minima (in other words: to make something happen) you must instruct the program to correlate not only neighbor points but also those a little more distant. There's, however, the limited risk of taking a wrong path when this pulling force is too much. The name of the parameter is “pull”. The default value (60) is indicated when the starting guess is an accurate one. If you start from random parameters, increase “pull” up to the thousands. We can't give rules about how to set the best value. There's no substitute for experience. You can train yourself trying to fit a simulated spectrum with another one.
This parameter is ignored if you let iNMR optimize the individual line-widths.

What Happens to the Spectral Width

The command “Fit to Overlay” removes the parts of the spectrum that are not shown. The command “View/Full” doesn't help to make them visible again. To restore the full spectral width it is simply necessary to click the button “refresh” (that's what it's for; remember: it never hurts to click it!).


If you are not satisfied with the result of automatic fitting, you may try another run from the same starting guess and an higher value of “pull” or you may try randomizing the parameters (often it's a matter of trial and error, or of pure luck). The automatic fitting, when it can't find a solution, has the tendency to increase the coupling constants to unrealistic values. When you cannot measure the experimental couplings, and want to increase the rate of success, set all positive Js to 1 Hz and all negative Js to -1 Hz. Give the algorithm a sufficient pulling force and it will recalculate all of them correctly.
More often than not, it's easier to optimize all parameters at once than to optimize them one by one. In some cases, however, the winning strategy may be to optimize chemical shifts first and coupling constants afterwards.

See also

introduction to simulation

the dialog to define spin systems

the drawer

chemical exchange

fitting the frequencies