Peak Fitting Science

Intelligent Fit Automation

PFChrom v5 uses an entirely new non-linear fitting engine that offers a level of automation heretofore unseen for fitting peak data.

Sequential Constrained Fits

The new default for fitting peaks with PFChrom includes sequential constrained fits to maximize the possibility of realizing the global minimum in the nonlinear iterative optimization. There are now both local and global constraints. A global constraint is absolute, as in a center value for a peak being bound to a range that is fixed percentage band around its starting estimate. A local constraint specifies the measure to which a given parameter can vary in a given subsidiary fit within a sequence. The intention was to never again have to restart a fit in order to remedy being at a constraint bound or remedying a fit that generated unrealistic values. In this procedure, there can be many individual sequential fits which produce the final overall fit.

Cycle Fits

This option manages the instances where there are very low area peaks whose parameter values might be inaccurate because the fit’s minimization of error mostly accounted small deviations in the model for the very largest area peaks. To make each peak of equivalent prominence in the fitting, a new fitting algorithm cycles through the individual peaks giving each a specific emphasis in the fitting. This avoids having to section low area peaks for a separate fitting, or weighting data to give a greater influence to these smaller peaks. You can think of this as an automatic sectioning where individual fits are recombined into a much more accurate overall fit.

Intelligent Parameter Management

When fitting IRF (instrument response function) bearing models, and generalized models which manage ZDD (zero-distortion density) deviations from the theoretical, these few parameters must be tightly controlled in the fitting. PFChrom uses a new estimation algorithm that allows these IRF and ZDD to be configured with your history for given instruments, columns, and analyses in order to begin the fitting with an accurate estimate for these few but exceedingly important parameters. These key parameters can be locked in a first pass of the overall fitting procedure, while the primary peak parameters are estimated, and then these IRF and ZDD parameters are fitted in a second pass.

Fitting Performance

With as many as a hundred or more individual fits occurring to produce a final fit, the speed and performance of the fitting algorithm is essential. When fitting IRF-bearing models, each peak’s convolution integral is processed in the Fourier domain using every code and thread available. Most machines offer at least four cores and eight threads. Newer i9 machines offer ten cores and twenty threads. This does mean as many as twenty convolution integrals will be computed simultaneously.

Even when pre-processing the data with a Fourier domain removal of an already-quantified IRF, PFChrom allows up to 25 data sets to be fitted in a single step. Here as well multiple threads are used and as such as many data sets will be simultaneously fitted as threads exist in the CPU.

Our objective is to furnish an intelligence to the fitting that turns hours into minutes, and minutes into seconds.

Overlapping/Hidden Peak Automation

When fitting hidden peaks, it is usually not possible to fit independent primary a0-a3 parameters for each of the peaks. In general, the a2 width and a3 chromatographic distortion will have to be shared across the overlapping peaks.

In the above data, there are seven peaks in the first baseline-resolved segment, one peak in the second, and two in the third. PFChrom makes it a simple matter to share the width and distortions across a segment.

In a segment-fit, the peaks in each baseline-resolved segment share the specified parameters instead of being shared across the whole of the data set. This makes it an easy matter for overlapping and hidden peaks within a segment to share a common width and distortion.

More information on fitting hidden peaks can be found in the Fitting Hidden Peaks tutorial.