Curve Fitting Using External Function

6 次查看(过去 30 天)
Using the Curve Fitting Toolbox, is it possible to put the fitting function outside of the fittype? A general example of the way I want this to be is:
FitOpt=fitoptions('Method', 'NonlinearLeastSquares','Lower',0.1*Y00, 'Upper',10*Y00,'StartPoint',Y00);
XYFit=fittype(MyFitFunction(a,X),'dependent', {'y'}, 'independent' , {'x'},'coefficient', {'E'});
f1 = fit(x0,y0,XYFit,FitOpt)
.
.
.
function F0=MyFitFunction(a,x)
F0=a*x.^2-1./x);
end
Where I would like MyFitFunction to be outside the fittype definition, but when I try this I get this error message:
Unrecognized function or variable 'a'
If I take the function into the fittype and write:
XYFit=fittype(@(a,X) a*x.^2-1./x),'dependent', {'y'}, 'independent' , {'x'},'coefficient', {'E'});
then it will work, but this is not the form that I want.
How is this possible?

回答(1 个)

Image Analyst
Image Analyst 2021-10-7
Did you try
XYFit=fittype(@MyFitFunction(a,X),..........................
  4 个评论
Saeid
Saeid 2021-10-18
Hi,
whenI do that, I see a new error message:
Error using fittype>iCreateFittype (line 362)
First input argument must be a string scalar or character vector, cell array or anonymous function.
Error in fittype (line 330)
obj = iCreateFittype( obj, varargin{:} );
Image Analyst
Image Analyst 2021-10-18
Call tech support because I don't have that function.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Linear and Nonlinear Regression 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by