Определите, 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