Not really a bug per se, but a limitation. The itensor package generally
cannot deal with tensor expressions that appear as function arguments.
Function arguments are treated by itensor as opaque, and are excluded from
itensor operations, which is why contract and rename were ineffective. On
the other hand, diff applies its standard rules to the expression with no
regard to the fact that some of the terms it is manipulating represent
indexed objects, and the result is an unpredictable mess.
Viktor
-----Original Message-----
From: maxima-bounces at math.utexas.edu [mailto:maxima-bounces at math.utexas.edu]
On Behalf Of Dmitry Shkirmanov
Sent: Tuesday, June 05, 2012 8:56 AM
To: maxima at math.utexas.edu
Subject: Bug in the itensor package?
Hello,list.
Maxima 5.27.0 http://maxima.sourceforge.net
using Lisp CLISP 2.48 (2009-07-28)
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) load(itensor)$
...
...
(%i2) expr: erfc(-x([i],[])*y([],[i]))$
(%i3) expr: contract(expr)$
(%i4) expr: rename(expr);
(%o4) 2 - erfc(y([], [i]) x([i], []))
(%i5) diff(expr, y([],[i]));
2 2
- y ([], [i]) x ([i], [])
2 %e x([i], []) kdelta([i], [i])
(%o5) ---------------------------------------------------------
sqrt(%pi)
(%i6)
As it can be seen from this example, the rename() function does not work
correctly. Next, it seems, that the diff() function
does not work correctly too. Is it bug?
_______________________________________________
Maxima mailing list
Maxima at math.utexas.edu
http://www.math.utexas.edu/mailman/listinfo/maxima