MathGroup Archive 1995

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: How to prevent Solve from DSolve?

  • To: mathgroup at christensen.cybernetics.net
  • Subject: [mg908] Re: How to prevent Solve from DSolve?
  • From: bronstei at inf.ethz.ch (Manuel Bronstein)
  • Date: Sun, 30 Apr 1995 03:42:35 -0400
  • Organization: Dept. Informatik, Swiss Federal Institute of Technology

In article <3nkbu2$mq8 at news0.cybernetics.net>,
Richard Q. Chen <chen at fractal.eng.yale.edu> wrote:
>Hi,
>	I find it very frustrating that Mma always tries
>to give explicit solutions to an ODE, even if the solutions are
>so complicated as to be useless. For example
>
>In[2]:= Needs["Calculus`DSolve`"]
>
>In[3]:= DSolve[2 y[x] + (x + y[x]) y'[x] == 0, y[x], x]
>
>Out[3]= {{y[x] -> 
> 
> [... large output deleted ...]
> 
>I would like to have Mma out put something like f(x,y) == C[1] so
>that I will know what kind of simpler function f(x,y) may be. I can
>then choose to solve for y in terms of x if it is desirable.
>

You're right, that's the proper way to return solutions of nonlinear odes.
FYI, if you have access to a copy of Axiom, that's exactly the kind of
answer it's returning on such problems (the '== C[1]' is not printed, but
that's the meaning of the output):
(1) ->y := operator y

   (1)  y
                                                          Type: BasicOperator
(2) ->solve(2 * y x + (x + y x) * D(y x,x) = 0, y, x)

             2
        2y(x)  + 6x y(x)
   (2)  ----------------
              +----+
            3\|y(x)
                                          Type: Union(Expression Integer,...)

Interestingly, not as simple a first integral as the one you got by hand.

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

    ____________                    Manuel Bronstein
   /      /    /   /                bronstein at inf.ethz.ch
  /---   /    /___/                 Institute for Scientific Computation
 /      /    /   /                  ETH Zurich, Switzerland
 ----  /    /   /                   Tel: [+41] (1) 632-7474
                                    Fax: [+41] (1) 632-1172

        http://www.inf.ethz.ch/department/WR/html/people/bronstein.html

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


  • Prev by Date: Re: Eigensystem
  • Next by Date: Re: Challenge!
  • Previous by thread: Re: How to prevent Solve from DSolve?
  • Next by thread: Error in graphical display