Effacer les filtres
Effacer les filtres

ln not recognised as a command

2 vues (au cours des 30 derniers jours)
Niels
Niels le 25 Juil 2013
Hello
I've entered the following formula in a function file:
heightModel = @(params,ages) (params(3)+params(4).*(ages/12)+params(5).*log((1+(ages/12))).*(1-exp(1).^(-exp(1).^(params(1)-params(2).*(ages/12))))+params(6).*exp(1).^(-exp(1).^(params(1)-params(2).*(ages/12)))); modelStrings = {'A','B','C','D','E','U'};
this works perfect but is not the good formula. The only thing that needs to change is the log in a ln
but if i do this i get the following error Undefined function 'ln' for input arguments of type 'double'.
Error in getModel/@(params,ages)(params(3)+params(4).*(ages/12)+params(5).*ln((1+(ages/12))).*(1-exp(1).^(-exp(1).^(params(1)-params(2).*(ages/12))))+params(6).*exp(1).^(-exp(1).^(params(1)-params(2).*(ages/12))))
Error in lsqcurvefit (line 199) initVals.F = feval(funfcn_x_xdata{3},xCurrent,XDATA,varargin{:});
Error in fitFilteredModel (line 13) [parameters,resnorm,residual,exitflag,output] = lsqcurvefit(heightModel,initialValues,filteredData(:,1),filteredData(:,2));
Error in main (line 43) fitFilteredModel(ages(i),models{k},genders{j},data,individualFit);
Caused by: Failure in initial user-supplied objective function evaluation. LSQCURVEFIT cannot continue.
Anyone willing to help me out. I'm a biologist so my coding knowledge is very limited.
Thanks

Réponse acceptée

Iain
Iain le 25 Juil 2013
You can fix it by putting:
ln = @(x)(log(x));
at the start of your code...
or replace ln with "log"
  1 commentaire
Jan
Jan le 25 Juil 2013
Faster alternatively: ln = @log

Connectez-vous pour commenter.

Plus de réponses (1)

Evan
Evan le 25 Juil 2013
Modifié(e) : Evan le 25 Juil 2013
help log
If you read the help file for log, you'll see that it is the natural logarithm function. ln is not a built-in function. log10 is the function for computing the base-10 logarithm.

Catégories

En savoir plus sur Time Series dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by