Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

A simple nonlinear ode

  1. Mar 28, 2012 #1
    A "simple" nonlinear ode

    Hi
    Does anyone see a way to solve/approximate this ODE?

    dy'=exp(-f(t)y) with y(0)=yo

    f(t) can be as simple as c*t^3/2 but it may be more complex. This came out as the solution of a very complex problem. This is the final threshold.

    Thanks,

    Donifan
     
  2. jcsd
  3. Mar 28, 2012 #2

    phyzguy

    User Avatar
    Science Advisor

    Re: A "simple" nonlinear ode

    You might try using successive approximations, as follows:
    [tex]y_1(t) = y0[/tex]
    [tex]y_2(t) = y0 + \int_0^t e^{-f(t')y_1(t')}dt'[/tex]
    [tex]y_3(t) = y0 + \int_0^t e^{-f(t')y_2(t')}dt'[/tex]
    [tex]y_4(t) = y0 + \int_0^t e^{-f(t')y_3(t')}dt'[/tex]

    And so on. If f(t) is well behaved, this can converge fairly quickly.
     
  4. Mar 28, 2012 #3
    Re: A "simple" nonlinear ode

    I believe your y0 should be [itex] y_{n-1}(t) [/itex] when writing out the equation for [itex] y_n(t) [/itex]

    I assume you're doing Picard iteration?
     
  5. Apr 2, 2012 #4
    Re: A "simple" nonlinear ode

    Thanks for the suggestion. However even for the simple case of f=t^3/2, y_2 is already a nasty function. I'll keep trying.
     
  6. Apr 2, 2012 #5

    phyzguy

    User Avatar
    Science Advisor

    Re: A "simple" nonlinear ode

    Do you need an analytic solution, or is a numerical integration adequate? For your t^3/2 case, the successive approximations converge after 2-3 iterations if you do the integrations numerically.
     
  7. Apr 2, 2012 #6

    I like Serena

    User Avatar
    Homework Helper

    Re: A "simple" nonlinear ode

    For a numerical approximation you can typically use Runge-Kutta.
     
  8. Apr 2, 2012 #7
    Re: A "simple" nonlinear ode

    Sorry about the confusion. Yes, I am looking for an analytical solution/approximation. I agree the numerical solution is actually simple. Thanks!
     
  9. Apr 2, 2012 #8

    I like Serena

    User Avatar
    Homework Helper

    Re: A "simple" nonlinear ode

    You've got me confused at "analytical approximation"... what is that?

    An analytical solution gets very complex in a hurry.
     
  10. Apr 2, 2012 #9
    Re: A "simple" nonlinear ode

    Analytical approximation would be something like a solution of a different but related problem, so the order of the error can be estimated.

    I know. The analytical solution by the Picard method is pretty much impossible.

    Maybe there is no solution however the equation seems so simple a compact that you almost feel there should be substitution/trick that quickly solves it, at least for f=c t^3/2.

    Thanks.
     
  11. Apr 2, 2012 #10

    I like Serena

    User Avatar
    Homework Helper

    Re: A "simple" nonlinear ode

    Can't you also estimate the error with Runge-Kutta?
    How would any analytical approximation, like Picard's method I guess, be better?
     
  12. Apr 2, 2012 #11
    Re: A "simple" nonlinear ode

    The answer is simple: time. An analytical approximation is faster. The solution is suppose to be part of a humongous code that cannot spare a microsecond.

    P.S. When I said error, I meant from the approximated analytical solution to the actual solution.
     
  13. Apr 2, 2012 #12

    phyzguy

    User Avatar
    Science Advisor

    Re: A "simple" nonlinear ode

    How about this: Even faster than an analytic solution is a look-up table. Given f(t), solve the equation numerically, then build a look-up table with interpolation that returns y given t. This is typically quite fast. Can this work? Is f(t) a given, or is f(t) constantly changing?
     
  14. Apr 2, 2012 #13
    Re: A "simple" nonlinear ode

    The form of f(t) is

    [itex] f(t) = (a^{2} +b t)^{3/2} - a^3 [/itex]

    a and b are constantly changing. The simplest case is a=0. In principle a look up table would work, but I was wondering if a more elegant solution can be reached.

    Thanks.
     
  15. Apr 2, 2012 #14
    Re: A "simple" nonlinear ode

    Just realized there is a typo (there is a d before y' that is no suppose to be there). So the whole problem is

    [itex]y'=\exp[-f(t)y][/itex] with [itex]y(0)=y_0[/itex]

    and

    [itex]f(t) = (a^{2} +b t)^{3/2} - a^3[/itex]

    Thanks.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: A simple nonlinear ode
  1. Nonlinear ODE (Replies: 2)

Loading...