Ask Your Question
0

Problem with supercripts

asked 14 years ago

mouse gravatar image

I've read that variables can be subscripted with underscore "_" and superscripted with caret "^". However supescripting doesn't seem to work. I think the caret is seen as a power operator. How to work around this?

Subscript example that works:

var('x,y,z_a')
eqn = x == y*z_a
solve(eqn, z_a)

Superscript example that fails:

var('x,y,z^a')
eqn = x == y*z^a
solve(eqn, z^a)
Preview: (hide)

Comments

Can you let us know where you found that in documentation? That would help us answer this. Caret does indeed mean power, pretty much always in Sage (this is a custom preparsing of Python, where that has a different meaning).

kcrisman gravatar imagekcrisman ( 14 years ago )

1 Answer

Sort by » oldest newest most voted
1

answered 14 years ago

Although underscores can be used to define new variables

sage: var('x,y,z_a')
(x, y, z_a)
sage: z_a
z_a

"carrots" cannot be used

sage: var('x,y,z^a')
(x, y, z^a)
sage: z^a
Traceback (click to the left of this block for traceback)
...
NameError: name 'z' is not defined

This is because in that last statement, z^a, Sage is looking for a variable called z and trying to exponentiate it with some other variable called a. Note that the symbol ^ is used in Sage for exponentiation. In short, you shouldn't use it to define a new variable.

Preview: (hide)
link

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

Stats

Asked: 14 years ago

Seen: 1,302 times

Last updated: Jan 19 '11