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
Незаданный для элементов бесконечного множества. Практически, тот же результат не происходит дважды для бесконечных множеств.
Если S
является конечным множеством, решатель возвращает только один из элементов:
solvelib::getElement({2, 7, a})
Для наборов изображений решатель заменяет каждый параметр константой:
S:=Dom::ImageSet(k*PI, k, solvelib::BasicSet(Dom::Integer))
solvelib::getElement(S)
Если набор пуст, решатель не может найти элемент:
solvelib::getElement({})
solvelib::getElement
может не найти элемент набора несмотря на то, что тот набор не пуст.
solvelib::getElement(solve(exp(x) + cos(x) = x^2,x))
Без опции 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
Для следующего набора, параметризованного целыми числами, решателю не удается найти элемент. Это вызвано тем, что решатель пробует только первую пару значения параметров k = 0
, для которого результат не определен. После этого решатель не пробует никакие другие пары значения параметров:
solvelib::getElement(1/Z_)
Для наборов с неопределенным первым элементом можно получить результат, вызвав решатель с опцией Random
:
solvelib::getElement(1/Z_, Random)
|
Любой набор |
|
Возвращает случайный элемент набора. Без этой опции |
solvelib::getElement
возвращает объект MuPAD® представление элемента S
или FAIL
, если никакой элемент не мог бы быть определен.
S