Протестируйте символьные объекты на равенство, обработав значения NaN
как равные
isequaln(A,B)
isequaln(A1,A2,...,An)
isequaln(
возвращает логический A,B
)1
, (TRUE), если A
и B
одного размера, и их содержимое имеет равную ценность. В противном случае isequaln
возвращает логический (FALSE) 0
. Весь NaN
(не номер) значения считается равным друг другу. isequaln
рекурсивно сравнивает содержимое символьных структур данных и свойства объектов. Если все содержимое в соответствующих местоположениях равно, isequaln
возвращает логический (TRUE) 1
.
isequaln(
возвращает логический A1,A2,...,An
)1
, (TRUE), если все входные параметры равны.
Используйте isequaln
, чтобы сравнить эти два выражения:
syms x isequaln(abs(x), x)
ans = logical 0
Для положительного x
эти выражения идентичны:
assume(x > 0) isequaln(abs(x), x)
ans = logical 1
Для дальнейших вычислений удалите предположение на x
путем воссоздания его с помощью syms
:
syms x
Используйте isequaln
, чтобы сравнить эти две матрицы:
A = hilb(3); B = sym(A); isequaln(A, B)
ans = logical 0
Сравнение векторов, содержащих значения NaN
Используйте isequaln
, чтобы сравнить эти векторы:
syms x A1 = [x NaN NaN]; A2 = [x NaN NaN]; A3 = [x NaN NaN]; isequaln(A1, A2, A3)
ans = logical 1
Вызов isequaln
для аргументов, которые не являются символьными объектами, вызывает функцию MATLAB® isequaln
. Если один из аргументов является символьным, то все другие аргументы преобразованы в символьные объекты перед сравнением.