# held fit coefficient - error propagation

Fri, 01/07/2022 - 08:41 pm

Hello,

I wonder if there is a possibility to propagate error from a held fit coefficient to other fit coefficients.

Let say I want to fit my data with a parabolic function:

**y = b + a x ^{2},**

but for some reason I want to keep a value of parameter **b** fixed during a fit (**b=b _{0}**). I know the value of

**b**only with certain precision:

**b**. I believe that I should propagate uncertainty

_{0}+/-db**db**to get total uncertainty of a fit parameter

**a**. Is there a simple way to include this in Igor fitting command?

I will be grateful for any help.

Regards,

Rafal

P.S.

I worked it around doing multiple fits corresponding to different **b** values, and then determined a slope "**a** *vs* **b**" and propagated errors. However, I hope there is and easier and more elegant solution.

Your example is linear in the coefficients, so if the distribution of b uncertainty is normal, it should just add. But things are rarely so straight-forward, eh?

If your equation is just an example, and your real equation is nonlinear in the coefficients, it's likely that a Monte Carlo technique will be the best.

Oh, wait- I think what I just said is true for the uncertainty in predicting values of y, not the uncertainty in a. Perhaps someone else with greater statistical knowledge will have other ideas.

January 10, 2022 at 09:17 am - Permalink

Thank you for the response.

Yes, this was was an example, to demonstrate my problem. In general, the fitting function is a nonlinear function of fit coefficients. In my case, it is a convolution of the Fermi function (temperature dependent) and the Gaussian. Energy is independent variable. I would like to keep the temperature constant, but on the other hand I know that it is characterized by some uncertainty, which propagate to other fit parameter (resolution = FWHM of the Gaussian).

I hoped that there is an option implemented in Igor allowing to specify uncertainties of held fit parameters.

January 10, 2022 at 05:15 pm - Permalink

That would involve some sort of inversion through an unknown nonlinear function, wouldn't it? Better do a Monte Carlo simulation. We have a number of different noise functions with various distributions.

January 11, 2022 at 10:17 am - Permalink

I wonder whether you are making more work than needed or approaching the problem from a skewed perspective. Call Y the convolution for the Fermi function F(E, T) and Gaussian function G(E) as Y = \int F(E,T) * G(E)* dE. The result Y has an uncertainty that depends on the uncertainties for the other variables, in this case E and T. The uncertainty (or error) in E is not dependent on the uncertainty in T (and visa-versa).

You may hold T constant to obtain an initial guess. You will certainly have a fitting results for E ± \Delta E that will depend on the value that you choose for T. But this variation is not the due fundamentally (analytically) to a true (first-principled) connection between E and T or \Delta E and \Delta T. So it seems to be confusing if not wrong to ask about the existence of numerical analysis methods that will try to force such a connection to exist.

I would hold T constant, stepping through a range of expected T values. I would plot E ± \Delta E as a function of T. Actually, I would probably plot \Delta E/E versus (T - T_o)/T_o, where T_o is the proposed input parameter for system temperature. In this way, (T - T_o)/T_o maps the relative uncertainty in temperature. By example, (T - T_o)/T_o maps the physical uncertainty in the set point in the temperature controller or it maps the variability in in the result because the temperature at one point on the sample is not the same at the temperature at another on the sample, e.g. due to variation in the heat loss or input. The term \Delta E/E maps the corresponding relative uncertainty in energy when the sample is truly at a value of T yet your have forced it to be at T_o. Just for fun, I would probably also plot the chi-squared value for the fit to the data versus relative temperature.

January 11, 2022 at 04:52 pm - Permalink

Hello,

Thanks for your responses (jjweimar & johnweeks). I understand that the main idea is to perform fits for different values of held coefficient.

I did this: I changed the temperature between 6 and 16 K (11 K corresponds to the measured value) in steps, but I haven't noticed any significant change in other fit parameters. So it looks that I really overcomplicated the problem.

January 11, 2022 at 09:57 pm - Permalink

I have less statistical expertise than John, but I would like to understand the formulation and constraints on your problem. If the measurements can be represented as

ywhere 'i' refers to sequential measurements, can_{i}= b_{i}+ a_{i }x_{i}^{2},bais also a normally distributed variable, with unknown mean and variance. If this is acceptable, I believe you could use maximum-likelihood estimation to find the Fisher Information Matrix, and from that compute the Cramer-Rao Bound on the variance ofain terms of the variance onb.January 12, 2022 at 08:18 am - Permalink

In reply to I have less statistical… by s.r.chinn

Hmmm... that second paragraph would seem to indicate otherwise, Steve.

January 12, 2022 at 09:45 am - Permalink

In reply to I have less statistical… by s.r.chinn

Thanks, it looks that this exactly what I need. I'm not familiar with the concept of Fisher Information Matrix, but I will do research on this and try to implement it.

January 12, 2022 at 11:00 pm - Permalink

In a course I took a few years ago, the necessary topics were covered in its recommended text "Detection, Estimation, and Modulation Theory: Part 1" by H. L. Van Trees (ISBN 0-471-09517-6). It is not an easily digestible book; you might find other alternatives. Fortunately, the relevant topics are in the first chapter.

January 13, 2022 at 07:06 am - Permalink