Re: Solving very large systems of ODEs with NDSolve
- To: mathgroup at smc.vnet.net
- Subject: [mg115354] Re: Solving very large systems of ODEs with NDSolve
- From: Oliver Ruebenkoenig <ruebenko at wolfram.com>
- Date: Sat, 8 Jan 2011 03:40:52 -0500 (EST)
Hello Gabriel, 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. Does that mean that you are looking for the stationary solution? Perhaps you can reformulate your problem as a time independent problem then. Currently it is not possible to tell NDSolve (e.g. via an option) to selectively store parts of the solution during the time integration. But we are aware that this may be useful in a few cases. > > - 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? > If you see a crash you should report that to the support, along with information about the version and OS you use. Oliver > Thanks in advance for any suggestions, > > Cheers, > > Gabriel Landi > > >