Section: Mathematical Operators
y = a < b y = a <= b y = a > b y = a >= b y = a ~= b y = a == b
where a and b are numerical arrays or scalars, and y is a logical array of the appropriate size. Each of the operators has three modes of operation, summarized in the following list:
a is a scalar, b is an n-dimensional array - the output is then the same size as b, and contains the result of comparing each element in b to the scalar a.
a is an n-dimensional array, b is a scalar - the output is the same size as a, and contains the result of comparing each element in a to the scalar b.
a and b are both n-dimensional arrays of the same size - the output is then the same size as both a and b, and contains the result of an element-wise comparison between a and b.
C, with unequal types meing promoted using the standard type promotion rules prior to comparisons. The only difference is that in FreeMat, the not-equals operator is ~= instead of !=.
--> a = randn(1,5) a = <double> - size: [1 5] Columns 1 to 3 -0.939406097470965928 -0.006488070068068280 -0.053095354754894804 Columns 4 to 5 -0.164794584325194143 0.010116755659839778 --> a>0 ans = <logical> - size: [1 5] Columns 1 to 5 0 0 0 0 1
Next, we construct two vectors, and test for equality:
--> a = [1,2,5,7,3] a = <int32> - size: [1 5] Columns 1 to 5 1 2 5 7 3 --> b = [2,2,5,9,4] b = <int32> - size: [1 5] Columns 1 to 5 2 2 5 9 4 --> c = a == b c = <logical> - size: [1 5] Columns 1 to 5 0 1 1 0 0