MathGroup Archive 1998

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

Search the Archive

Re: variation of constant (in ODE)

  • To: mathgroup at
  • Subject: [mg14632] Re: variation of constant (in ODE)
  • From: Paul Abbott <paul at>
  • Date: Wed, 4 Nov 1998 13:47:01 -0500
  • Sender: owner-wri-mathgroup at

[Please contact Paul to obtain the notebook mentioned below - mod.]

Alexander D. Khilinsky wrote:

> Does anybody know, where I can find the Mathematica package,which
> implement the method  "variation of constant" (uses in solving ODE).
> Particularly, I need the implementation of methods of perturbation
> theory, for example,method of Bogolubov-Krylov-Mitropolsky.

The following package by Stephen Kaufmann, available from MathSource,
should do what you want:

       The aim of this package is to show a possible
       implementation of perturbation methods with Mathematica.
       It can be used to generate educational examples of
       perturbation exapansions. The methods of straightforward
       expansions, strained coordinates, and matched and composite
       solutions are implemented.

You also need the following package:

       The Mathematica functions Positive, Negative, and
       NonNegative evaluate for numbers only. They can be used to
       define properties of symbols but for combinations of such
       symbols, the properties are not evaluated any further. The
       function NonNegativeQ tries to find out if the result cannot
       be negative. In such cases, it returns True, otherwise False.

I had already downloaded these Notebooks.  Unfortunately, it looks like
there were some conversion problems when they were updated from
V2.2->V3.0. In particular, the section on Matched and Composite
Expansions is slightly broken.  However, most functions work fine.  I
have attached (slightly) edited versions of these Notebooks.  I've also
Cc:d this to Stephan as he might want to fix the problems I've

> For example, I have equation :
> u''(x) + u(x) + eps*u(x)^2 == 0
> and I know that u(x) = a*cos(t+b), where a=a(t),b=b(t). I want to know
> the OD equations for a(t), and b(t).

Using Stephan's package, I get the following solution:

Cos[t] + (eps (-3 + 2 Cos[t] + Cos[2 t])) / 6 +

           2                    5 eps
       (eps  (-48 + 29 Cos[(1 - ------) t] +
                     5 eps
       16 Cos[2 (1 - ------) t] +

                    5 eps
       3 Cos[3 (1 - ------) t])) / 144


Paul Abbott                                   Phone: +61-8-9380-2734
Department of Physics                           Fax: +61-8-9380-1014
The University of Western Australia
Nedlands WA  6907                     mailto:paul at

            God IS a weakly left-handed dice player

  • Prev by Date: Help please, Agility of Power Series
  • Next by Date: Controlling default plot size
  • Previous by thread: Re: Help please, Agility of Power Series
  • Next by thread: Controlling default plot size