any

Протестируйте, допустимо ли по крайней мере одно из уравнений и неравенств, представленных как элементы символьного массива,

Синтаксис

Описание

пример

any(A) тесты, ли по крайней мере один элемент A возвращает логический 1 TRUE). Если A матрица, any тестовые элементы каждого столбца. Если A многомерный массив, any тестовые элементы по одному измерению.

пример

any(A,dim) тесты по измерению A заданный dim.

Примеры

Тестовый вектор символьных условий

Создайте векторный V это содержит символьное уравнение и неравенства как его элементы:

syms x real
V = [x ~= x + 1, abs(x) >= 0, x == x];

Используйте any протестировать, допустим ли по крайней мере один из них для всех значений x:

any(V)
ans =
  logical
   1

Тестовая матрица символьных условий

Создайте эту матрицу символьных уравнений и неравенств:

syms x real
M = [x == 2*x, x == abs(x); abs(x) >= 0, x == 2*x]
M =
[    x == 2*x, x == abs(x)]
[ 0 <= abs(x),    x == 2*x]

Используйте any протестировать уравнения и неравенства этой матрицы. По умолчанию, any тесты, допустим ли какой-либо элемент каждого столбца для всех возможных значений переменных. Если по крайней мере одно уравнение или неравенство в столбце допустимы (возвращает логический 1), затем any возвращает логический 1 для того столбца. В противном случае это возвращает логический 0 для столбца. Таким образом это возвращает 1 для первого столбца и 0 для второго столбца:

any(M)
ans =
  1×2 logical array
   1   0

Задайте размерность, чтобы протестировать вперед

Создайте эту матрицу символьных уравнений и неравенств:

syms x real
M = [x == 2*x, x == abs(x); abs(x) >= 0, x == 2*x]
M =
[    x == 2*x, x == abs(x)]
[ 0 <= abs(x),    x == 2*x]

Для матриц и многомерных массивов, any может протестировать элементы в заданном измерении. Чтобы задать размерность, используйте второй аргумент any. Например, чтобы протестировать элементы каждого столбца матрицы, используйте значение 1 в качестве второго аргумента:

any(M, 1)
ans =
  1×2 logical array
   1   0

Чтобы протестировать элементы каждой строки, используйте значение 2 в качестве второго аргумента:

any(M, 2)
ans =
  2×1 logical array
   0
   1

Протестируйте массивы с числовыми значениями

Протестируйте, возвращает ли какой-либо элемент этого вектора логический 1. Обратите внимание на то, что any также преобразует все числовые значения вне уравнений и неравенств к логическому 1s и 0s. Числовое значение 0 становится логическим 0:

syms x
any([0, x == x + 1])
ans =
  logical
   0

Все ненулевые числовые значения, включая отрицание и комплексные числа, становятся логическим 1s:

any([-4 + i, x == x + 1])
ans =
  logical
   1

Входные параметры

свернуть все

Введите, заданный как символьный массив. Например, это может быть массив символьных уравнений, неравенств или логических выражений с символьными подвыражениями.

Размерность, заданная как целое число. Например, если A матрица, any(A,1) тестовые элементы каждого столбца и возвращают вектор-строку из логического 1s и 0s. any(A,2) тестовые элементы каждой строки и возвращают вектор-столбец логического 1s и 0s.

Советы

  • Если A пустой символьный массив, any(A) возвращает логический 0.

  • Если некоторые элементы A только числовые значения (не уравнения или неравенства), any преобразует эти значения можно следующим образом. Все ненулевые числовые значения становятся логическим 1. Значение 0 становится логическим 0.

  • Если A вектор, и любой из его элементов возвращает логический 1, any(A) возвращает логический 1. Если все элементы являются нулем, any(A) возвращает логический 0.

  • Если A многомерный массив, any(A) обрабатывает значения по первому измерению, которое не равно 1 (неодноэлементная размерность) как векторы, возвращая логический 1 или 0 для каждого вектора.

Смотрите также

| | | | |

Представленный в R2012a