class PolyDense[C] extends Polynomial[C]
- Self Type
- PolyDense[C]
- Alphabetic
- By Inheritance
- PolyDense
- Polynomial
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- class TermIterator extends Iterator[Term[C]]
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
*(rhs: Polynomial[C])(implicit ring: Semiring[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- PolyDense → Polynomial
-
def
**(k: Int)(implicit ring: Rig[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- Polynomial
-
def
*:(k: C)(implicit ring: Semiring[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- PolyDense → Polynomial
-
def
+(rhs: Polynomial[C])(implicit ring: Semiring[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- PolyDense → Polynomial
-
def
-(rhs: Polynomial[C])(implicit ring: Rng[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- Polynomial
-
def
:*(k: C)(implicit ring: Semiring[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- Polynomial
-
def
:/(k: C)(implicit field: Field[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- Polynomial
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
apply(x: C)(implicit ring: Semiring[C]): C
Evaluate the polynomial at
x
.Evaluate the polynomial at
x
.- Definition Classes
- PolyDense → Polynomial
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- val coeffs: Array[C]
-
def
coeffsArray(implicit ring: Semiring[C]): Array[C]
Returns the coefficients in little-endian order.
Returns the coefficients in little-endian order. So, the i-th element is coeffsArray(i) * (x ** i).
- Definition Classes
- PolyDense → Polynomial
-
def
compose(y: Polynomial[C])(implicit ring: Rig[C], eq: Eq[C]): Polynomial[C]
Compose this polynomial with another.
Compose this polynomial with another.
- Definition Classes
- Polynomial
-
implicit
val
ct: ClassTag[C]
- Definition Classes
- PolyDense → Polynomial
-
def
data(implicit ring: Semiring[C], eq: Eq[C]): Map[Int, C]
Returns a map from exponent to coefficient of this polynomial.
Returns a map from exponent to coefficient of this polynomial.
- Definition Classes
- Polynomial
-
def
degree: Int
Returns the degree of this polynomial.
Returns the degree of this polynomial.
- Definition Classes
- PolyDense → Polynomial
-
def
derivative(implicit ring: Ring[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- PolyDense → Polynomial
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(that: Any): Boolean
- Definition Classes
- Polynomial → AnyRef → Any
-
def
evalWith[A](x: A)(f: (C) ⇒ A)(implicit arg0: Semiring[A], arg1: Eq[A], arg2: ClassTag[A], ring: Semiring[C], eq: Eq[C]): A
- Definition Classes
- Polynomial
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
flip(implicit ring: Rng[C], eq: Eq[C]): Polynomial[C]
This will flip/mirror the polynomial about the y-axis.
This will flip/mirror the polynomial about the y-axis. It is equivalent to
poly.compose(-Polynomial.x)
, but will likely be faster to calculate.- Definition Classes
- Polynomial
-
def
foreach[U](f: (Int, C) ⇒ U): Unit
Traverses each term in this polynomial, in order of degree, lowest to highest (eg.
Traverses each term in this polynomial, in order of degree, lowest to highest (eg. constant term would be first) and calls
f
with the degree of term and its coefficient. This may skip zero terms, or it may not.- Definition Classes
- PolyDense → Polynomial
-
def
foreachNonZero[U](f: (Int, C) ⇒ U)(implicit ring: Semiring[C], eq: Eq[C]): Unit
Traverses each non-zero term in this polynomial, in order of degree, lowest to highest (eg.
Traverses each non-zero term in this polynomial, in order of degree, lowest to highest (eg. constant term would be first) and calls
f
with the degree of term and its coefficient.- Definition Classes
- PolyDense → Polynomial
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- Polynomial → AnyRef → Any
-
def
integral(implicit field: Field[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- PolyDense → Polynomial
-
def
isConstant: Boolean
Returns
true
iff this polynomial is constant.Returns
true
iff this polynomial is constant.- Definition Classes
- Polynomial
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isZero: Boolean
Returns
true
if this polynomial isring.zero
.Returns
true
if this polynomial isring.zero
.- Definition Classes
- PolyDense → Polynomial
-
def
map[D](f: (C) ⇒ D)(implicit arg0: Semiring[D], arg1: Eq[D], arg2: ClassTag[D], ring: Semiring[C], eq: Eq[C]): Polynomial[D]
- Definition Classes
- Polynomial
-
def
mapTerms[D](f: (Term[C]) ⇒ Term[D])(implicit arg0: Semiring[D], arg1: Eq[D], arg2: ClassTag[D], ring: Semiring[C], eq: Eq[C]): Polynomial[D]
- Definition Classes
- Polynomial
-
def
maxOrderTermCoeff(implicit ring: Semiring[C]): C
Returns the coefficient of max term of this polynomial.
Returns the coefficient of max term of this polynomial.
- Definition Classes
- PolyDense → Polynomial
-
def
maxTerm(implicit ring: Semiring[C]): Term[C]
Returns the term of the highest degree in this polynomial.
Returns the term of the highest degree in this polynomial.
- Definition Classes
- Polynomial
-
def
minTerm(implicit ring: Semiring[C], eq: Eq[C]): Term[C]
Returns the non-zero term of the minimum degree in this polynomial, unless it is zero.
Returns the non-zero term of the minimum degree in this polynomial, unless it is zero. If this polynomial is zero, then this returns a zero term.
- Definition Classes
- Polynomial
-
def
monic(implicit f: Field[C], eq: Eq[C]): Polynomial[C]
Returns this polynomial as a monic polynomial, where the leading coefficient (ie.
Returns this polynomial as a monic polynomial, where the leading coefficient (ie.
maxOrderTermCoeff
) is 1.- Definition Classes
- Polynomial
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
nth(n: Int)(implicit ring: Semiring[C]): C
Returns the coefficient of the n-th degree term.
Returns the coefficient of the n-th degree term.
- Definition Classes
- PolyDense → Polynomial
-
def
pow(k: Int)(implicit ring: Rig[C], eq: Eq[C]): Polynomial[C]
- Definition Classes
- Polynomial
-
def
reciprocal(implicit ring: Semiring[C], eq: Eq[C]): Polynomial[C]
Returns the reciprocal of this polynomial.
Returns the reciprocal of this polynomial. Essentially, if this polynomial is
p
with degreen
, then returns a polynomialq(x) = x^n*p(1/x)
.
- Definition Classes
- Polynomial
- See also
http://en.wikipedia.org/wiki/Reciprocal_polynomial
-
def
reductum(implicit e: Eq[C], ring: Semiring[C], ct: ClassTag[C]): Polynomial[C]
Returns a polynomial with the max term removed.
Returns a polynomial with the max term removed.
- Definition Classes
- PolyDense → Polynomial
-
def
removeZeroRoots(implicit ring: Semiring[C], eq: Eq[C]): Polynomial[C]
Removes all zero roots from this polynomial.
Removes all zero roots from this polynomial.
- Definition Classes
- Polynomial
-
def
roots(implicit finder: RootFinder[C]): Roots[C]
Returns the real roots of this polynomial.
Returns the real roots of this polynomial.
Depending on
C
, thefinder
argument may need to be passed "explicitly" via an implicit conversion. This is because some types (egBigDecimal
,Rational
, etc) require an error bound, and so provide implicit conversions toRootFinder
s from the error type. For instance,BigDecimal
requires either a scale or MathContext. So, we'd call this method withpoly.roots(MathContext.DECIMAL128)
, which would return aRoots[BigDecimal
whose roots are approximated to the precision specified inDECIMAL128
and rounded appropriately.On the other hand, a type like
Double
doesn't require an error bound and so can be called without specifying theRootFinder
.- finder
a root finder to extract roots with
- returns
the real roots of this polynomial
- Definition Classes
- Polynomial
-
def
shift(h: C)(implicit ring: Ring[C], eq: Eq[C]): Polynomial[C]
Shift this polynomial along the x-axis by
h
, so thatthis(x + h) == this.shift(h).apply(x)
.Shift this polynomial along the x-axis by
h
, so thatthis(x + h) == this.shift(h).apply(x)
. This is equivalent to callingthis.compose(Polynomial.x + h)
, but is likely to compute the shifted polynomial much faster.- Definition Classes
- Polynomial
-
def
signVariations(implicit ring: Semiring[C], eq: Eq[C], signed: Signed[C]): Int
Returns the number of sign variations in the coefficients of this polynomial.
Returns the number of sign variations in the coefficients of this polynomial. Given 2 consecutive terms (ignoring 0 terms), a sign variation is indicated when the terms have differing signs.
- Definition Classes
- Polynomial
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
terms(implicit ring: Semiring[C], eq: Eq[C]): List[Term[C]]
Returns a list of non-zero terms.
Returns a list of non-zero terms.
- Definition Classes
- Polynomial
-
def
termsIterator: Iterator[Term[C]]
Return an iterator of non-zero terms.
Return an iterator of non-zero terms.
This method is used to implement equals and hashCode.
NOTE: This method uses a (_ == 0) test to prune zero values. This makes sense in a context where Semiring[C] and Eq[C] are unavailable, but not other places.
- Definition Classes
- PolyDense → Polynomial
-
def
toDense(implicit ring: Semiring[C], eq: Eq[C]): PolyDense[C]
Returns a polynmial that has a dense representation.
Returns a polynmial that has a dense representation.
- Definition Classes
- PolyDense → Polynomial
-
def
toSparse(implicit ring: Semiring[C], eq: Eq[C]): PolySparse[C]
Returns a polynomial that has a sparse representation.
Returns a polynomial that has a sparse representation.
- Definition Classes
- PolyDense → Polynomial
-
def
toString(): String
- Definition Classes
- Polynomial → AnyRef → Any
-
def
unary_-()(implicit ring: Rng[C]): Polynomial[C]
- Definition Classes
- PolyDense → Polynomial
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )