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

Non-linear second order ODE

  1. Feb 10, 2013 #1
    Hi all,

    I have a nonlinear ODE in the following form:

    a x'' + b |x'|x' + c x' + d x = y

    where x and y are functions of time and a,b,c and d are constants. As far as I can tell the only way to solve this is numerically, something I've managed to do successfully using a Rung-Kutta scheme. This however is a lengthy calculation, since the driving function (y) is oscillatory I am mostly interested in the phase and magnitude of the response I am looking for an alternative method.

    I'm wondering if I can use a Fourier series to represent the driving function y and then calculate the resulting Fourier series for x (actually it is the x' term I am most interested in) using an FFT? But I'm not sure if this is possible due to the nonlinear term in x'.

    Any help/suggestions would be greatly appreciated.
  2. jcsd
  3. Feb 14, 2013 #2
    This is more of a question than an answer. If x and y are both functions of time (i.e., x(t) and y(t)), then can we not pick any x(t) to solve for y(t)? For example, if x(t)=t^3 then:

    [itex] x'(t) = 3t^2, x''(t) = 6t [/itex]

    Then let [itex]y(t) = t^4 + d t^3 + c t^2 + 6at + 9b [/itex], and you have an x(t) and y(t) such that [itex]a x''(t) + b |x'(t)|x'(t) + c x'(t) + d x(t) = y(t)[/itex], but there are in fact an infinite number of (x(t),y(t)) pairs, so this solution is somewhat trivial.

    Might you mean x is a function of y? Then: [itex]a x''(y) + b |x'(y)|x'(y) + c x'(y) + d x(y) = y[/itex]

    Or I'm just not understanding something. Let me know.
  4. Feb 14, 2013 #3

    D H

    User Avatar
    Staff Emeritus
    Science Advisor

    A driven spring mass damper system with linear and quadratic damping? Ouch.

    That quadratic drag (worse than quadratic, there's an absolute value) is going to make a Fourier decomposition tough.

    The damping is going to make this a stiff system, and the quadratic damping is going to make the stiffness rather interesting.

    The key problem with a fixed step size integrator such as basic Runge Kutta is that the stiffness mandates that the step size be very small. It's going to take a long time to solve and will lose accuracy in the process.

    Have you tried using adaptive techniques such as Runge Kutta Fehlberg, Cash-Karp, adaptive Adams Bashforth Moulton, Gauss Jackson?

    Have you tried using adaptive integration techniques such as Kaps-Rentrop, various descendants of the Gear technique that are aimed specifically at stiff problems?
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook