I routinely use a non-linear curve fitting tool to fit data according to a user prescribed model / function. One piece of advice that I commonly see around non-linear curve fitting is about data conditioning, specifically scaling and centering. Consider the simple 2D model:
$y = \dfrac{a}{x^{2}} + b$
The scaled (and centered in the case of the $x$ array) arrays which can be passed to the curve fitting tool are:
$x' = \left[(x - c_{0}) / c_{1}\right] - 0.5$
$y' = (y - k_{0}) / k_{1}$
where $c_{0}$ and $k_{0}$ are minima in each series and $c_{1}$ and $k_{1}$ are the ranges. When we perform the fit, we are fitting the model
$y' = \dfrac{a'}{x'^{2}} + b'$
The curve fitting tool returns $a'$ and $b'$. It is straightforward to un-scale $b'$ to find $b$.
Thoughts are welcome on how to translate $a'$ to $a$.