public final class PolynomialFactorDecomposition<Poly extends IPolynomial<Poly>> extends FactorDecomposition<Poly> implements Serializable
FactorDecomposition.unit
, factors returned by
FactorDecomposition.get(int)
are non-units. This class is mutable.
Iterable specification provides iterator over
non-unit factors only; to iterate over all factors including the constant factor use FactorDecomposition.iterableWithUnit()
exponents, factors, ring, unit
Modifier and Type | Method and Description |
---|---|
PolynomialFactorDecomposition<Poly> |
addAll(FactorDecomposition<Poly> other)
add all factors from other
|
PolynomialFactorDecomposition<Poly> |
addFactor(Poly factor,
int exponent)
add another factor
|
PolynomialFactorDecomposition<Poly> |
addUnit(Poly unit)
add another unit factor
|
PolynomialFactorDecomposition<Poly> |
canonical()
Sort factors.
|
PolynomialFactorDecomposition<Poly> |
clone() |
static <Poly extends IPolynomial<Poly>> |
empty(Poly factory)
Empty factorization
|
boolean |
isUnit(Poly element) |
Poly |
lc()
Resulting lead coefficient
|
<OthPoly extends IPolynomial<OthPoly>> |
mapTo(Function<Poly,OthPoly> mapper) |
PolynomialFactorDecomposition<Poly> |
monic()
Makes each factor monic (moving leading coefficients to the
unit(Poly) ) |
static <Poly extends IPolynomial<Poly>> |
of(Collection<Poly> factors)
Factor decomposition with specified factors and exponents
|
static <Poly extends IPolynomial<Poly>> |
of(Poly... factors)
Factor decomposition with specified factors and exponents
|
static <Poly extends IPolynomial<Poly>> |
of(Poly a) |
static <Poly extends IPolynomial<Poly>> |
of(Poly unit,
List<Poly> factors,
gnu.trove.list.array.TIntArrayList exponents)
Factor decomposition with specified factors and exponents
|
static <Poly extends IPolynomial<Poly>> |
of(Poly a,
Poly b) |
static <Poly extends IPolynomial<Poly>> |
of(Poly a,
Poly b,
Poly c) |
PolynomialFactorDecomposition<Poly> |
primitive()
Makes each factor primitive (moving contents to the
unit(Poly) ) |
PolynomialFactorDecomposition<Poly> |
reduceUnitContent()
Calls
monic() if the coefficient ring is field and primitive() otherwise |
PolynomialFactorDecomposition<Poly> |
setLcFrom(Poly poly)
Makes the lead coefficient of this factorization equal to the l.c.
|
PolynomialFactorDecomposition<Poly> |
setUnit(Poly unit)
Sets the unit factor
|
int |
signum()
Calculates the signum of the polynomial constituted by this decomposition
|
static <Poly extends IPolynomial<Poly>> |
unit(Poly unit)
Unit factorization
|
addUnit, apply, applyConstantFactor, applyExponents, dropExponents, dropFactor, dropUnit, equals, get, getExponent, hashCode, isTrivial, iterableWithUnit, iterator, mapTo, multiply, multiplyIgnoreExponents, of, raiseExponents, size, squareFreePart, stream, streamWithoutUnit, sumExponents, toArrayWithoutUnit, toArrayWithUnit, toString, toString, unit
finalize, getClass, notify, notifyAll, wait, wait, wait
forEach, spliterator
public boolean isUnit(Poly element)
isUnit
in class FactorDecomposition<Poly extends IPolynomial<Poly>>
public PolynomialFactorDecomposition<Poly> setUnit(Poly unit)
FactorDecomposition
setUnit
in class FactorDecomposition<Poly extends IPolynomial<Poly>>
public PolynomialFactorDecomposition<Poly> addUnit(Poly unit)
FactorDecomposition
addUnit
in class FactorDecomposition<Poly extends IPolynomial<Poly>>
public PolynomialFactorDecomposition<Poly> addFactor(Poly factor, int exponent)
FactorDecomposition
addFactor
in class FactorDecomposition<Poly extends IPolynomial<Poly>>
public PolynomialFactorDecomposition<Poly> addAll(FactorDecomposition<Poly> other)
FactorDecomposition
addAll
in class FactorDecomposition<Poly extends IPolynomial<Poly>>
public PolynomialFactorDecomposition<Poly> canonical()
FactorDecomposition
canonical
in class FactorDecomposition<Poly extends IPolynomial<Poly>>
public PolynomialFactorDecomposition<Poly> setLcFrom(Poly poly)
public Poly lc()
public int signum()
public PolynomialFactorDecomposition<Poly> monic()
unit(Poly)
)public PolynomialFactorDecomposition<Poly> primitive()
unit(Poly)
)public <OthPoly extends IPolynomial<OthPoly>> PolynomialFactorDecomposition<OthPoly> mapTo(Function<Poly,OthPoly> mapper)
public PolynomialFactorDecomposition<Poly> reduceUnitContent()
monic()
if the coefficient ring is field and primitive()
otherwisepublic PolynomialFactorDecomposition<Poly> clone()
clone
in class FactorDecomposition<Poly extends IPolynomial<Poly>>
public static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> unit(Poly unit)
public static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> empty(Poly factory)
public static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> of(Poly unit, List<Poly> factors, gnu.trove.list.array.TIntArrayList exponents)
unit
- the unit coefficientfactors
- the factorsexponents
- the exponentspublic static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> of(Poly... factors)
factors
- factorspublic static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> of(Poly a)
public static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> of(Poly a, Poly b)
public static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> of(Poly a, Poly b, Poly c)
public static <Poly extends IPolynomial<Poly>> PolynomialFactorDecomposition<Poly> of(Collection<Poly> factors)
factors
- factorsCopyright © 2018. All rights reserved.