Hm, the things are not as simple as I originaly thought. Your ?g1543
seems to be a dummy variable, which is used by Maxima. Do not know how
to support it in Sage.

This is our example 3 in Maxima

Maxima 5.21.1 http://maxima.sourceforge.net
using Lisp CLISP 2.44.1 (2008-02-23)
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) display2d:false;
(%o1) false
(%i2) eq1: 'diff(x1(t),t) = -3*(x2(t)^2-1);
(%o2) 'diff(x1(t),t,1) = -3*(x2(t)^2-1)
(%i3) eq2: 'diff(x2(t),t) = 1;
(%o3) 'diff(x2(t),t,1) = 1
(%i4) desolve([eq1,eq2],[x1(t),x2(t)]);
(%o4) [x1(t) = 'ilt(-((3*'laplace(x2(t)^2,t,?g21841)-x1(0))*?g21841-3)
                     /?g21841^2,?g21841,t),x2(t) = t+x2(0)]
(%i5)

Robert

On 27 srp, 14:05, "ma...@mendelu.cz" <ma...@mendelu.cz> wrote:
> Both desolve_system and desolve_laplace use Maxima's function desolve.
> Desolve_laplace has been updated in 2009, but desolve_system not. I
> believe that desolve_system could be improved in the same way as
> desolve_laplace. Please, make a trac report and put me (robert.marik)
> into Cc field. Thanks
>
> Robert
>
> On 26 srp, 23:25, Ryan Hinton <iob...@email.com> wrote:
>
> > I am having trouble trying to use desolve_system.  Am I doing
> > something wrong?  If not, I can create trac tickets for these errors.
>
> > 1.  If I make the reference manual example easier, I get an exception:
>
> > sage: t = var('t')
> > sage: x = function('x', t)
> > sage: de1 = diff(x,t) + 1 == 0
> > sage: desolve_system([de1], [x])
> > ...
> > TypeError: unable to make sense of Maxima expression '(x(t)=x(0)-t)
> > [1]' in Sage
>
> > 2.  Initial conditions are apparently ignored.
>
> > sage: t = var('t')
> > sage: epsilon = var('epsilon')
> > sage: x1 = function('x1', t)
> > sage: x2 = function('x2', t)
> > sage: de1 = diff(x1,t) == epsilon
> > sage: de2 = diff(x2,t) == -2
> > sage: desolve_system([de1, de2], [x1, x2], ivar=t)
> > [x1(t) == epsilon*t + x1(0), x2(t) == -2*t + x2(0)]
> > sage: desolve_system([de1, de2], [x1, x2], ics=[1,1], ivar=t)
> > [x1(t) == epsilon*t + x1(0), x2(t) == -2*t + x2(0)]
>
> > 3.  Making the example nonlinear, I get a different exception.
>
> > sage: t = var('t')
> > sage: x1 = function('x1', t)
> > sage: x2 = function('x2', t)
> > sage: de1 = (diff(x1,t) == -3*(x2^2-1))
> > sage: de2 = (diff(x2,t) == 1)
> > sage: desolve_system([de1, de2], [x1, x2], ivar=t)
> > ...
> > TypeError: unable to make sense of Maxima expression 'x1(t)=ilt(-
> > ((3*laplace(x2(t)^2,t,?g1543)-x1(0))*?g1543-3)/?g1543^2,?g1543,t)' in
> > Sage
>
> > In the process of putting in my full, complicated example, I found the
> > bug that produced yet another, confusing exception.  :-)
>
> > Any guidance or suggestions are appreciated.  Thanks!
>
> > - Ryan

-- 
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

Reply via email to