Dismiss Notice
Join Physics Forums Today!

Solving Non-linear System

  1. Oct 26, 2010 #1

    I have numerically solved the system below:

    dalpha/dx = -beta/(c_1)
    dbeta/dx = -(c_2)*beta/(c_1)+(c_3)*gamma*dgamma/dx
    dgamma/dx = (c_4)*[alpha^(c_5)]/c_2

    where c_1, c_2, etc. are specified constants. If one plots beta as a function of x, there's a peak. I would like to use some approximations (perhaps linearization?) to get the distance between a region where dbeta/dx is approximately zero and where there is a peak in beta, after given an initial value of alpha, beta, and gamma where dbeta/dx ~ 0. Any suggestions?
  2. jcsd
  3. Oct 27, 2010 #2
    That's not clear. For starters, if you ran it and got a result, then you must have used numbers for the constants. Re-post the system with the actual values of the constants, nicely preferably like:

    \frac{d\alpha}{dx}&=-\frac{\beta}{2.5}&\quad, \alpha(x_0)=\alpha_0 \\
    \frac{d\beta}{dx}&=-\frac{3.2 \beta}{1.4}+0.5 \gamma \frac{d\gamma}{dx}&\quad, \beta(x_0)=\beta_0 \\
    \frac{d\gamma}{dx}&=\frac{9.2 \alpha^{2.5}}{4}&\quad, \gamma(x_0)=\gamma_0

    or whatever. Still though don't understand what you want. Maybe you could post a plot of beta showing what you wish to compute.
    Last edited: Oct 27, 2010
  4. Oct 27, 2010 #3
    Ok, here's the system with constants. I made an error before too, for some reason the preview post is acting up with latex. Second equation should be multiplied by 0.89 in the last term. And the last equation below should have a gamma on the right hand side.


    \frac{d\beta}{dx}=-\frac{0.89 \beta}{1.0}+0.5\frac{d\gamma}{dx}0.89

    \frac{d\gamma}{dx}= \frac{0.1 \alpha^{8.0}}{0.89}\gamma

    For the plot of beta, the solution is very similar to that of the heat equation with the x=0 end fixed to zero and the other end fixed to some small value of beta say 0.003. So if I'm at the end where beta = 0.003, alpha = 0.505, gamma = 0.98 and dbeta/dx is approx. zero, how can I estimate the distance between this point and the point where beta is a maximum?
  5. Oct 27, 2010 #4
    That came out correct.
  6. Oct 27, 2010 #5
    ok. Thank you. Not sure I can run it in NDSolve in Mathematica tonight but give me some time if you're not in a hurry.
  7. Oct 27, 2010 #6
    That would be great, thank you.
  8. Oct 27, 2010 #7
    It might not require Mathematica if some type linearization approximation can be made, but I'm not completely sure.
  9. Oct 28, 2010 #8
    Arnold, that's still not clear at all. You didn't give the initial conditions. Also, simplify the equations:

    \frac{d\alpha}{dx}&=-\beta&\quad, \alpha(x_0)=\alpha_0 \\
    \frac{d\beta}{dx}&=-0.89 \beta+0.05 \alpha^8&\quad, \beta(x_0)=\beta_0 \\
    \frac{d\gamma}{dx}&=\frac{1}{8.9} \gamma \alpha^8&\quad, \gamma(x_0)=\gamma_0

    And this part:

    is very unclear. The solution to the 1-D heat equation is a 2-D surface, beta(x) is a curve and when you say, "at the end where beta=0.003, alpha=0.505, gamma=0.98" is very misleading in terms of relating it to the heat equation and the last phrase is confusing as well. I don't wish to just give up on you though.

    Here's what I did, I solved it via NDSolve with initial conditions alpha=0.505, beta=0.003, gamma=0.98, from x=0 to 10, then plotted beta. The plot below is what I got. How is that not what you want?

    Code (Text):

    mysol = NDSolve[
       {Derivative[1][\[Alpha]][t] == -\[Beta][t],
        Derivative[1][\[Beta]][t] ==
         -0.89*\[Beta][t] + 0.05*\[Alpha][t]^8,
        Derivative[1][\[Gamma]][t] ==
        \[Alpha][0] == 0.505, \[Beta][0] == 0.003,
        \[Gamma][0] == 0.98}, {\[Alpha], \[Beta], \[Gamma]},
       {t, 0, 10}]
    myplot = Plot[Evaluate[\[Beta][t]] /. mysol,
       {t, 0, 10}, PlotRange ->
        {{0, 10}, {0, 0.003}}]\

    Attached Files:

  10. Oct 28, 2010 #9
    It's better to leave in those constants separately instead of combining them. If I'm after an analytical solution, there's probably only a solution for certain parameters or constants. I've attached a plot of beta. At x=1000, beta = 0.0003 and dbeta/dx is appoximately zero. From here, how can I analytically find the distance between x=1000.0 and the peak as function of the initial conditions and initial constants.
  11. Oct 28, 2010 #10
    Hmm...didn't attach.

    Attached Files:

  12. Oct 28, 2010 #11
    Assuming the equations as you've written them, what initial conditions are you using to generate that graph?
  13. Oct 28, 2010 #12
    beta (x=1000) = 0.000328129045, gamma = 0.965029518992, alpha = 0.527852167165
  14. Oct 29, 2010 #13
    There is a method called Singular Perturbation method where explicitly set [itex]\frac{d \beta}{dx}=0[/itex] and then replace the resulting numbers in the other equations. Then you analyze the stability of that system and compare it with the original system. That will give you an idea of the validity of this approximation. You can also set it to a nonzero number.

    This is usually done in the systems where fast and slow dynamics are seperated and fast dynamics are neglected, since if they are stable dynamics they saturate to the limit pretty fast as if they were constant in the first place. Actually that is how the simple DC motor model in engineering is derived from the original nonlinear model.
    Last edited: Oct 29, 2010
  15. Oct 29, 2010 #14
    Thats a good suggestion, I look into it. The thing is, I know that the solution to this system is a power law, and that the distance to the peak only relies on the constants which are 0.89, 0.1, and alpha^8.0. I got this from the numerical solution, but getting something this simple analytically is proving to be difficult.

Have something to add?