exponenta event banner

все

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

Описание

пример

all(A) проверяет, все ли элементы A возврат логический 1 (true). Если A является матрицей, all проверяет все элементы каждого столбца. Если A является многомерным массивом, all проверяет все элементы вдоль одного размера.

пример

all(A,dim) испытания вдоль размера A указано dim.

Примеры

Проверка всех элементов символьного вектора

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

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

Использовать all чтобы проверить, действительны ли все они для всех значений x:

all(V)
ans =
  logical
   1

Проверка всех элементов символьной матрицы

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

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

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

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

Задание размера для проверки вдоль

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

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

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

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

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

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

Тестовые массивы с числовыми значениями

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

syms x
all([0, x == x])
ans =
  logical
   0

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

all([1, 2, -3, 4 + i, x == x])
ans =
  logical
   1

Входные аргументы

свернуть все

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

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

Совет

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

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

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

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

См. также

| | | | |

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