Third-order nonlinear ODE with boundary condition

rosecat
Messages
2
Reaction score
0
I'm trying to solve a third-order nonlinear ordinary differential equation. I couldn't get the answer even using Mathematica.

The equation is:

u'''(t) + u/2 u''(t) = 0

with conditions u(0)=0, u'(0)=0, u(10)=1.

I need to get both analytic solution and numerical solution. For the numerical solution, I'm thinking the Newton iterative algorithm. But for the analytic solution, I really have no idea.
 
Physics news on Phys.org
rosecat said:
I'm trying to solve a third-order nonlinear ordinary differential equation. I couldn't get the answer even using Mathematica.

The equation is:

u'''(t) + u/2 u''(t) = 0

with conditions u(0)=0, u'(0)=0, u(10)=1.

I need to get both analytic solution and numerical solution. For the numerical solution, I'm thinking the Newton iterative algorithm. But for the analytic solution, I really have no idea.

I mean if you're using Mathematica, just use NDSolve:

Code:
myguesses = {0.1, 0.15, 0.2}; 
sols = (First[NDSolve[{Derivative[3][u][t] + (u[t]/2)*Derivative[2][u][t] == 0, u[0] == 0, Derivative[1][u][0] == 0, 
        u[10] == 1}, u, t, Method -> {"Shooting", "StartingInitialConditions" -> {u[0] == 0, Derivative[1][u][0] == 0, 
           Derivative[2][u][0] == #1}}]] & ) /@ myguesses; 
Plot[Evaluate[u[t] /. sols], {t, 0, 10}, PlotStyle -> {Black, Blue, Green}]

tweek it as you see fit. As far as an analytic solution, in an act of utter desperation, I would resort to power series.
 
jackmell said:
I mean if you're using Mathematica, just use NDSolve:

Code:
myguesses = {0.1, 0.15, 0.2}; 
sols = (First[NDSolve[{Derivative[3][u][t] + (u[t]/2)*Derivative[2][u][t] == 0, u[0] == 0, Derivative[1][u][0] == 0, 
        u[10] == 1}, u, t, Method -> {"Shooting", "StartingInitialConditions" -> {u[0] == 0, Derivative[1][u][0] == 0, 
           Derivative[2][u][0] == #1}}]] & ) /@ myguesses; 
Plot[Evaluate[u[t] /. sols], {t, 0, 10}, PlotStyle -> {Black, Blue, Green}]

tweek it as you see fit. As far as an analytic solution, in an act of utter desperation, I would resort to power series.
Thank you jackmell!

For the numerical solution, I have to write out the algorithm and programming in MATLAB. No library could be used.

For the analytic solution, I tried DSolve but It didn't work. I am trying the power series.

Again, thanks a lot!
 
There are two things I don't understand about this problem. First, when finding the nth root of a number, there should in theory be n solutions. However, the formula produces n+1 roots. Here is how. The first root is simply ##\left(r\right)^{\left(\frac{1}{n}\right)}##. Then you multiply this first root by n additional expressions given by the formula, as you go through k=0,1,...n-1. So you end up with n+1 roots, which cannot be correct. Let me illustrate what I mean. For this...
Back
Top