I have one solution :)   very very poor (really very poor) solution
and from this reason I will not supply the patch yet.

The method is to call ode2 again, now together with ic2 in one new
call of Maxima.

The (fixed) file is desolvers.py is at 
http://user.mendelu.cz/marik/temp/desolvers.py

The new lines are also on the bottom of this post. Sure, I think that
nobody (including me) will know after few weeks, what does it
mean .... I do not think that it is a good idea to insert such a code
into Sage, but we have at least something now and I suppose to
continue in my work and develop some clean nice code for inclusion
into Sage


My idea was to produce a string like

ic2(ode2('diff(y,x)+5*y=0,y,x),x=2,y=4,diff(y,x)=14) and pass it to
maxima

Seems that something similar is in interfaces/maxima.py

Robert Marik



----------------------------------------------

if soln.lhs() != dvar:
   raise NotImplementedError, "Sage is unable to use initial
conditions for this equation."
tempeq=de0._maxima_().str().replace("'"+dvar.operator()._maxima_().str
()+"("+ivar._maxima_().str()+")",dvar.operator()._maxima_().str())

tempic=(ivar==ics[0])._maxima_().str()

tempic=tempic+","+(dvar==ics[1])._maxima_().str()

tempic=tempic+","+(diff(dvar,ivar)==ics[2])._maxima_().str().replace
("'"+dvar.operator()._maxima_().str()+"("+ivar._maxima_().str()
+")",dvar.operator()._maxima_().str())

tempic=tempic.replace("'"+dvar.operator()._maxima_().str()
+"("+ivar._maxima_().str()+")",dvar.operator()._maxima_().str())

cmd="ic2(ode2("+tempeq+","+dvar.operator()._maxima_().str()

cmd=cmd+","+ivar._maxima_().str()+"),"+tempic+")"
#            print cmd

soln=maxima(cmd)


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

Reply via email to