Passing extra arguments to `nlinfit` function

I am in interested in passing extra arguments to nlinfit function in Matlab
beta = nlinfit(X,Y,modelfun,beta0)
and let the modelfun is
function y = modelfun(beta, c, X)
y = beta(1)*x.^(beta2) + c;
My interest is to estimate beta and also to provide c externally. X and Y have their obvious meanings.
Can it be done?

 Akzeptierte Antwort

Star Strider
Star Strider am 19 Jul. 2018

2 Stimmen

Your function must have your parameter vector as the first argument, your independent variable as the second argument, and any added parameters after that.
Try this:
Beta = nlinfit(X,Y,@(beta,X)modelfun(beta, c, X),beta0)
See the documentation on Passing Extra Parameters (link).

2 Kommentare

Pankaj
Pankaj am 20 Jul. 2018
thanks
Star Strider
Star Strider am 20 Jul. 2018
As always, my pleasure.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Gefragt:

am 19 Jul. 2018

Bearbeitet:

am 1 Aug. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by