[PATCH] Real.__sage__() implemented (#1155).

0 views
Skip to first unread message

Ondrej Certik

unread,
Nov 13, 2008, 1:26:19 PM11/13/08
to sympy-...@googlegroups.com, Ondrej Certik
And a test added.
---
sympy/core/numbers.py | 6 +++++-
sympy/test_external/test_sage.py | 8 ++++++++
2 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/sympy/core/numbers.py b/sympy/core/numbers.py
index 3380312..865bce9 100644
--- a/sympy/core/numbers.py
+++ b/sympy/core/numbers.py
@@ -409,6 +409,11 @@ class Real(Number):
def epsilon_eq(self, other, epsilon="10e-16"):
return abs(self - other) < Real(epsilon)

+ def _sage_(self):
+ import sage.all as sage
+ return sage.RealNumber(str(self))
+
+
# this is here to work nicely in Sage
RealNumber = Real

@@ -441,7 +446,6 @@ def _parse_rational(s):
else:
return p, 10**-expt

-
class Rational(Number):
"""Represents integers and rational numbers (p/q) of any size.

diff --git a/sympy/test_external/test_sage.py b/sympy/test_external/test_sage.py
index aac901b..693c5f1 100644
--- a/sympy/test_external/test_sage.py
+++ b/sympy/test_external/test_sage.py
@@ -93,6 +93,14 @@ def test_complex():
check_expression("23+I*4", "x")
check_expression("x+I*y", "x y")

+def test_integer():
+ check_expression("4*x", "x")
+ check_expression("-4*x", "x")
+
+def test_real():
+ check_expression("1.123*x", "x")
+ check_expression("-18.22*x", "x")
+
def test_E():
assert sympy.sympify(sage.e) == sympy.E
assert sage.e == sage.SR(sympy.E)
--
1.5.6.5

Ondrej Certik

unread,
Nov 14, 2008, 9:16:30 AM11/14/08
to sympy-...@googlegroups.com, Fabian Seoane

Please review this as well.

Ondrej

Andy Ray Terrel

unread,
Nov 14, 2008, 10:18:47 AM11/14/08
to sympy-...@googlegroups.com, Ondrej Certik
+1. This patch seems pretty trivial i.e. no review.

On Thu, Nov 13, 2008 at 7:26 PM, Ondrej Certik <ond...@certik.cz> wrote:
>
Reply all
Reply to author
Forward
0 new messages