Question about ''width'' value in Voigt profile
Konstantinos Chatzipanagis
I know that this discussion has been done before but i would like to clarify one thing....When we fit a gaussian we get one value assigned as ''width'' and also the FWHM. In the past, somebody wrote that width= sqrt(2) times the standard deviation. If you take 2.355 times the standard deviation you can calculate the FWHM as given by Igor. Moving over to the Voigt profile.....Igor gives 4 values: FWHM, Gaussian width, Lorentzian width and another called simply width. I managed to use the Gaussian and Lorentzian width values and derive the FWHM of the voigt. Hence, i guess those Gaussian and Lorentzian width values are basically representing the FWHM values of the Gaussian and Lorentzian respectively. In addition, if you take the ratio of Lorentzian to Gaussian and multiply it by a constant you can derive the value for the shape as given by Igor.
However, i have one gap....I am not sure what the 4th value designated simply as ''width'' stands for......I found out that fixing this value and changing the shape, its the Gaussian width value that stays the same. So i guess this means that the ''width'' value is somehow related to the Gaussian contribution of the Voigt. Nevertheless, what does it represent exactly? Is it the same as the one initially described (width=sqrt(2) times the standard deviation) ? I think not because similar calculations to derive the corresponding Gaussian width (FWHM of the Gaussian as it is given) do not match the value given by the Igor. Thus, i am a bit confused. Does anybody know what this ''width'' value is? Sorry for the massive text or any possible confusion.
* A Gaussian distribution in statistics and a Gaussian peak-shape in spectroscopy are two different functions. The former is defined to have unit area with a standard deviation and mean. The latter is typically written to be defined by its position, height, and half-width (not standard deviation). The relationship between the two functions can be established directly as you have noted.
* A Lorentzian peak shape is also written to be based on its position, height, and half-width (not standard deviation).
* A Voigt is a convolution of a Gaussian and Lorentzian peak shape, not a multiplication or sum. Because it is a convolution function, the width of a Voigt has a complicated relationship to the width of the Gaussian and Lorentzian components. I discovered this recently by fitting a peak by a Voigt shape as well as by a sum of Gaussian + Lorentzian shapes (with a parameter f_Gauss for the relative amount of Gaussian).
* As far as I understand, the shape factor in the Voigt function controls the relative amount of convolution overlap between the Gauss and Lorentz components. In a first estimate, you might think this is a "multiplying factor" comparable to my f_Gauss term. It is however not that simple.
To get a better appreciation of the nuances here, the best exercises would be this ...
* Create a peak that has a sum of Gaussian + Lorentzian peaks with the same position + half-width. Use the f_Gauss factor. Fit that peak by a Voigt function instead.
* Reverse the process. Create a Voigt peak with a specific set of shape parameters. Fit it by a sum of Gaussian + Lorentzian components using a factor f_Gauss.
What you should discover is, the Voigt and (Gauss+Lorentz) peak shapes will fit their opposing peak shapes quite differently, especially in the tails of the peak.
--
J. J. Weimer
Chemistry / Chemical & Materials Engineering, UAH
February 29, 2016 at 09:19 am - Permalink
The fit coefficients for a Voigt peak shape are a scale factor (sort of amplitude, but the height of the peak is also affected by the shape factor, so it isn't really amplitude), location, sort-of width, and shape factor.
The "sort-of width" is described in some of our documentation as "width-related factor" and is more nearly 1/width. And it is not the only thing that affects the width.
The shape factor is the ratio of Gaussian to Lorenzian widths. So zero is pure Gaussian, and inf is pure Lorenzian. But the approximation we use for the Voigt profile is unstable with very small and very large values of the shape factor- if it is less than something like 0.1 to 0.01, or larger than something like 10 to 100, then you should use a Gaussian or Lorenzian peak shape.
Multipeak Fit 2 computes a real FWHM after the fit is done, but there is no analytic way to compute it. We use an approximation for FWHM.
John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
February 29, 2016 at 10:12 am - Permalink
Thanks for your responses......I am aware of all the things you mentioned but i am still a bit confused......I know that there is a mathematical formula combining the FWHM of the gaussian and the Lorentzian in order to calculate the FWHM of the voigt.....If i consider the ''Gaussian width'' and the ''Lorentzian width'' tabulated in the results as the corresponding FWHM values and try to get the FWHM of the voigt using the mathematical formula wl/2 + sqrt [(wl^2)/4 +wg^2] (wl and wg are the FWHM of the gaussian and Lorentzian respectively) i get the same value as Igor gives. However, i am still struggling to understand the mathematical formula that links the ''width'' value with the other ones ( by other ones i mean Gaussian and Lorentzian width). I have diffuculty what this ''width'' stands for.....There must be some kind of formula that combines these things....am i missing something here? I apologize for this.
February 29, 2016 at 10:28 am - Permalink
I think the equation you give is an approximation. Perhaps these references will give you some insights ???
https://en.wikipedia.org/wiki/Voigt_profile
http://journals.ametsoc.org/doi/pdf/10.1175/1520-0469(2004)061%3C1630%3…
http://sasfit.ingobressler.net/manual/Voigt
http://www.sciencedirect.com/science/article/pii/S0022407304002948
BTW, I find the last reference interesting in that is proposes to give a highly exact, closed-form solution. However, the follow-up articles clearly dispute the claim.
--
J. J. Weimer
Chemistry / Chemical & Materials Engineering, UAH
February 29, 2016 at 01:11 pm - Permalink
February 29, 2016 at 01:21 pm - Permalink
Our fitting function (following more or less standard practice) is
w[0]+w[1]*Voigt(w[2]*(x-w[3]),w[4])
. You can see from this equation that the width parameter really ought to be called something like "inverse width". For a given value of w[4], the width will be proportional to 1/w[2], while maintaining the same height. That means that the area is also proportional to 1/w[2] for a given value of w[4].But because the underlying Voigt function maintains constant area as you change Y, changing the shape parameter in the fitting function will change the height of the peak, while keeping a constant area.
Note that because a Lorenz peak has heavy tails, you must include a very wide range of X values if you wish to check the area using Igor's Area() function.
John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
February 29, 2016 at 02:06 pm - Permalink
March 1, 2016 at 02:30 am - Permalink
March 1, 2016 at 03:17 am - Permalink
I agree. This seems to be the main point of confusion. What is the equation for Voigt(...) in Igor Pro? I don't find it in any of the standard references (hint: perhaps the equation and a citation for it need to be added to the MultiPeak package and/or the Igor Pro manual??)
--
J. J. Weimer
Chemistry / Chemical & Materials Engineering, UAH
March 1, 2016 at 08:37 am - Permalink
[1]: http://www.sciencedirect.com/science/article/pii/0022407377901613
March 1, 2016 at 08:45 am - Permalink
If i try to reproduce the values reported in Igor after fitting i get the following: 1). Shape factor= sqrt(ln2) x [Lorentzian width/Gaussian width]. This is a well-known formula reported in quite a few papers and it seems that it works fine in Igor (provided of course that ''Gaussian width'' and ''Lorentzian width'' represent the actual FWHM values of the gaussian and lorentzian parts respectively). 2). As mentioned before, i do understand that the ''width'' value is related to the Gaussian part....However, i do not see what is the mathematical relation that links this ''width'' value with the ''Gaussian width'' value. This is one of the main points as you all understand. 3). Following to the latest statement of John Weeks i am not sure what he means when he says that the Voigt function returns a constant peak area (instead it rearranges the height) as you change the shape factor.....I tried to play around by changing the shape factor from 1.2 to 1.7 and the ''Area'' value given for the Voigt is different.....Maybe ''constant'' means that it does not change too much? If you vary the shape factor value a lot, the ''Area'' does change significantly. I apologize if i misunderstand something here but it would be nice if we could also clarify this point as well.
March 1, 2016 at 09:14 am - Permalink
The approximation to the Voigt(X,Y) function we use is newer and more accurate, but that paper gives you a good overview.
The statements about "the same area" refer to the Voigt(X,Y) function, not our fitting function. As Thomas Braun says, this function is exposed in Igor 7 beta as "VoigtFunc".
I believe the fitting function cited in my posting is our own invention. It has standard coefficients to make it fit arbitrary peaks that have a Voigt shape: w[0] to allow it to fly above or sink below the X axis, w[1] to change the height of the basic peak, w[2] that changes the width (or in buzz-speak, dilates) the peak, w[3] to move the peak along the X axis. The only thing that's different from other peak shapes is w[4] which is passed directly to the Voigt(X,Y) function and alters the ratio of Lor/Gauss. Because the underlying Voigt(X,Y) function changes height and width as you change the shape factor Y, so does Igor's Voigt peak shape fitting function.
John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
March 1, 2016 at 09:59 am - Permalink
March 1, 2016 at 10:13 am - Permalink
The approximation used for the basic peak function has nothing to do with the constant area, or its use as a fitting function. All the approximations give pretty much constant area, to the accuracy of the approximation. The fitting function can't use the basic peak function because real fitting requires it to fit whatever peak height, width, shape, location, area, etc., is in your data. The equation I cited before:
w[0]+w[1]*Voigt(w[2]*(x-w[3]), w[4])
which possibly would be clearer if I wrote it as a complete equation:
y(x) = w[0]+w[1]*Voigt(w[2]*(x-w[3]), w[4])
applies the necessary modifications to the basic peak function to make it fit arbitrary data. The word "Voigt" there invokes the basic peak function. It is offset vertically by adding w[0] to the output of the basic peak function. It varies the height of the peak by multiplying the basic function by w[1]. The basic peak function has the peak value at X=0, but w[3] allows putting the peak at any location. The basic peak function has a given width, but by multiplying the X value by w[2] it can have any width.
John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
March 1, 2016 at 12:30 pm - Permalink
I never saw a response from you to my last reply to this thread's previous incarnation, regarding the relation of Igor's Voigt parameters to standard Voigt equations in the NIST Handbook:
http://www.igorexchange.com/node/6835
March 3, 2016 at 03:55 am - Permalink