Package edu.jas.ps
Class MultiVarCoefficients<C extends RingElem<C>>
java.lang.Object
edu.jas.ps.MultiVarCoefficients<C>
- Type Parameters:
C
- ring element type
- All Implemented Interfaces:
Serializable
public abstract class MultiVarCoefficients<C extends RingElem<C>>
extends Object
implements Serializable
Abstract class for generating functions for coefficients of multivariate
power series. This class handles the caching itself.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal HashMap
<Long, GenPolynomial<C>> Cache for already computed coefficients.final BitSet
Indicator if all coefficients of a homogeneous degree have been constructed.final GenPolynomialRing
<C> Ring factory for polynomials.Cache for known zero coefficients. -
Constructor Summary
ConstructorsConstructorDescriptionPublic constructor.MultiVarCoefficients
(GenPolynomialRing<C> pf, HashMap<Long, GenPolynomial<C>> cache) Public with pre-filled coefficient cache.MultiVarCoefficients
(GenPolynomialRing<C> pf, HashMap<Long, GenPolynomial<C>> cache, BitSet hc) Public constructor with pre-filled caches.MultiVarCoefficients
(GenPolynomialRing<C> pf, HashMap<Long, GenPolynomial<C>> cache, HashSet<ExpVector> zeros) Public constructor with pre-filled caches.MultiVarCoefficients
(GenPolynomialRing<C> pf, HashMap<Long, GenPolynomial<C>> cache, HashSet<ExpVector> zeros, BitSet hc) Public constructor with pre-filled caches.Public constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract C
Generate coefficient.Get cached coefficient or generate coefficient.getHomPart
(long tdeg) Homogeneous part.
-
Field Details
-
pfac
Ring factory for polynomials. -
coeffCache
Cache for already computed coefficients. -
homCheck
Indicator if all coefficients of a homogeneous degree have been constructed. -
zeroCache
Cache for known zero coefficients. Required because zero coefficients are not stored in the polynomials.
-
-
Constructor Details
-
MultiVarCoefficients
Public constructor.- Parameters:
pf
- multivariate power series ring factory.
-
MultiVarCoefficients
Public constructor.- Parameters:
pf
- polynomial ring factory.
-
MultiVarCoefficients
Public with pre-filled coefficient cache.- Parameters:
pf
- polynomial ring factory.cache
- pre-filled coefficient cache.
-
MultiVarCoefficients
public MultiVarCoefficients(GenPolynomialRing<C> pf, HashMap<Long, GenPolynomial<C>> cache, HashSet<ExpVector> zeros) Public constructor with pre-filled caches.- Parameters:
pf
- polynomial ring factory.cache
- pre-filled coefficient cache.zeros
- pre-filled zero coefficient cache.
-
MultiVarCoefficients
public MultiVarCoefficients(GenPolynomialRing<C> pf, HashMap<Long, GenPolynomial<C>> cache, BitSet hc) Public constructor with pre-filled caches.- Parameters:
pf
- polynomial ring factory.cache
- pre-filled coefficient cache.hc
- pre-filled homogeneous check bit-set.
-
MultiVarCoefficients
public MultiVarCoefficients(GenPolynomialRing<C> pf, HashMap<Long, GenPolynomial<C>> cache, HashSet<ExpVector> zeros, BitSet hc) Public constructor with pre-filled caches.- Parameters:
pf
- polynomial ring factory.cache
- pre-filled coefficient cache.zeros
- pre-filled zero coefficient cache.hc
- pre-filled homogeneous check bit-set.
-
-
Method Details
-
get
Get cached coefficient or generate coefficient.- Parameters:
index
- of requested coefficient.- Returns:
- coefficient at index.
-
getHomPart
Homogeneous part.- Parameters:
tdeg
- requested degree.- Returns:
- polynomial part of given degree.
-
generate
Generate coefficient.- Parameters:
index
- of requested coefficient.- Returns:
- coefficient at index.
-