Определите, линейны ли cfit
, sfit
или объект fittype
flag = islinear(fun)
flag = islinear(fun)
возвращает flag
1
, если cfit
, sfit
или объект fittype
, fun
представляет линейную модель и flag
0
, если это не делает.
islinear
принимает, что все пользовательские модели, заданные функцией fittype
использование синтаксиса ftype = fittype('expr')
, являются нелинейными моделями. Чтобы создать линейную модель с fittype
, который будет распознан линейным islinear
(и, значительно, алгоритмами fit
), используют синтаксис ftype = fittype({'expr1','expr2',...,'exprn'})
.
f = fittype('a*x+b') f = General model: f(a,b,x) = a*x+b g = fittype({'x','1'}) g = Linear model: g(a,b,x) = a*x + b h = fittype('poly1') h = Linear model Poly1: h(p1,p2,x) = p1*x + p2 islinear(f) ans = 0 islinear(g) ans = 1 islinear(h) ans = 1