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 и 0с. any(A,2) проверяет элементы каждой строки и возвратов вектора-столбца логических 1s и 0с.

Совет

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

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

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

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

См. также

| | | | |

Введенный в R2012a