pdivide
Псевдоделение полиномов
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
pdivide(p
,q
, <[x]
>, <order
>,options
) pdivide(p
,q
, <[x1, x2, …]
>, <order
>,options
) pdivide(p
,q1, q2, …
, <[x1, x2, …]
>, <order
>,options
)
pdivide(p, q)
выполняет псевдоделение полиномов или многочленных выражений p
и q
. Функция возвращает факторный b
, псевдочастное s
, и псевдоостаток r
, таким образом, что b*p = s*q + r
.
pdivide(p, q1, q2, q3, ..., qN)
выполняет псевдоделение полинома или многочленного выражения p
полиномами или многочленными выражениями q1, q2, q3, ..., qN
.
pdivide(p, q)
возвращает последовательность b, s, r
, где b
элемент содействующего звонка полиномов. Псевдочастное s
и псевдоостаток r
удовлетворите этим условиям: b*p = s*q + r
, degree(p) = degree(s) + degree(q)
, и degree(r) < degree(q)
.
По умолчанию, pdivide
определяет факторный b
как b = lcoeff (q)^( degree (p) - degree(q) + 1)
. AnyFactor
включает pdivide
использовать другие значения b
. Смотрите пример 2.
pdivide
работает с полиномами или многочленными выражениями.
Полиномы должны иметь тот же тип, означая, что их переменные и содействующие звонки должны быть идентичными.
Когда вы вызываете pdivide
для многочленных выражений MuPAD® внутренне преобразует эти выражения в полиномы. Смотрите poly
функция. Если выражения не могут быть преобразованы в полиномы, pdivide
возвращает FAIL
. Смотрите пример 3.
Если вы вызываете pdivide
для полиномов это возвращает полиномы. Если вы вызываете pdivide
для многочленных выражений это возвращает многочленные выражения.
Если вы выполняете псевдоделение многочленных выражений, которые содержат несколько переменных, можно задать конкретные переменные, которые будут обработаны как переменные. pdivide
функционируйте обрабатывает все другие переменные как символьные параметры. По умолчанию, pdivide
принимает, что все переменные в многочленных выражениях являются переменными, и ни один из них не символьный параметр. Смотрите Пример 4.
pdivide
(p, q1, q2, q3, ..., qN
) возвращает факторный b
, псевдочастные s1, s2, ..., sN
и псевдоостаток r
, таким образом, что b*p = s1*q1 + s2*q2 + ... + sN*qN + r
.
При выполнении псевдоделения полинома одним или несколькими полиномами можно выбрать термин упорядоченное расположение. Упорядоченное расположение принимает эти значения:
LexOrder
устанавливает лексикографическое упорядоченное расположение.
DegreeOrder
устанавливает общее упорядоченное расположение степени. При использовании этого упорядоченного расположения MuPAD сортирует условия полинома согласно общей степени каждого термина (сумма экспонент переменных).
DegInvLexOrder
устанавливает общую инверсию степени лексикографическое упорядоченное расположение. При использовании этого упорядоченного расположения MuPAD сортирует условия полинома согласно общей степени каждого термина (сумма экспонент переменных). Если несколько условий имеют равные общие степени, MuPAD сортирует их использующий обратное лексикографическое упорядоченное расположение.
Ваше пользовательское упорядоченное расположение термина типа Dom::MonomOrdering
.
Смотрите пример 5.
В отличие от divide
, pdivide
не требует, чтобы содействующий звонок полиномов реализовал "_divide"
паз, потому что коэффициенты не разделены на этот алгоритм. Смотрите Пример 6.
Выполните псевдоделение этих двух полиномов:
p:= poly(x^3 + x + 1): q:= poly(3*x^2 + x + 1): [b, s, r] := [pdivide(p, q)]
Результат удовлетворяет этому уравнению:
p*b = s*q + r
Теперь вычислите псевдочастное и псевдоостаток отдельно:
pdivide(p, q, Quo), pdivide(p, q, Rem)
delete p, q, b, s, r:
По умолчанию, pdivide
выполняет псевдоделение p
q
с факторным b
определенный формулой b = lcoeff (q)^( degree (p) - degree(q) + 1)
:
p := 4*x^2 + 3: q := 2*x + 2: b = lcoeff(q)^(degree(p) - degree(q) + 1); pdivide(p, q)
Включить pdivide
изменить значение b
, используйте AnyFactor
:
pdivide(4*x^2 + 3, 2*x + 2, AnyFactor)
Если выражение не может быть преобразовано в полином, pdivide
возвращает FAIL
:
pdivide(1/x, x)
При выполнении псевдоделения многомерных полиномов можно задать список переменных. pdivide
функция принимает, что все другие переменные являются символьными параметрами. Например, разделите следующие два многочленных выражения, задающие тот x
Y
, и a
переменные. Получившееся псевдочастное 0, и псевдоостаток равняется дивиденду p
:
p := x^3 + x + y: q := a*x^2 + x + 1: pdivide(p, q, [x, y, a])
Разделите эти выражения, задающие тот x
и y
переменные. MuPAD принимает тот a
символьный параметр. Здесь, и псевдочастное и псевдоостаток не равны 0:
pdivide(p, q, [x, y])
Теперь разделите те же многочленные выражения, задающие тот единственный y
переменная. MuPAD принимает тот x
и a
символьные параметры. Здесь псевдоостаток 0:
pdivide(p, q, [y])
По умолчанию, pdivide
функционируйте обрабатывает многочленные выражения с несколькими переменными как многомерные многочленные выражения. Функция не принимает, что любая из переменных является символьными параметрами:
pdivide(x^3 + x + y, a*x^2 + x + 1)
pdivide
позволяет вам выполнить псевдоделение полинома (или многочленное выражение) несколькими полиномами (или многочленные выражения):
p := 4*x^4 + a*x^2*y^4: q1 := x^3 - a: q2 := x + y: [b, s1, s2, r] := [pdivide(p, q1, q2)]
Результат удовлетворяет условию b*p = s1*q1 + s2*q2 + r
:
testeq(b*p, s1*q1 + s2*q2 + r)
При делении полинома на несколько полиномов можно выбрать термин упорядоченное расположение:
pdivide(p, q1, q2, LexOrder)
pdivide(p, q1, q2, DegreeOrder)
Содействующий звонок может быть произвольным звонком. Например, здесь кольцо классов вычетов целых чисел по модулю 8 представляет содействующий звонок:
pdivide(poly(x^3 + x + 1, IntMod(8)), poly(4*x^3 + x + 1, IntMod(8)))
Обратите внимание на то, что pdivide
не требует делимости коэффициентов.
|
Одномерные или многомерные полиномы или многочленные выражения. |
|
Одномерные или многомерные полиномы или многочленные выражения. |
|
Неопределенный из полинома, который обычно является идентификатором или индексируемым идентификатором. |
|
indeterminates полинома, которые обычно являются идентификаторами или индексированными идентификаторами. |
|
Термин, заказывающий при выполнении псевдоделения одного многомерного полинома одним или несколькими многомерными полиномами: |
|
Возвратите только псевдочастное или псевдоостаток. По умолчанию, |
|
Позвольте гибкость для факторного |
Полином, или многочленное выражение, или последовательность, содержащая элемент содействующего звонка входных полиномов и полиномов (или многочленные выражения), или значение FAIL
.
f
G
P
Q