| Thread Closed |
Blasius Equation |
Share Thread | Thread Tools |
| May7-06, 01:02 AM | #1 |
|
|
Blasius Equation
hi I am trying to write a Fortran 77 code to solve the Blasius equation numerically:
blasius equation: F''' + (1/2)*F*F'' = 0 boundary conditions: f(0)=0.0, F'(0)=0, and limit of F'(eta) as eta approaches infinity is 1.0. This differential equation represents the velocity profile for an incompressible and laminar flow over a flat plate. So far I know this about how to do it: 1. I need to take this 3rd order ode and build asystem of of 1st order odes. I do not how many, probably 3 or 2, I am not sure at this points. 2. i need to use the shooting method to approximate the last boudnary condition and find f''(0) that I can use to continue to implement Runge-Kutta march. If anyone please knows or has already solved this problem , i would really appreciate that you write to me or post here your advice. i am confused and cannt get tarted..once i know the differential equations and the initial conditions properly, i can write the runge kutta algorithm in no time. thanks.
|
| May8-06, 01:29 AM | #2 |
|
|
|
| Nov28-09, 09:33 AM | #3 |
|
|
Hallo! I also have a question. In the blasius equation, since you don't know the value of f(η) in every point, how can you compute the value for the point f(x+h/2,y+k1/2)
it's needed in order to compute the vlaue o k2 and so on... Any suggestions are welcome! |
| Nov29-09, 05:49 AM | #4 |
|
|
Blasius Equation[tex]x'=[x_{2},x_{3},-1/2x_{1}{x_{3},x_{4},x_{5},-1/2(x_{1}x_{6}+x_{4}x_{3})][/tex] with boundary conditions: [tex]x_{0}\equiv [0,0,\alpha,0,0,0] [/tex] why including [tex]F_{,\alpha}[/tex]? because at each step, your error is [tex]F(L,\alpha)-1[/tex], so that next alpha is calculated via a Newton Raphson method: [tex]\Delta \alpha= -F(L,\alpha)/F_{,\alpha}(L,\alpha)[/tex] |
| Nov29-09, 02:27 PM | #5 |
|
|
thanks gato! quite helpful!:)
|
| Jul12-10, 09:22 AM | #6 |
|
|
I also don't get how to solve this equation by making the marching process (f''(0)) automatically .. I know what Newton Raphson method is and used ..but not why F(x,alpha) is assumed ..and how to solve those 6 equation.. also what does ![]() can anyone plz xplain to me that.. thanks in advance... |
| Jul15-10, 08:42 AM | #7 |
|
|
The [tex]\alpha[/tex] parameter is included just because you are solving an initial value problem of third order without the information required (in this case, the value [tex]F''(0)[/tex]). The procedure involves making some guess ([tex]F''(0)=\alpha[/tex]), then advancing the solution form x=0 to a reasonable length (with a Runge Kutta scheme, for instance), then taking [tex]F(L)-1\equiv F(\infty)-1[/tex] as the error of your calculation. You use a Newton Raphson method to iteratively minimize that error as much as you need. The variable [tex]F_{,\alpha}[/tex] is included so that you have the derivative of the error for the Newton Raphson. Hope this helps.
|
| Jul16-10, 07:35 AM | #8 |
|
|
Hello guys. Been following this problem. Not very good though with boundary-value problems other than trial-and error to find the initial conditions. However, I just learned that boundary-value problems can be solved directly in Mathematica:
http://reference.wolfram.com/mathema...DSolveBVP.html I realize though you want to write the code directly and not use Mathematica so perhaps just use this as a reference for future work on BVPs you may wish to solve. Also, the reference cited above does describe the method so perhaps you can review it to gain further insight into implementing it in FORTRAN. Note below I use the method "shooting" and I only went as far as x=20. Not sure how far out I could really go but it does compute a value of f''(0) very close to the actual answer which is approx 0.332 (see http://en.wikipedia.org/wiki/Blasius_boundary_layer). Code:
In[53]:=
sol = NDSolve[{Derivative[3][f][x] +
(1/2)*f[x]*Derivative[2][f][x] ==
0, f[0] == 0, Derivative[1][f][0] ==
0, Derivative[1][f][20] == 1}, f, x,
Method -> "Shooting"]
N[D[f[x] /. sol, x] /. x -> 20]
N[D[f[x] /. sol, {x, 2}] /. x -> 0]
Out[53]=
{{f -> InterpolatingFunction[]}}
Out[54]=
{0.9999999644878674}
Out[55]=
{0.33205733312444885}
|
| Jul19-10, 09:22 AM | #9 |
|
|
Thanks gato and jackwell,
But gato dear, I dont understand how you get the three more 1st order ODE's And what does "F ,alpha" actually mean..I havent seen this notation before... I hope I was able to highlight what my problem is... Btw..I solved blausius equation using automatic marching.using a very simple method (for a layman like me) as follows: Enter a guess value of f''(0), increment it by .1 (just like that) in next iteration...and interpolate the line passing thru 2 these points to the point where f'(0)-1=0, which gives the next iteration value of f''(0)...5-6 iterations are sufficient... But I wanna know what the method ur talking of is all about..a layman like me feels a strong need to understand what u guys are talking about..plz explain to me .. thanks..bye |
| Thread Closed |
| Thread Tools | |
Similar Threads for: Blasius Equation
|
||||
| Thread | Forum | Replies | ||
| Blasius numerical solution? | Differential Equations | 3 | ||
| BLASIUS EQUATION Solution with Finite Difference Method | Engineering, Comp Sci, & Technology Homework | 1 | ||
| Deriving the continuity equation from the Dirac equation (Relativistic Quantum) | Advanced Physics Homework | 3 | ||
| BLASIUS EQUATION Solutıon with Finite Difference Method | Calculus & Beyond Homework | 2 | ||
| Why is Euler equation similar to the gradient of Hamilton-Jacobi equation? | General Physics | 1 | ||