Проверяйте, является ли аргумент неопределенным типом класса
B = isuncertain(A)
Возвращает true
, если входной параметр сомнителен, false
в противном случае. Неопределенными классами является umat
, ufrd
, uss
, ureal
, ultidyn
, 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