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 Center および File ExchangeGet 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