How to remove the data-type error in lsqcurvefit ?

2 views (last 30 days)
Hello,
I am using MATLAB version R2006b.
I have a doubt in the optimization function "LSQCURVEFIT".
I have written the argument in command window as:
S = lsqcurvefit(@optim, kro, Cdata, ydata)
where "S" is a optim function input argument variable as:
function F = optim(S,Cdata);
Please note that both Cdata and ydata that I am supplying are double type arrays.
When I am running the lsqcurvefit command in command window the error that is coming is:
**LSQCURVEFIT cannot continue because user supplied objective function failed with the following error: Undefined function or method 'S' for input arguments of type 'double'.
Error in ==> lsqcurvefit at 182 [x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...**
Please help how should I resolve this issue ?

Accepted Answer

Laura Proctor
Laura Proctor on 24 Dec 2012
It looks like the issue might be in the optim function in the use of the input variable S. Can you make a simple call to optim without receiving the error?
  1 Comment
Suraj
Suraj on 24 Dec 2012
Hey, Thanks a lot.
S is a input variable to the optim function. The value of S will be the output of lsqcurvefit.
Now, I just want to know how should I simply call the optim.m function ?
There is another input to the function optim.m which is Cdata.
In the command window, I am supplying the value of Cdata.
And then I am using "run optim.m"
I don't why it is showing "Input argument Cdata is undefined"
Help please.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!