|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectedu.jas.gbufd.GBFactory
public class GBFactory
Groebner bases algorithms factory. Select appropriate Groebner bases engine based on the coefficient types.
GroebnerBase.GB(java.util.List P)GroebnerBase
interface use the GBFactory. It will select an
appropriate implementation based on the types of polynomial
coefficients C. The method to obtain an implementation is
getImplementation(). getImplementation()
returns an object of a class which implements the
GroebnerBase interface, more precisely an object of
abstract class GroebnerBaseAbstract.
GroebnerBase<CT> engine; engine = GBFactory.<CT> getImplementation(cofac); c = engine.GB(A);For example, if the coefficient type is BigInteger, the usage looks like
BigInteger cofac = new BigInteger(); GroebnerBase<BigInteger> engine; engine = GBFactory.getImplementation(cofac); c = engine.GB(A);
| Nested Class Summary | |
|---|---|
static class |
GBFactory.Algo
|
| Constructor Summary | |
|---|---|
protected |
GBFactory()
Protected factory constructor. |
| Method Summary | ||
|---|---|---|
static
|
getImplementation()
Determine suitable implementation of GB algorithms, no factory case. |
|
static GroebnerBaseAbstract<BigInteger> |
getImplementation(BigInteger fac)
Determine suitable implementation of GB algorithms, case BigInteger. |
|
static GroebnerBaseAbstract<BigInteger> |
getImplementation(BigInteger fac,
GBFactory.Algo a)
Determine suitable implementation of GB algorithms, case BigInteger. |
|
static GroebnerBaseAbstract<BigRational> |
getImplementation(BigRational fac)
Determine suitable implementation of GB algorithms, case BigRational. |
|
static
|
getImplementation(GenPolynomialRing<C> fac)
Determine suitable implementation of GB algorithms, case (recursive) polynomial. |
|
static GroebnerBaseAbstract<ModInteger> |
getImplementation(ModIntegerRing fac)
Determine suitable implementation of GB algorithms, case ModInteger. |
|
static GroebnerBaseAbstract<ModLong> |
getImplementation(ModLongRing fac)
Determine suitable implementation of GB algorithms, case ModLong. |
|
static
|
getImplementation(ProductRing<C> fac)
Determine suitable implementation of GB algorithms, case regular rings. |
|
static
|
getImplementation(RingFactory<C> fac)
Determine suitable implementation of GB algorithms, other cases. |
|
static
|
getProxy(RingFactory<C> fac)
Determine suitable concurrent implementation of GB algorithms if possible. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected GBFactory()
| Method Detail |
|---|
public static <C extends GcdRingElem<C>> GroebnerBaseAbstract<C> getImplementation()
public static GroebnerBaseAbstract<ModLong> getImplementation(ModLongRing fac)
fac - ModLongRing.
public static GroebnerBaseAbstract<ModInteger> getImplementation(ModIntegerRing fac)
fac - ModIntegerRing.
public static GroebnerBaseAbstract<BigInteger> getImplementation(BigInteger fac)
fac - BigInteger.
public static GroebnerBaseAbstract<BigInteger> getImplementation(BigInteger fac,
GBFactory.Algo a)
fac - BigInteger.a - algorithm.
public static GroebnerBaseAbstract<BigRational> getImplementation(BigRational fac)
fac - BigRational.
public static <C extends GcdRingElem<C>> GroebnerBaseAbstract<GenPolynomial<C>> getImplementation(GenPolynomialRing<C> fac)
fac - GenPolynomialRing<C>.
public static <C extends RingElem<C>> GroebnerBaseAbstract<Product<C>> getImplementation(ProductRing<C> fac)
fac - RegularRing.
public static <C extends GcdRingElem<C>> GroebnerBaseAbstract<C> getImplementation(RingFactory<C> fac)
fac - RingFactory<C>.
public static <C extends GcdRingElem<C>> GroebnerBaseAbstract<C> getProxy(RingFactory<C> fac)
fac - RingFactory<C>.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||