| 1 | initial version |
It looks like the control module is restrictive, I would say too restrictive, on the classes it allows. The error arises in a function _clean_part, which starts
valid_types = (int, float, complex, np.number)
so it will not accept Sage integers, which have type sage.rings.integer.Integer. You can fix this by just using Python ints, and this has to be done either explicitly:
tf(int(1), [int(1), int(10), int(20)])
or by turning off Sage's preparser:
preparser(False)
tf(1, [1, 10, 20])
(The preparser automatically converts "7" to a Sage integer, it converts ^ to the exponentiation operator, and maybe does a few other things which are natural for a mathematical audience.)
| 2 | No.2 Revision |
It looks like the control module is restrictive, I would say too restrictive, on the classes it allows. The error arises in a function _clean_part, which starts
valid_types = (int, float, complex, np.number)
so it will not accept Sage integers, which have type sage.rings.integer.Integer. You can fix this by just using Python ints, and this has to be done either explicitly:
tf(int(1), [int(1), int(10), int(20)])
or by turning off Sage's preparser:
preparser(False)
tf(1, [1, 10, 20])
(The preparser automatically converts an integer like "7" to a Sage integer, it converts ^ to the exponentiation operator, and maybe does a few other things which are natural for a mathematical audience.)
Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.