MathGroup Archive 2011

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

Search the Archive

Re: Solving very large systems of ODEs with NDSolve

  • To: mathgroup at smc.vnet.net
  • Subject: [mg115361] Re: Solving very large systems of ODEs with NDSolve
  • From: Oliver Ruebenkoenig <ruebenko at wolfram.com>
  • Date: Sun, 9 Jan 2011 02:16:55 -0500 (EST)

On Fri, 7 Jan 2011, Gabriel Landi wrote:

> Greetings all.
>
> The problem I have in my hands is to solve a very large (500 to 10 000 or +)
> system of non-linear dense ODEs (the Landau-Lifshitz equations in
> particular).
>
> In general, I think what I perhaps would like to ask is general advice on
> implementing large systems in the NDSolve Framework
> In particular, some of the problems that arose are:
>
> - In certain cases, I am not interested in storing the solution to all the
> variables for all t. All I need is the value of each dependent variable at
> the final integration time. I have been using combos of DependentVariables
> and the EventLocator method but so far I haven't been able to formulate the
> problem in a efficient way.

Gabriel,

You could try something like this:

  ndssdata =
   First[NDSolve`ProcessEquations[{Derivative[1][x][
        t] == -3 (x[t] - y[t]),
      Derivative[1][y][t] == -x[t] z[t] + 26.5 x[t] - y[t],
      Derivative[1][z][t] == x[t] y[t] - z[t], x[0] == z[0] == 0,
      y[0] == 1}, {x, y, z}, {t, 0, 200}, MaxSteps -> \[Infinity]]]

  NDSolve`Iterate[ndssdata, 10]
  NDSolve`ProcessSolutions[ndssdata, "Forward"]

  ndssdata@SolutionVector["Forward"]

Oliver

>
> - Each equation has a invariant and using the projection method to control
> the error on these invariants turned out to be a very nice thing.
> Unfortunately, if the system gets larger than 100 or so equations, the
> kernel immediately crashes when I call this method (with no message at all).
> I am not sure why since, when memory is the problem, a message is issued.
> Anyone have any thoughts on this?
>
> Thanks in advance for any suggestions,
>
> Cheers,
>
> Gabriel Landi
>
>
>


  • Prev by Date: Re: Mathematica will be a new feature of HTML6
  • Next by Date: Re: Combining Slider and SetterBar in Manipulate
  • Previous by thread: Re: Solving very large systems of ODEs with NDSolve
  • Next by thread: I'm puzzled by drastic truncation of y-axis in DateListLogPlot