Ask for the syntax of representing operators in Common-Lisp
Subject: Ask for the syntax of representing operators in Common-Lisp
From: Richard Fateman
Date: Wed, 12 Jul 2006 16:33:31 -0700
Here's what you can do..
matchdeclare([a,b,n],true);
tellsimp('diff(f(a),a,n), g(a,n));
Thus for your particular examples,
tellsimp('diff(MyExp(a),a,n), MyExp(a));
tellsimp('diff(MyAtan(a,b),a,1,b,1), (a^2-b^2)/(a^2+b^2)^2)
There have been several proposals, some implemented, for introducing a "pure
operator" calculus in Macsyma. I think one was written up by Jeff Golden,
maybe 20 years ago.
Generally there are choices to be made about semantics that kind of depend
on the circumstances, so there is no universal resolution of all that you
might want to do. If you can't do what you want with simple patterns, you
may have to change your representation more substantially and do a more
functional style of manipulation.
Oh, there is also the deftaylor facility, which doesn't really do what you
say you want to do, but might in fact be useful, since it allows you to
define derivatives as used by taylor expansions.
RJF
-----Original Message-----
From: maxima-admin at math.utexas.edu [mailto:maxima-admin at math.utexas.edu] On
Behalf Of James Hart
Sent: Wednesday, July 12, 2006 3:53 PM
To: maxima at math.utexas.edu
Subject: Re: [Maxima] Ask for the syntax of representing operators in
Common-Lisp
Hello.
I've discovered an extremely useful feature of Mathematica and I was
wondering if it exists in some form in Maxima as well. I am writing a
GUI that can use either Maxima or Mathematica as a back-end, and this
feature of Mathematica has saved me a lot of trouble and potential
bugs, and I was wondering if something similar existed in Maxima. It
could avoid some tricky problems if it did.
The feature I'm talking about is the ability Mathematica has to define
functions which are "the nth derivative of f with respect to parameter
1 in f, the mth derivative of f with respect to parameter 2 in f",
etc. For instance, Derivative[1][Sin] is Cos, and Derivative[n][Exp]
is Exp, and Derivative[1,1][ArcTan] is (#1^2-#2^2)/(#1^2+#2^2)^2 &.
This works even for functions which have not been explicitely defined
and which have no form.
Is there similar notation for such functions in maxima? So far I've
been obfuscating the function names so maxima can swallow them, and
restoring them on input, but this is less than ideal.
_______________________________________________
Maxima mailing list
Maxima at math.utexas.edu
http://www.math.utexas.edu/mailman/listinfo/maxima