polynomialReduce

Уменьшайте полиномы делением

Описание

пример

r = polynomialReduce(p,d) возвращает Полиномиальное Сокращение p d относительно всех переменных в p определенный symvar. Вход d может быть вектор полиномов.

пример

r = polynomialReduce(p,d,vars) использует полиномиальные переменные в vars.

пример

r = polynomialReduce(___,'MonomialOrder',MonomialOrder) также использует заданный одночленный порядок в дополнение к входным параметрам в предыдущих синтаксисах. Опциями является 'degreeInverseLexicographic', 'degreeLexicographic', или 'lexicographic'. По умолчанию, polynomialReduce использование 'degreeInverseLexicographic'.

пример

[r,q] = polynomialReduce(___) также возвращает частное в q.

Примеры

свернуть все

Найдите частное и остаток когда x^3 - x*y^2 + 1 разделен на x + y.

syms x y
p = x^3 - x*y^2 + 1;
d = x + y;
[r,q] = polynomialReduce(p,d)
r =
1
q =
x^2 - y*x

Восстановите исходный полином от частного и остатка. Проверяйте, что восстановленный полином равняется p при помощи isAlways.

pOrig = expand(sum(q.*d) + r);
isAlways(p == pOrig)
ans =
  logical
   1

Задайте полиномиальные переменные в качестве второго аргумента polynomialReduce.

Разделите exp(a)*x^2 + 2*x*y + 1 x - y с полиномиальными переменными [x y], обработка a как символьный параметр.

syms a x y
p = exp(a)*x^2 + 2*x*y + 1;
d = x - y;
vars = [x y];
r = polynomialReduce(p,d,vars)
r =
(exp(a) + 2)*y^2 + 1

Уменьшайте x^5 - x*y^6 - x*y x^2 + y и x^2 - y^3.

syms x y
p = x^5 - x*y^6 - x*y;
d = [x^2 + y, x^2 - y^3];
[r,q] = polynomialReduce(p,d)
r =
-x*y
q =
[ x^3 - x*y^3, x*y^3 - x*y]

Восстановите исходный полином от частного и остатка. Проверяйте, что восстановленный полином равняется p при помощи isAlways.

pOrig = expand(q*d.' + r);
isAlways(p == pOrig)
ans =
  logical
   1

По умолчанию, polynomialReduce приказывает, чтобы условия в полиномах с термином заказали degreeInverseLexicographic. Измените термин порядок в lexicographic или degreeLexicographic при помощи 'MonomialOrder' аргумент пары "имя-значение".

Разделите два полинома при помощи lexicographic назовите порядок.

syms x y
p = x^2 + y^3 + 1;
d = x - y^2;
r = polynomialReduce(p,d,'MonomialOrder','lexicographic')
r =
y^4 + y^3 + 1

Разделите те же полиномы при помощи degreeLexicographic назовите порядок.

r = polynomialReduce(p,d,'MonomialOrder','degreeLexicographic')
r =
x^2 + y*x + 1

Входные параметры

свернуть все

Полином, чтобы разделиться, заданный как символьное выражение или функция.

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

Полиномиальные переменные, заданные как вектор символьных переменных.

Одночленный порядок делителей, заданных как 'degreeInverseLexicographic', 'degreeLexicographic', или 'lexicographic'. Если вы задаете vars, затем polynomialReduce переменные видов на основе порядка переменных в vars.

  • lexicographic сортирует условия полинома с помощью лексикографического упорядоченного расположения.

  • degreeLexicographic сортирует условия полинома согласно общей степени каждого термина. Если условия имеют равные общие степени, polynomialReduce сортирует условия с помощью лексикографического упорядоченного расположения.

  • degreeInverseLexicographic сортирует условия полинома согласно общей степени каждого термина. Если условия имеют равные общие степени, polynomialReduce сортирует условия с помощью обратного лексикографического упорядоченного расположения.

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

свернуть все

Остаток от полиномиального деления, возвращенного как символьный полином.

Частное полиномиального деления, возвращенного как символьный полином или вектор символьных полиномов.

Больше о

свернуть все

Полиномиальное сокращение

Полиномиальное сокращение является делением полиномиального p полиномами делителя d 1, d 2, …, d n . Условия полиномов делителя упорядочены согласно определенному порядку термина. Частные q 1, q 2, …, q n и остаток r удовлетворяют этому уравнению.

p=q1d1+q2d2++qndn+r.

Никакой термин в r не может быть разделен на ведущие условия ни одного из делителей d 1, d 2, …, d n .

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

| |

Введенный в R2018a

Для просмотра документации необходимо авторизоваться на сайте