lsqnonlin -not enough input arguments-

7 visualizaciones (últimos 30 días)
noemi91d
noemi91d el 4 de Mayo de 2016
Editada: Matt J el 4 de Mayo de 2016
Hi all!
I need some help with lsqnonlin. The function is:
function [y] = FUN(p,t)
k1 = p(1);
k2 = p(2);
y=(exp(-k1*t)-exp(-k2*t))*((k1*k2)/(k2-k1));
And:
[p_stima] = lsqnonlin(@FUN,[0.4 0.5],[]);
The error is:
Not enough input arguments.
Error in FUN (line 4)
y=(exp(-k1*t)-exp(-k2*t))*((k1*k2)/(k2-k1));
Error in lsqnonlin (line 196)
initVals.F = feval(funfcn{3},xCurrent,varargin{:});
Error in plotHistFit (line 88)
[p_stima] = lsqnonlin(@FUN,[0.4 0.5],[]);
Caused by:
Failure in initial objective function evaluation. LSQNONLIN cannot continue
Thank you in advance.
Best regards

Respuestas (1)

Torsten
Torsten el 4 de Mayo de 2016
Your FUN function must only have one argument, namely p.
Best wishes
Torsten.
  1 comentario
Matt J
Matt J el 4 de Mayo de 2016
Editada: Matt J el 4 de Mayo de 2016
Therefore, the following modification could solve the issue,
t=???;
[p_stima] = lsqnonlin(@(p) FUN(p,t) , [0.4 0.5],[]);

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by