Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion patches for the calculus code
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
William Stein  
View profile  
 More options Nov 2 2008, 2:38 pm
From: "William Stein" <wst...@gmail.com>
Date: Sun, 2 Nov 2008 11:38:25 -0800
Local: Sun, Nov 2 2008 2:38 pm
Subject: Re: [sage-devel] patches for the calculus code
On Sun, Nov 2, 2008 at 3:10 AM, Wilfried_Huss

<h...@finanz.math.tugraz.at> wrote:

> Hi,

> I have written some code for the Maxima interface.
> You can find the patches at:
>  http://www.math.tugraz.at/~huss/sage

> calculus1.patch implements the conversion from Maxima
> matrices to Sage matrices.

> calculus2.patch adds symbolic gamma and factorial functions.
> (The factorial is named fact() so it doesn't clash with the
> factorial in sage.rings.arith)

> Finally calculus3.patch renames the symbolic factorial to factorial(),
> and changes all imports of sage.rings.arith.factorial to
> sage.calculus.calculus.factorial. I had to keep a renamed version
> of the factorial function in sage.rings.arith to avoid circular
> imports at startup.

> The patches are against 3.2-alpha1, after applying all 3 patches
> all tests passed.

> Here is a sample session with the new functionality:

> sage: var('x,y')
> sage: v = maxima('v: vandermonde_matrix([x, y, 1/2])')
> sage: v
> matrix([1,x,x^2],[1,y,y^2],[1,1/2,1/4])
> sage: type(v)
> <class 'sage.interfaces.maxima.MaximaElement'>
> sage: v.sage()

> [  1   x x^2]
> [  1   y y^2]
> [  1 1/2 1/4]
> sage: mlist = maxima('[v, sin(x), 1, v.v]').sage()
> sage: mlist

> [[  1   x x^2]
> [  1   y y^2]
> [  1 1/2 1/4],
>    sin(x),
>    1,
>    [       x^2 + x + 1    x*y + x^2/2 + x    x*y^2 + 5*x^2/4]
> [       y^2 + y + 1        3*y^2/2 + x  y^3 + y^2/4 + x^2]
> [               7/4      y/2 + x + 1/8 y^2/2 + x^2 + 1/16]]
> sage: [parent(i) for i in mlist]

> [Full MatrixSpace of 3 by 3 dense matrices over Symbolic Ring,
>    Symbolic Ring,
>    Symbolic Ring,
>    Full MatrixSpace of 3 by 3 dense matrices over Symbolic Ring]

> sage: gamma(x/2)(x=5)
> 3*sqrt(pi)/4

> sage: f = factorial(x + factorial(y))
> sage: maxima(f).sage()
> factorial(factorial(y) + x)

> sage: f(y=x)(x=3)
> 362880

> I hope it is useful.

> Greetings,
> Wilfried Huss

Thanks!  Could you write to Michael Abshoff (<mabsh...@googlemail.com>) and ask
for a trac account, then open three trac tickets, one
for each of the above? Thanks again!

William


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.