Custom m-file function in fitting tool
2 views (last 30 days)
Show older comments
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 Comment
bym
on 23 Jan 2011
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
Answers (1)
Jon Cherrie
on 30 Mar 2011
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
- it has an input for the x-data, x
- it has one input for each coefficient, a, b and c.
- the y-data, y, that is returned is the same size as x
- 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.
0 Comments
See Also
Categories
Find more on Get Started with Curve Fitting Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!