It would be nice if the wrapper could be updated to have the ability to do the fit in a way that allows limits if you supply them, so long as it was clear what algorithm was being called. Even just having a way to set parameters to be positive would be a huge improvement and address a multitude of cases (this is the most common limit issue).Ĭurve_fit is basically a wrapper for several other functions including leastsq that has simpler and more easily understood syntax. Thus without a range setting capability there really is not "simple and universal" way to handle the issue of constrained values. The result is that you have to manually play with starting guesses, out of bound returns, etc, creating uncertainty in the quality of your results. For example if you set an artificially high return on a function if it goes out of range in a case where the minima IS the edge of the allowed range, you can drive the function off toward another point by creating an artificially inflated gradient. But what works, if anything does, varies on a case by case basis and can in itself create false results. In some cases you can compensate, by having you function return an insane value, by running it in exponentiation, etc. The functions you mentioned might be acceptable in some cases, but are much more difficult to use correctly and use different fitting algorithms that may not be acceptable. Having this capability would constitute "simple and universally applicable", ie built into the function.
#ORIGIN PRO 8 NONLINEAR CURVE FIT NOT WORKING FREE#
This means that if your guess is less than ideal for any reason or the minima you are looking for is a local minima but not the minima of the function, the fitting is free to move out of the area that is being investigated. However there is no way in curve fit (or it's related functions such as leastsq, the most commonly used fit) to set a condition such as I stated at the start, ie p>0 to so that the variable cannot run negative, or 2
There is no simple and universally applicable method for preventing this from being an issue, as often in these cases the functional form may not be known or may not be defined in the forbidden region and thus there is no truly safe way to alter the functional output such that the fit returns to the safe region if it wanders out.
![origin pro 8 nonlinear curve fit not working origin pro 8 nonlinear curve fit not working](https://i.ytimg.com/vi/boVBGiD5AxA/maxresdefault.jpg)
Many unacceptable fit parameters are easily avoidable if the package simply were able to be told not to proceed into certain areas, but instead the algorithms can fall into extant but known unacceptable minima very easily. This SEVERALLY limits the usefulness of the package as a whole, as there is no way to prevent the optimization from sliding into unacceptable or non-physical areas. The optimize functions do not have any way to set parameter limits, for example stating p>=0 to prevent the fitting from attempting negative values.