Révision 35
pobysoPythonSage/src/sollya_lib.sage (revision 35) | ||
---|---|---|
1 | 1 |
import sys |
2 | 2 |
from ctypes import * |
3 | 3 |
from sage.rings.real_mpfr import * |
4 |
# |
|
4 | 5 |
try: |
5 | 6 |
sollya=CDLL("/warehouse/storres/root/lib/libsollya.so") |
6 | 7 |
except : |
7 | 8 |
print "\nCould not find nor load the Sollya library.\n" |
8 | 9 |
sys.exit(1) |
9 |
|
|
10 |
sollya |
|
11 |
sollya.sollya_lib_init(None) |
|
10 |
# |
|
12 | 11 |
try: |
13 | 12 |
# Export the functions with their name in the library (so we can |
14 | 13 |
# use them without the "sollya." prefix). |
... | ... | |
47 | 46 |
sollya_lib_is_absolute = sollya.sollya_lib_is_absolute |
48 | 47 |
sollya_lib_obj_is_function = sollya.sollya_lib_obj_is_function |
49 | 48 |
sollya_lib_obj_is_list = sollya.sollya_lib_obj_is_list |
49 |
sollya_lib_is_off = sollya.sollya_lib_is_off |
|
50 |
sollya_lib_is_on = sollya.sollya_lib_is_on |
|
50 | 51 |
sollya_lib_obj_is_range = sollya.sollya_lib_obj_is_range |
51 | 52 |
sollya_lib_obj_is_structure = sollya.sollya_lib_obj_is_structure |
52 | 53 |
sollya_lib_off = sollya.sollya_lib_off |
... | ... | |
57 | 58 |
sollya_lib_remez = sollya.sollya_lib_remez |
58 | 59 |
sollya_lib_set_canonical = sollya.sollya_lib_set_canonical |
59 | 60 |
sollya_lib_set_prec = sollya.sollya_lib_set_prec |
61 |
sollya_lib_tail = sollya.sollya_lib_tail |
|
60 | 62 |
sollya_lib_taylor = sollya.sollya_lib_taylor |
61 | 63 |
sollya_lib_taylorform = sollya.sollya_lib_taylorform |
62 |
|
|
63 | 64 |
except : |
64 | 65 |
print "\nCould not rename one of the functions.\n" |
65 | 66 |
sys.exit(1) |
... | ... | |
93 | 94 |
# |
94 | 95 |
# Give it a try! |
95 | 96 |
# |
97 |
sollya |
|
98 |
sollya.sollya_lib_init(None) |
|
96 | 99 |
print "Sollya library tests" |
97 | 100 |
print sollya.sollya_lib_get_free_variable_name() |
98 | 101 |
sollyaExp = sollya_lib_parse_string("exp(x)") |
... | ... | |
106 | 109 |
sollya_lib_get_constant_as_int(byref(a), retc) |
107 | 110 |
print "Precision : ", a.value |
108 | 111 |
print "Address of a.value ", addressof(a) |
112 |
# |
|
113 |
# |
|
114 |
# |
|
109 | 115 |
#b = RealNumber() |
110 | 116 |
#print cast(retc, POINTER(c_int)).contents |
111 | 117 |
#retc = cast(retc, POINTER(c_int)).contents |
Formats disponibles : Unified diff