コード例 #1
0
 def from_sympy(self, a):
     """Convert SymPy's Integer to `dtype`. """
     if a.is_Rational:
         return GMPYRationalType(a.p, a.q)
     elif a.is_Float:
         from sympy.polys.domains import RR
         return GMPYRationalType(*RR.as_integer_ratio(a))
     else:
         raise CoercionFailed("expected `Rational` object, got %s" % a)
コード例 #2
0
 def factorial(self, a):
     """Returns factorial of `a`. """
     return GMPYRationalType(gmpy_factorial(int(a)))
コード例 #3
0
 def div(self, a, b):
     """Division of `a` and `b`, implies `__div__`. """
     return GMPYRationalType(a.qdiv(b)), self.zero
コード例 #4
0
 def quo(self, a, b):
     """Quotient of `a` and `b`, implies `__div__`. """
     return GMPYRationalType(a.qdiv(b))
コード例 #5
0
 def from_RR_mpmath(K1, a, K0):
     """Convert a mpmath `mpf` object to `dtype`. """
     return GMPYRationalType(*K0.as_integer_ratio(a))
コード例 #6
0
 def from_RR_sympy(K1, a, K0):
     """Convert a SymPy `Float` object to `dtype`. """
     return GMPYRationalType(*K0.as_integer_ratio(a))
コード例 #7
0
 def from_ZZ_gmpy(K1, a, K0):
     """Convert a GMPY `mpz` object to `dtype`. """
     return GMPYRationalType(a)
コード例 #8
0
 def from_QQ_sympy(K1, a, K0):
     """Convert a SymPy `Rational` object to `dtype`. """
     return GMPYRationalType(a.p, a.q)
コード例 #9
0
 def from_ZZ_sympy(K1, a, K0):
     """Convert a SymPy `Integer` object to `dtype`. """
     return GMPYRationalType(a.p)
コード例 #10
0
 def from_QQ_python(K1, a, K0):
     """Convert a Python `Fraction` object to `dtype`. """
     return GMPYRationalType(a.numerator, a.denominator)
コード例 #11
0
 def from_ZZ_python(K1, a, K0):
     """Convert a Python `int` object to `dtype`. """
     return GMPYRationalType(a)