polylib:: makerat

Преобразуйте выражение в рациональную функцию по подходящему полю

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

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

Синтаксис

polylib::makerat(a, <maxd>)
polylib::makerat(l, <maxd>)

Описание

polylib::makerat(a) возвращает два полинома f и g по rationals и списку замен, таким образом, что применение замен к рациональной функции дает a.

polylib::makerat(l) делает то же самое для каждого элемента списка l и возвращает списки получившегося f и g.

polylib::makerat(a, maxd) заменяет d-th корни целых чисел элементами некоторого поля алгебраического расширения по rationals, если dmaxd, и возвращает полиномы f и g по тому дополнительному полю.

polylib::makerat(a) заменяет все иррациональные подвыражения (кроме идентификаторов) в a недавно созданными идентификаторами, таким образом, производя рациональную функцию по rationals. Это возвращает числитель и знаменатель той рациональной функции как полиномы по Expr и замены, которые будут сделаны возвратить числитель и знаменатель исходного входа a.

polylib::makerat(l) заменяет все иррациональные подвыражения во всех элементах l недавно созданными идентификаторами.

Каждое подвыражение заменяется тем же идентификатором каждый раз, когда это происходит.

Весь indeterminates входа и все новые идентификаторы становятся indeterminates результата, если второй аргумент maxd не дан.

Мнимая единица я обработан специальным способом: это заменяется элементом `#I` поля алгебраического расширения с минимальным полиномиальным `\#I`^2 + 1. Если я происхожу во входе, результат состоит из полиномов по тому дополнительному полю.

Если второй аргумент maxd дан, d-th корни rationals заменяются элементами подходящего полевого расширения rationals если dmaxd. Таким же образом вложенные дробные степени rationals заменяются, если знаменатель некоторой экспоненты не превышает maxd. В этом случае возвращенный результат состоит из полиномов по башне дополнительных полей по rationals.

Примеры

Пример 1

В самом простом случае (целочисленный полином), числитель равняется входу, знаменатель равняется 1, и никакие замены не необходимы:

polylib::makerat(x^2+3)

Пример 2

Трансцендентальные выражения заменяются новыми идентификаторами. Результат показывает, от которых переменных зависят сгенерированные идентификаторы:

polylib::makerat(sin(u)/x)

Пример 3

Числа с плавающей точкой рассматриваются трансцендентальными:

polylib::makerat(0.27*x)

Пример 4

По умолчанию радикалы обработаны как трансцендентальные подвыражения:

polylib::makerat(sqrt(2)/x)

Пример 5

Если достаточно большой второй аргумент дан, радикалы заменяются элементами алгебраических расширений:

polylib::makerat(sqrt(2)/x, 2)

Параметры

a

Полином по Expr или арифметическому выражению

l

Список или набор полиномов по Expr или арифметическим выражениям

maxd

Положительное целое число

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

polylib::makerat возвращает последовательность выражения, состоящую из трех операндов:

  • Первый операнд представляет числитель (или список/набор числителей, соответственно). Это - один полином, если вызовом был polylib::makerat(a), в противном случае это - набор или список полиномов (тот же тип как вход). Полином (полиномы) может иметь больше indeterminates, чем вход. Содействующим звонком является или Expr или Dom::AlgebraicExtension.

  • Второй операнд представляет знаменатель (или список/набор знаменателей, соответственно). Это имеет тот же тип как первый операнд.

  • Третий операнд является списком уравнений.

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

Функции MuPAD