Robert Bradshaw wrote:
> On Feb 22, 2009, at 1:38 AM, Burcin Erocal wrote:
> 
>>> My first thought is that doing the above might be somewhat orthogonal
>>> to pynac, since pynac provides the low-level symbolic manipulation,
>>> and the above would just be a natural thing built on top of that.
>> I agree that the above is independent of changes to pynac. We provide
>> support for functions through the CallableSymbolicExpression class in
>> sage.calculus.calculus. This is the same for pynac and maxima based
>> symbolics.
>>
>> In order to make vector valued funtions to work, you will need to  
>> extend
>> that class to allow multiple outputs, then sort out the preparser.
> 
> I don't think one would want to have multiple outputs, rather one  
> would want to have a *single* (symbolic) vector as output. It might  
> make more sense to simply allow symbolic vectors to be callable,  
> passing the arguments to each of their components.

I agree that you would want a single symbolic vector as output. 
However, I don't think that extending symbolic vectors alone does all 
that is needed.  There are definite advantages to specifying the names 
and order of variables.  For example: vector([x+y, y+z])(1,2) would make 
sense with the above proposal, but almost certainly not be what was 
intended (i.e, would return vector([3,3]), instead of vector([3,2+z]), 
as would be consistent now).

Instead, f(x,y,z) = vector([x+y, y+z]) knows that f(1,2,3) means x=1, 
y=2, and so would output vector([3, 2+z])

Also, it seems weird to have symbolic vectors have a jacobian function, 
especially when the user doesn't get a chance to specify the ordering of 
the variables.

Jason


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to