Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

fit type, automatic variable input

Asked by Manuel on 24 Jul 2012

Hello,

I am using matlab for non linear fitting of nonlinear model parameters to data, with parameters constrains.

My model is something like this:

model(s1,sy,syD,su,ep,eu,b2,b3,slin,ey,b1,x)

where the first 11 arguments are paramenters and x is the variable

To fit the parameters I want to use:

mdl = @(s1,sy,syD,su,ep,eu,b2,b3,slin,ey,b1,x) model(s1,sy,syD,su,ep,eu,b2,b3,slin,ey,b1,x); fit_typ = fittype(mdl,'option',fit_opt); [Yfitt,gof,output]=fit(X,Y,fit_typ,'Start',p)

and is ok. But if I change the name of the parameter that I want to fit, I need to change it in the code manually.

Is there any way to automatically insert the parameter names from the input or a variable that I define at the beginning??

I have tryed something like:

a={s1,sy,syD,su,ep,eu,b2,b3,slin,ey,b1}

or

a={'s1','sy','syD','su','ep','eu','b2','b3','slin','ey','b1'}

and then

mdl = @(a,x)model(a,x); fit_typ = fittype(mdl,'option',fit_opt); [Yfitt,gof,output]=fit(X,Y,fit_typ,'Start',p)

But it doesn't work. Thank you very much in advance.

0 Comments

Manuel

Products

0 Answers

Contact us