Spectroni: a Matlab Implemented Algorithm for Spectrum Deconvolution

advertisement
SPECTRONI: A MATLAB IMPLEMENTED ALGORITHM
FOR SPECTRUM DECONVOLUTION
Yotam Gonen and Giora Rytwo,
 Tel Hai Academic College, Biotechnology and Environmental Sciences Department, Upper
Galilee 12210, Israel yotamg@edu.telhai.ac.il, rytwo@telhai.ac.il
MIGAL, Galilee Technological Center, Kiryat Shmona, Israel
Uv-vis spectroscopy is a cheap and fast technology for quantification of solutes, mainly organic
molecules. According to the assumptions of Beer-Lambert equation, if there are several solutes with
overlapping spectra, and no mutual interaction affects the spectrum profile; the result would be a
superposition of the individual spectra of the solutes. Therefore when dealing with a sample that may
contain two or more solutes with overlapping spectra there is a need to decompose the superimposed
spectra. We have developed a Matlab code that performs such deconvolution for up to three base
spectra.
Calculation scheme:
The program accepts 4 spectra: the mixtures spectra, with the unknown amounts of up to three
components, and samples with known concentration of the individual components. The spectra are
introduced as row vectors in which the place in the vector represents the wave length and the value
represents the optical density.
Assuming X(λ), Y(λ) and Z(λ) are the spectrum vectors of solutes X, Y and Z respectively, then the
overall absorbance vector would be: M  AX  BY  CZ, where M() is the vector
representing the measured mixture, and A, B and C are unknown scalars representing the ratio
between each component in the mixture, and the relevant known-sample spectrum. By
dividing each spectra in the maximum absorbance we would get a normalized spectrum (e.g. X N, YN
and ZN ) and we can then write Calculated  X N    K1YN    K 2 Z N   when K1 and K2 are the
ratios between YN and ZN to XN respectively. Next step is normalizing the calculated vector (i.e.
calculatedN). The program systematically checks all possible pairs of K1 and K2 within a range and
interval which are defined by the user. Finally, the program locates the K1 and K2 pair which yielded
the lowest root mean square error between the calculatedN vector and the mixture vector and then
calculates the scalars A, B and C. The program returns as output the maximum O.D. and λmax for
each of the solutes X, Y and Z, the root mean square error and a graphical representation of the
calculated and original vector along with the three base vectors. From the results, the concentration
of each of the solutes in the mixture is calculated. The whole process is very fast and allows the user
to redefine the relevant parameters as through a graphical user interface.
Possible uses:
During the lecture we will exhibit a few applications of this computer code: multicomponent
analysis, subtraction of “complicated” background spectra, pKa determination and kinetic
measurements. The main advantage of such “open code” software is the transparency of the
calculation process which enables the user to adjust the code to his specific requirements.
The code may be received along with a short user guide file by request to yotamg@edu.telhai.ac.il
Download