Solving equation by lsqnonlin function gives warning in MATLAB
Show older comments
I'm given data for x,y, and z. I am trying to fit a set of data into a model of functional form as described below:
z(x,y) = c1 + c2.* exp(-(c3 .* x)) + c4.* (y.^1);
where c1, c2, c3, c4 are the coefficients to be found.
I tried to use lsqnonlin function but I am getting the message as
lsqnonlin stopped because the final change in the sum of squares relative to its initial value is less than the default value of the function tolerance.
I have following data e.g
% Here x,y are independent variables and z is dependent variable
x= [1 .. 12];
y= [0.001 .. 0.7];
z= [0.996474846 .. 0.432743332];
model = @(c) c(1) + c(2)*exp(-c(3)*x) + c(4)*y - z;
C = lsqnonlin(model, [1 1 1 1])
Why I am getting this message? Any advice.
Thankyou in advance
3 Comments
Walter Roberson
on 21 Nov 2013
Considering that it is working numerically, what conditions are you expecting will make it decide to stop, and what message are you expecting it will give when it encounters those conditions ?
Syeda
on 21 Nov 2013
Syeda
on 21 Nov 2013
Answers (0)
Categories
Find more on Get Started with Curve Fitting Toolbox 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!