Is the skew parameter from lmfit models like SkewedVoigtModel() absolute or relative?

90 Views Asked by At

It's unclear to me from the documentation for lmfit's Skewed-type models like (SkewedVoigtModel()) if the skew parameter returned from the fit is absolute or relative. In this sense I mean, if I have several datasets all with a similar underlying Voigt distribution, but all with different skew values, and I fit each dataset to model = SkewedVoigtModel() independenlty, can I compare the skew values between these fits to tell me something about how these datasets are changing set to set?

From the wikipedia article on Skew Normal Distribution (https://en.wikipedia.org/wiki/Skew_normal_distribution), it doesn't exactly seem that skew values should be used to make inferences, perhaps my weak background in statistics is making it hard to understand the article pointed to as reference https://doi.org/10.1080/02664760050120542.

(If you are curious, in my specific case, the datasets are spectrums for laser induced fluorescence in a single gaseous conditions with the spectrums coming from binning the fluorescent chord into several small bins, and I'd like to be able to test whether my laser beamspot is spatially drifting as a function of wavelength and how much it is drifting.)

I have plotted skew vs. bin-dataset, which for many conditions shows a linear trend of skew across the dataset (indicative of my fluorescent chord moving on a ccd). However, not all of these dataset-skew plots for a given gaseous condition show the same linear trend and some have erratic changes in skew between adjacent bins.

All that to say, I'd guess skew is absolute, but I want to double-check with those more experienced with lmfit.

Thanks!

1

There are 1 best solutions below

0
M Newville On

The SkewedVoigtModel, with mathematical form, is documented at https://lmfit.github.io/lmfit-py/builtin_models.html#skewedvoigtmodel and the code for the function used is at https://github.com/lmfit/lmfit-py/blob/468873a081bf4bcde90ab3a92e91a4119e07a913/lmfit/lineshapes.py#L332

Both of those say that the non-skewed lineshape (here, a regular Voigt function) is multiplied by

    (1  + erf(skew * (x-center) / (sqrt(2)*sigma)))

(I think the meaning for each of those terms should be pretty obvious to anyone asking the question).

For that form, I don't know what "relative" or "absolute" mean to you. If I was forced to choose one of those words, I might guess "relative" in that the center is removed from x and the skew value is divided by sigma to give the x-range over which the erfc function is turning on.

I have no idea why that value should not be used to make inferences. I think one ought to be able to draw conclusions about any variable Parameter with a finite (or maybe "not enormous") uncertainty. Maybe I am not understanding the point.