Custom m-file function in fitting tool

2 次查看(过去 30 天)
Thomas
Thomas 2011-1-23
Dear Sir/Madam, I have a question regarding the fitting tool. I was wondering if it is possible to use a custom function from a m-file in an equation used for fitting.
Thanks in advance, Thomas van der Vliet
  1 个评论
bym
bym 2011-1-23
the basic tool does not provide for custom functions. If you could provide more information about you data and custom function, perhaps there is a work around

请先登录,再进行评论。

回答(1 个)

Jon Cherrie
Jon Cherrie 2011-3-30
Yes, it is possible to use a Custom Equation in CFTOOL defined from a MATLAB file. Here is an example. Start by creating a file like this:
function y = my_curve( x, a, b, c )
y = zeros( size( x ) );
isLeft = x < 0.5;
y(isLeft) = a + b*x(isLeft);
y(~isLeft) = a + c*x(~isLeft);
end
The key things about this file are
  1. it has an input for the x-data, x
  2. it has one input for each coefficient, a, b and c.
  3. the y-data, y, that is returned is the same size as x
  4. it will work when the x-data, x, is a vector.
In CFTOOL you can then follow the usual steps to create a Custom Equation. Choose a General rather than Linear equation. For the equation, enter my_curve( x, a, b, c ).
If you need a surface, then you can do all the same stuff in SFTOOL, just add an input argument for y-data and make sure that your function works when the x- and y-data are vectors.

类别

Help CenterFile Exchange 中查找有关 Get Started with Curve Fitting Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by