Проверяйте, является ли аргумент неопределенным типом класса
B = isuncertain(A)
Возвращает true если входной параметр сомнителен, false в противном случае. Неопределенными классами является umat, ufrd, uss, ureal, ultidyn, umargin, ucomplex, ucomplexm, и udyn.
В этом примере вы проверяете правильную операцию isuncertain на double, ureal, ss, и uss objects.
isuncertain(rand(3,4))
ans =
0
isuncertain(ureal('p',4))
ans =
1
isuncertain(rss(4,3,2))
ans =
0
isuncertain(rss(4,3,2)*[ureal('p1',4) 6;0 1])
ans =
1
isuncertain только проверяет класс входного параметра и на самом деле не проверяет, что входной параметр действительно сомнителен. Создайте umat путем подъема константы (т.е. не - сомнительный) матрица к umat класс.
A = umat([2 3;4 5;6 7]);
Обратите внимание на то, что несмотря на то, что A находится в классе umat, это не на самом деле сомнительно. Тем не менее, на основе класса, результата isuncertain(A) true.
isuncertain(A)
ans =
1
Результат simplify(A) double, и следовательно весьма бесспорный.
isuncertain(simplify(A))
ans =
0