> I am not sure if this will work for DE's involving term like y'(a*x > +b). But if you find a secure method how to find dependent and > independent variables from derivative, you can also fix > bughttp://trac.sagemath.org/sage_trac/ticket/7401
Neither Maple nor Maxima can solve the differential equation involving function of symbolic expression y=function('y',a*x+b) It's not a problem to determine what is differential function and what is it's argument. But to solve such equation we should: 1. declare new variable t=a*x+b 2. express x in term of t x=(t-b)/a 3. substitute it into our equation and solve it 4. return to the old variable All of this steps are able to be automatic. So I think they should be implemented in desolve. > Another related question: if we use topoly_solve=True in solve > command, we get free variabkles, say z2 and z4, if we run the same > command for the second time, we get other variables, say z_5 and z_7. > Should we have similar behavior with free variables from desolve > command? I think that it is better to get the same answer avery time > when I solve the same equation. Hmm.. It IS interesting question, but let's think why should we want constants to be the same or different. -If the constants are the same: it helps us to compare results we obtain, but on the other hand it is hard to compute expression depending on different general solution of the equation. e.g. y'+y+1 have general solution c*exp(-x)-1 but if we want to find difference of two general solution we should 1. find all integration constants (which is unpleasant operation) - c 2. create new one - b 3. subs them into solution and find the difference which is (c-b)*exp(- x) -If the constants are different: it is really easy to compute any expression of general solutions of equation. And what is better it is also really easy to compare two solutions being the same. If sol1-sol2 is constant then solutions sol1 and sol2 are equal (the same) So in my opinion it is better to make difference in constants cause it's much more convenient to deal with. > See also http://trac.sagemath.org/sage_trac/ticket/6882 for similar > problems with %i and %e. So.. an easy way is to use second way I proposed before. But the right way is to implement native desolve command in sage. I wonder is there any Lie algebra support in sage? Cause it will help a lot. P.S.; I think of sage as a symbolic tool and find it kinda lame. So I tried to improve it and make it more "symbolic sage" rather then "native python". Actually it is possible to use mixins and be "native python" and "symbolic sage" at the same time. But I don't need such functionality, so I ask for opinions. What is done - I implemented some sort of topology on existing types (simple wraps) which is more like Maple ones. I post the code and the article after a while to explain all good and bad sides of such approach. I will need some help to finished my topology, cause I'm sure it is not cover all the types. P.P.S.: I don't understand diff function. It change the differentiation order which is sometime is bad. It should be improved too. -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org To unsubscribe from this group, send email to sage-devel+unsubscribegooglegroups.com or reply to this email with the words "REMOVE ME" as the subject.