polylib::randpoly

Создайте случайный полином

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

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

Синтаксис

polylib::randpoly()
polylib::randpoly(<list>, <ring>, <Degree = n>, <Terms = k>, <Coeffs = f>, <Monic>)

Описание

polylib::randpoly() возвращает одномерный случайный полином с целочисленными коэффициентами; глобальный идентификатор x используется в качестве неопределенного.

polylib::randpoly(list) возвращает случайный полином во всем indeterminates, данном в list.

polylib::randpoly(list, ring) возвращает случайный полином в indeterminates, данном в list по коэффициенту звонят ring.

Смотрите poly для подробного описания возможного indeterminates и содействующих звонков.

Полином создается путем случайного выбора стольких же экспонент, сколько задано через опцию Terms и затем выбор случайных коэффициентов. Это может, конечно, произойти, что для некоторого коэффициента 0 выбран, поэтому фактическое количество условий в результате может быть меньшим, чем значение опции Terms.

Если опция Coeffs=f дан, случайные коэффициенты сгенерированы путем вызова f(). В противном случае, если ring Expr, коэффициенты будут случайными целыми числами в области значений - 999, …, 999. Если ring пользовательская область, она должна иметь метод "random" создать коэффициенты, если никакая функция не дана.

Если опция Monic дан, получившийся полином имеет точно заданную степень, и ведущий коэффициент равняется 1.

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

Взаимодействия среды

Если генератор не задан через опцию Coeffs, polylib::randpoly использование random создать экспоненты и коэффициенты. Поэтому это чувствительно к переменной окружения SEED.

Примеры

Пример 1

Мы генерируем одномерный случайный полином в неопределенном z, и используйте значения по умолчанию в других опциях. Поэтому полином имеет целочисленные коэффициенты, степени 5 и имеет 6 условий.

polylib::randpoly([z])

Пример 2

Мы создаем двумерный случайный полином по конечному полю с 7 элементами. Это работает потому что Dom::IntegerMod имеет "random" паз, который генерирует случайные элементы:

polylib::randpoly([x,y],Dom::IntegerMod(7),Degree=3,Terms=4);

Параметры

list

Список indeterminates

ring

Содействующий звонок

Опции

Degree

Опция, заданная как Degree = k

Максимальная степень результат может иметь в каждой переменной. k должно быть неотрицательное целое число. Значение по умолчанию равняется 6.

Terms

Опция, заданная как Terms = t

Делает polylib::randpoly сгенерируйте сумму t случайные условия. t должно быть положительное целое число или infinity. Если t равняется infinity, polylib::randpoly возвращает плотный полином. Значение по умолчанию равняется 5.

Coeffs

Опция, заданная как Coeffs = f

Создайте коэффициенты результата путем вызова f().

Monic

Созданный полином является monic, т.е. ведущий коэффициент равняется 1.

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

Полином в данном indeterminates по данному звонку. Если никакой список indeterminates не дан, [x] используется. Если никакой звонок не дан, Expr используется.

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

Функции MuPAD