isequaln

Test symbolic objects for equality, treating NaN values as equal

Description

example

isequaln(A,B) returns logical 1 (true) if A and B are the same size and their contents are of equal value. Otherwise, isequaln returns logical 0 (false). All NaN (not a number) values are considered to be equal to each other. isequaln recursively compares the contents of symbolic data structures and the properties of objects. If all contents in the respective locations are equal, isequaln returns logical 1 (true).

example

isequaln(A1,A2,...,An) returns logical 1 (true) if all the inputs are equal.

Examples

Compare Two Expressions

Use isequaln to compare these two expressions:

syms x
isequaln(abs(x), x)
ans =
  logical
   0

For positive x, these expressions are identical:

assume(x > 0)
isequaln(abs(x), x)
ans =
  logical
   1

For further computations, remove the assumption on x by recreating it using syms:

syms x

Compare Two Matrices

Use isequaln to compare these two matrices:

A = hilb(3);
B = sym(A);
isequaln(A, B)
ans =
  logical
   0

Compare Vectors Containing NaN Values

Use isequaln to compare these vectors:

syms x
A1 = [x NaN NaN];
A2 = [x NaN NaN];
A3 = [x NaN NaN];
isequaln(A1, A2, A3)
ans =
  logical
   1

Input Arguments

collapse all

Inputs to compare, specified as symbolic numbers, variables, expressions, functions, vectors, or matrices. If one of the arguments is a symbolic object and the other one is numeric, the toolbox converts the numeric object to symbolic before comparing them.

Series of inputs to compare, specified as symbolic numbers, variables, expressions, functions, vectors, or matrices. If at least one of the arguments is a symbolic object, the toolbox converts all other arguments to symbolic objects before comparing them.

Tips

  • Calling isequaln for arguments that are not symbolic objects invokes the MATLAB® isequaln function. If one of the arguments is symbolic, then all other arguments are converted to symbolic objects before comparison.

Introduced in R2013a