Question about ''width'' value in Voigt profile

Hi everyone,

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 few things to appreciate here are as follows:

* 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
Are you using Multipeak Fit 2?

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
Hi,

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.
Konstantinos Chatzipanagis wrote:
If ... [I] 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.


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
Thanks very much for these.....I already had a look at them and yes i also think that this equation i gave is an approximation since there is no analytic expression for voigt profile....i found it in a traditional paper by Whiting....I have the feeling that Igor utilizes this formula to derive the FWHM of the voigt (if i am not deadly mistaken) by the corresponding Gaussian and Lorentzian width values. However, the question of what the simple ''width'' value stands for still remaines elusive.....I can not understand how it is related to the Gaussian width (which seems to be the FWHM of the Gaussian part).....As i mentioned previously this ''width'' value is related to the Gaussian contribution because by fixing it and changing the shape parameter it looks that the Gaussian width remains the same and only the Lorentzian width changes and as a result the FWHM of the total voigt.
The Voigt peak shape fitting function is based on the Voigt(X,Y) function, where X is the x value and Y is the shape factor. This function returns a peak with constant area as you change the ratio of the Gauss and Lorenz contributions. You are correct- the shape factor keeps the Gaussian width constant and varies the peak height to maintain constant peak area.

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
Thanks very much for this....However, could you give some reference for this equation? i have a bit of difficulty to get my head around just by seeing it in this form....Did you get it from a paper or so? I just need to see what each component refers to. If you have some sort of publication that you took it from please post it here. Thanks again
One more things.....You mentioned John that when you change the shape factor the peak area of the voigt remaines the same....However, i tried it and it seems that changing the shape factor i get different values for ''Area''....Am i missing something here?
Konstantinos Chatzipanagis wrote:
Thanks very much for this....However, could you give some reference for this equation?


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
Hello,

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.
One source for our implementation of Voigt fitting is R.J. Wells, Rapid Approximation to the Voigt/Fadeeva Function and Its Derivatives, Journal of Quantitative Spectroscopy and Radiative Transfer, V 62, 1999, pp 29-48.

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
Thanks for this John.....I am using Igor 6.37.....i guess Igor 7 beta is a newer version? If i understand properly, the fitting function in multipeak fit 2 is an approximation of the Voigt function and it does not keep a constant area.....Does that mean that Igor 7 beta contains an updated (more accurate) Voigt function?
There is no mystery to this- a true Voigt peak is the result of a convolution, which is very computationally expensive. Various people have published approximations that are fast to compute. The one used in Igor 7 is somewhat more accurate than the one given in the Wells paper.

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