On Dec 4, 2008, at 5:13 PM, Jason Grout wrote:


Tim Lahey wrote:

The only problem I see with this is that it doesn't free up the
original. One
reason for changing the symbolic I, is to be able to use it for other
variables.


Sure it does:

sage: _j = I
sage: _j.rename("_j")
sage: var("I")
I
sage: type(I)
<class 'sage.calculus.calculus.SymbolicVariable'>
sage: I^2
I^2
sage: type(_j)
<class 'sage.functions.constants.I_class'>
sage: _j^2
-1


In fact, you could go one further.  "I" is just defined by:

I = sage.functions.I_class()

(in sage/functions/constants.py).  So you could just do:

sage: _j = sage.functions.constants.I_class()

and not even touch the global I variable. Then assign I to be whatever
you want, whenever you want.


Oh, thanks. This is definitely a good thing.

Cheers,

Tim.

---
Tim Lahey
PhD Candidate, Systems Design Engineering
University of Waterloo
http://www.linkedin.com/in/timlahey

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to