What is the best non-linear least square fitting method that will parameter error in addition to parameters?
4 views (last 30 days)
Show older comments
Hi,
I have an array A,
A=[296/296 0.08485182/0.08485182
296/463 0.070180715/0.08485182
296/681 0.055920654/0.08485182
296/894 0.042669196/0.08485182
296/1098 0.03980615/0.08485182
];
now i have fitted array A to an objective function objfcn = @(b,x) b(1).*x.^b(2) + b(3).*x.^b(4); as below:
B0 = ones(4,1);
[B,rsdnrm] = fminsearch(@(b) norm(A(:,2) - objfcn(b,A(:,1))), B0);
fprintf(1, 'c_1 = %12.6f\nc_2 = %12.6f\nn_1 = %12.6f\nn_2 = %12.6f\n', B)
and i am satisfied with the fit. However, fminsearch method does not give errors on parameters (b(1),b(2),b(3),b(4)). I tried other methods such as ''lsqnonlin'' and "lsqcurvefit ", but they do not reproduce the same parameters that i obtain from fminsearch. I was wondering if anyone knows a robust nonlinear least square fit method that is able to estimate parameter error?
Thank you all
0 Comments
Accepted Answer
Star Strider
on 16 Oct 2019
2 Comments
Star Strider
on 17 Oct 2019
My pleasure.
If you prefer the fminsearch parameter estimates, use those as the initial parameter estimates for nlinfit or fitnlm. You can do the same with ga (genetic algorithm) optimisation parameter estimates, that searches the entire parameter space for the best parameter estimates.
More Answers (0)
See Also
Categories
Find more on Linear and Nonlinear Regression in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!