I am trying to define diff1(expr, u,z) with a block
function which declares inside the function that u
depends on z, and after the needed work, tries to remove
that dependency, also inside the block.
The function definition is applied to the example
submitted to the list by Ivo Welch in the thread:
[1] enter (in console) ; [2] implicit functions
using the depends method of Jaime Villate.
remove does not work with the following def:
(using xmaxima and ver. 5.28.0)
----------------------------------
(%i1) display2d:false$
(%i2) dependencies;
(%o2) []
(%i3) diff1(expr,ydep,xindep) :=
block([dexpr],
depends(ydep,xindep),
dexpr : diff(expr,xindep),
remove (ydep, dependency),
solve (dexpr, diff (ydep,xindep)))$
(%i4) diff1(y+log(y)+x,y,x);
(%o4) ['diff(y,x,1) = -y/(y+1)]
(%i5) dependencies;
(%o5) [y(x)]
(%i6) remove (y, dependency);
(%o6) done
(%i7) dependencies;
(%o7) []
-----------------------------
Ted Woollett