Ask Your Question
0

how to define a constant in sage?

asked 13 years ago

anonymous user

Anonymous

Hello, I just started using sage. I am having some difficulties in declaring constants. I am trying to calculate derivatives of functions but I don't want to put values for the constant but rather define constants in the function. Somehow I am not able to find any literature on that.

I would be really grateful if someone can help me with this issue.

Cheers,

Sanyog

Preview: (hide)

2 Answers

Sort by » oldest newest most voted
1

answered 13 years ago

The code

sage: var('x y z')
(x, y, z)
sage: f = 3*x*y + 2*z + 12
sage: f.diff(x)
3*y
sage: g(x,y,z) = 3*x*y + 2*z + 12
sage: g.diff(x)
(x, y, z) |--> 3*y

provides two slightly different ways of defining a function involving x, y, and z, then differentiating with respect to x, thus treating y and z as constants. Is this what you want?

Preview: (hide)
link

Comments

1

To follow up, I think that John means just doing `var('a')` will make `a` a "symbolic constant" in the sense you desire.

kcrisman gravatar imagekcrisman ( 13 years ago )
-1

answered 3 years ago

ny2292000 gravatar image

This is a follow up. This is my code:

var("theta ee")
u=cos(theta)+ee
diff(u(theta),theta)

this is the output:

-sin(theta) + 1

I don't understand what is going on. Nowhere was ee equated to theta.

What is happening here?

Preview: (hide)
link

Comments

You should really ask a separate question rather than posting a follow-up to a 9-year old question. If you evaluate u(theta), you will see that it is substituting theta in for ee: u is an expression involving two variables, and it substitutes the first one for ee, the second for theta. So u(1, 2) will give cos(2) + 1). Anyway, u(theta) evaluates to cos(theta) + theta, and then you're differentiating that.

John Palmieri gravatar imageJohn Palmieri ( 3 years ago )

With my version of Sage, u(theta) also produces a warning about variable substitution. If you instead do u(theta=theta), you will get what you expect, and the derivative will be what you expect.

John Palmieri gravatar imageJohn Palmieri ( 3 years ago )

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: 13 years ago

Seen: 8,279 times

Last updated: Mar 19 '12