ISMONOTONIC(X) returns a boolean value indicating whether or not a vector is monotonic.
By default, ISMONOTONIC returns true for non-strictly monotonic vectors,
and both monotonic increasing and monotonic decreasing vectors. For
matrices and N-D arrays, ISMONOTONIC returns a value for each column in
X.
ISMONOTONIC(X, 1) works as above, but only returns true when X is
strictly monotonically increasing, or strictly monotonically decreasing.
ISMONOTONIC(X, 0) works as ISMONOTONIC(X).
ISMONOTONIC(X, [], 'INCREASING') works as above, but returns true only
when X is monotonically increasing.
ISMONOTONIC(X, [], 'DECREASING') works as above, but returns true only
when X is monotonically decreasing.
ISMONOTONIC(X, [], 'EITHER') works as ISMONOTONIC(X, []).
ISMONOTONIC(X, [], [], DIM) works as above, but along dimension DIM.
NOTE: Third input variable is case insensitive, and partial matching is
used, so 'd' would be recognised as 'DECREASING' etc..
EXAMPLE:
x = [1:4; 6:-2:2 3]
ismonotonic(x)
ismonotonic(x, [], 'i')
ismonotonic(x, [], [], 2)
x =
1 2 3 4
6 4 2 3
ans =
1 1 1 1
ans =
1 1 0 0
ans =
1
0
NEW FEATURES in v1.1:
Code now fully vectorised.
Support for N-D arrays.
Character arrays now allowed.
ACKNOWLEDGEMENTS:
Thanks to Jos X for advice on vectorisation |