solvelib:: getElement

Получите один элемент набора

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

solvelib::getElement(S, <Random>)

Описание

solvelib::getElement(S) возвращает элемент S.

S может быть набором любого типа; смотрите solve для обзора всех наборов.

solvelib::getElement возвращает значение FAIL если:

  • S является пустым множеством

  • решатель не может найти элемент набора из-за ограничений решателя

  • решатель не может вычислить первый элемент набора. Можно использовать опцию Random, чтобы проверять случайный элемент набора вместо первого элемента

  • ответ зависит от анализа случая некоторого параметра

С опцией Random вероятность, чтобы получить какой-то конкретный элемент набора:

  • Примерно равный для элементов конечного множества

  • Пропорциональный кратности для элементов конечного мультимножества типа Dom::Multiset

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

Примеры

Пример 1

Если S является конечным множеством, решатель возвращает только один из элементов:

solvelib::getElement({2, 7, a})

Пример 2

Для наборов изображений решатель заменяет каждый параметр константой:

S:=Dom::ImageSet(k*PI, k, solvelib::BasicSet(Dom::Integer))

solvelib::getElement(S)

Пример 3

Если набор пуст, решатель не может найти элемент:

solvelib::getElement({})

solvelib::getElement может не найти элемент набора несмотря на то, что тот набор не пуст.

solvelib::getElement(solve(exp(x) + cos(x) = x^2,x))

Пример 4

Без опции Random solvelib::getElement всегда приводит к тому же результату для набора:

solvelib::getElement({$1..5}) $i=1..5

С опцией Random возвращенный элемент отличается случайным образом от "вызова к вызову":

solvelib::getElement({$1..5}, Random) $i=1..15

Распределение возвращенных значений близко к равномерному распределению. Для мультимножеств учтена кратность элементов:

solvelib::getElement(Dom::Multiset(1$4, 2$2), Random) $i=1..18

Пример 5

Для следующего набора, параметризованного целыми числами, решателю не удается найти элемент. Это вызвано тем, что решатель пробует только первую пару значения параметров k = 0, для которого результат не определен. После этого решатель не пробует никакие другие пары значения параметров:

solvelib::getElement(1/Z_)

Для наборов с неопределенным первым элементом можно получить результат, вызвав решатель с опцией Random:

solvelib::getElement(1/Z_, Random)

Параметры

S

Любой набор

Опции

Random

Возвращает случайный элемент набора. Без этой опции solvelib::getElement(S) всегда возвращает тот же элемент.

Возвращаемые значения

solvelib::getElement возвращает объект MuPAD® представление элемента S или FAIL, если никакой элемент не мог бы быть определен.

Перегруженный

S

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

Функции MuPAD