Факторизация
F = factor(x)
F = factor(x,vars)
F = factor(___,Name,Value)
дополнительные опции использования заданы одним или несколькими аргументами пары F
= factor(___,Name,Value
)Name,Value
. Этот синтаксис может использовать любой из входных параметров от предыдущих синтаксисов.
F = factor(823429252)
F = 2 2 59 283 12329
К факторным целым числам, больше, чем flintmax
, преобразуйте целое число в символьный объект с помощью sym
. Затем поместите номер в кавычки, чтобы представлять его точно.
F = factor(sym('82342925225632328'))
F = [ 2, 2, 2, 251, 401, 18311, 5584781]
Чтобы учесть отрицательное целое число, преобразуйте его в символьный объект с помощью sym
.
F = factor(sym(-92465))
F = [ -1, 5, 18493]
Выполните главную факторизацию для 41758540882408627201
. Поскольку целое число больше, чем flintmax
, преобразуйте его в символьный объект с помощью sym
и поместите номер в кавычки, чтобы представлять его точно.
n = sym('41758540882408627201'); factor(n)
ans = [ 479001599, 87178291199]
Учтите дробный 112/81
путем преобразования его в символьный объект с помощью sym
.
F = factor(sym(112/81))
F = [ 2, 2, 2, 2, 7, 1/3, 1/3, 1/3, 1/3]
Учтите полиномиальный x^6-1
.
syms x
F = factor(x^6-1)
F = [ x - 1, x + 1, x^2 + x + 1, x^2 - x + 1]
Учтите полиномиальный y^6-x^6
.
syms y
F = factor(y^6-x^6)
F = [ -1, x - y, x + y, x^2 + x*y + y^2, x^2 - x*y + y^2]
Факторный y^2*x^2
для факторов, содержащих x
.
syms x y F = factor(y^2*x^2,x)
F = [ y^2, x, x]
factor
комбинирует все факторы без x
в первый элемент. Остающиеся элементы F
содержат неприводимые факторы, которые содержат x
.
Учтите полиномиальный y
для факторов, содержащих символьные переменные b
и c
.
syms a b c d y = -a*b^5*c*d*(a^2 - 1)*(a*d - b*c); F = factor(y,[b c])
F = [ -a*d*(a - 1)*(a + 1), b, b, b, b, b, c, a*d - b*c]
factor
комбинирует все факторы без b
или c
в первый элемент F
. Остающиеся элементы F
содержат неприводимые факторы y
, которые содержат или b
или c
.
Используйте аргумент FactorMode
, чтобы выбрать конкретный режим факторизации.
Учтите выражение, не задавая режим факторизации. По умолчанию factor
использует факторизацию по рациональным числам. В этом режиме factor
сохраняет рациональные числа в их точной символьной форме.
syms x factor(x^3 + 2, x)
ans = x^3 + 2
Учтите то же выражение, но на этот раз используйте числовую факторизацию по вещественным числам. Этот режим включает выражение в линейные и квадратичные неприводимые полиномы с действительными коэффициентами и преобразовывает все числовые значения в числа с плавающей запятой.
factor(x^3 + 2, x, 'FactorMode', 'real')
ans = [ x + 1.2599210498948731647672106072782,... x^2 - 1.2599210498948731647672106072782*x + 1.5874010519681994747517056392723]
Учтите это выражение с помощью факторизации по комплексным числам. В этом режиме factor
уменьшает квадратичные полиномы до линейных выражений с комплексными коэффициентами. Этот режим преобразовывает все числовые значения в числа с плавающей запятой.
factor(x^3 + 2, x, 'FactorMode', 'complex')
ans = [ x + 1.2599210498948731647672106072782,... x - 0.62996052494743658238360530363911 + 1.0911236359717214035600726141898i,... x - 0.62996052494743658238360530363911 - 1.0911236359717214035600726141898i]
Учтите это выражение с помощью полного режима факторизации. Этот режим включает выражение в линейные выражения, уменьшая квадратичные полиномы до линейных выражений с комплексными коэффициентами. Этот режим сохраняет рациональные числа в их точной символьной форме.
factor(x^3 + 2, x, 'FactorMode', 'full')
ans = [ x + 2^(1/3),... x - 2^(1/3)*((3^(1/2)*1i)/2 + 1/2),... x + 2^(1/3)*((3^(1/2)*1i)/2 - 1/2)]
Аппроксимируйте результат с числами с плавающей запятой при помощи vpa
. Поскольку выражение не содержит символьных параметров помимо переменной x
, результат эквивалентен в комплексном режиме факторизации.
vpa(ans)
ans = [ x + 1.2599210498948731647672106072782,... x - 0.62996052494743658238360530363911 - 1.0911236359717214035600726141898i,... x - 0.62996052494743658238360530363911 + 1.0911236359717214035600726141898i]
RootOf
В полном режиме факторизации factor
также может возвратить результаты как символьные суммы по полиномиальным корням, выраженным как RootOf
.
Учтите это выражение.
syms x s = factor(x^3 + x - 3, x, 'FactorMode','full')
s = [ x - root(z^3 + z - 3, z, 1),... x - root(z^3 + z - 3, z, 2),... x - root(z^3 + z - 3, z, 3)]
Аппроксимируйте результат с числами с плавающей запятой при помощи vpa
.
vpa(s)
ans = [ x - 1.2134116627622296341321313773815,... x + 0.60670583138111481706606568869074 + 1.450612249188441526515442203395i,... x + 0.60670583138111481706606568869074 - 1.450612249188441526515442203395i]
Чтобы учесть целое число, больше, чем flintmax
, перенесите целое число с sym
. Затем поместите целое число в кавычки, чтобы представлять его точно, например, sym('465971235659856452')
.
Чтобы учесть отрицательное целое число, перенесите целое число с sym
, например, sym(-3)
.
collect
| combine
| divisors
| expand
| horner
| numden
| rewrite
| simplify
| simplifyFraction