<< Click to Display Table of Contents >>

Navigation:  Sample Problems > Applications > Fluids >


Previous pageReturn to chapter overviewNext page


 This example considers the laminar flow of an incompressible, inviscid

 fluid past an obstruction.

 We assume that the flow can be represented by a stream function, PSI,

 such that the velocities, U in the x-direction and V in the y-direction,

 are given by:

       U = -dy(PSI)

       V = dx(PSI)

 The flow can then be described by the equation

       div(grad(PSI)) = 0.

 The contours of PSI describe the flow trajectories of the fluid.

 The problem presented here describes the flow past an airfoil-like figure.

 The left and right boundaries are held at PSI=y, so that U=-1, and V=0.



title "Stream Function Flow past an Airfoil"



  { define PSI as the system variable }




  far = 5     { size of solution domain }

  psi_far = y { solution at large x,y }


equations   { the equation of continuity: }

  psi : div(grad(psi)) = 0



  region 1 { define the domain boundary }

    start(-far,-far) { start at the lower left }

      { impose -dy(psi)=U=-1 (outward normal of psi) on the bottom boundary }

      natural(psi)= -1

    line to (far,-far)   { walk the boundary Counter-Clockwise }

      natural(psi)=0     { impose dx(psi)=0 on right }

    line to (far,far)

      natural(psi)=1     { impose dy(psi)=-U=1 on top }

    line to (-far,far)

      natural(psi)=0     { impose -dx(psi)=0 on left }

    line to close         { return to close }


    start(-0.5,-0.05) { start at lower left corner of airfoil }

      value(psi)=0   { specify no flow through the airfoil surface }

    arc to (0.0,0.02) to (0.5,0.05)       { specify a gentle arc by three points }

    arc (center=0.495,0.1) to (0.5,0.15) { a tight arc by two points and center }

    arc to (0.075,0.105) to (-0.35,0)     { the top arc by three points }

    line to close     { finally a straight line to close the figure }


monitors{ monitor progress while running }

  contour(psi) zoom (-0.6,-0.4,1.4,1.2) as "stream lines"


plots   { write hardcopy files at termination }

  grid(x,y) zoom (-0.6,-0.4,1.4,1.2)

  contour(psi) zoom (-0.6,-0.4,1.4,1.2) as "stream lines"  painted

  { show the flow vectors: }

  vector(-dy(psi),dx(psi)) zoom (-0.6,-0.4,1.4,1.2)as "flow" norm

  surface(psi) zoom (-0.6,-0.4,1.4,1.2) as "stream lines"