I have a bunch of curves $f(x)$, and I have a parameter $\lambda$ that rescales $x$, such that $x \rightarrow x' = g(x, \lambda)$. I find the value of $\lambda$ that collapses all the curves on top of each other in a window of $x'$ values. After I do the minimization, I need an uncertainty in the parameter $\lambda^*$ which minimizes the variance of the curves, but I'm not really sure how to do so.

In more detail: I find $\lambda^*$ numerically by minimizing the variance in the curves $f(g(x, \lambda))$ for all $x'$ in the window. More explicitly, I minimize $\int_{window} dx' \, variance[f_i(x')]$, so I look at the spread of all curves for each $x'$ in the window.

As for getting the uncertainty, here is what I was thinking. The minimization routine I'm using (L-BFGS-B in python's Scipy package) gives me an estimate of the jacobian. I thought the uncertainty might be estimated as $\sigma_\lambda = \sqrt{\sigma_{x'}^2 H^{-1}}$, where $\sigma_{x'}^2$ is the integral of the variance in all my curves over $x'$ (ie this would be the value of the minimization function itself for $\lambda=\lambda^*$), and I could approximate the Hessian $H$ as the square of the numerical estimate of the Jacobian given by the routine ($H \approx J^T J = j_\lambda^2$). Is this correct? I am open to using other python tools if it is advantageous.



Clearly this old question didn't get much attention, but my solution was to do the optimization, then evaluate the sum of residuals with values nearby the optimal values explicitly. This will give a parabola near the minimum. Measuring the curvature of that parabola, $b$, results in an uncertainty of $2/b$ (see Bevington & Robinson, Data Reduction and Error Analysis, equation 8.11).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.