Professional Documents
Culture Documents
Orr Sommerfeld
Orr Sommerfeld
Dimensionless Variables
For calculation convenience, it is preferable that we work with dimensionless variables. Therefore, we
introduce the following dimensionless variables, denoted with “^”:
` y ` x ` th ` y ` c ` ` U0
y= , x= , t= , y= , c= , a = h a, U0 = (3)
h h Umax Umax h Umax Umax
The dimensionless form of the Orr-Sommerfeld equation becomes
` `££ `2 ` ` ` ` ` ££ ` ` `H4L `2 `££ `4 `
 aAIy - a yM IU0 @yD - cM - U0 @yD yE = Re-1 Jy - 2 a y + a yN = 0 (4)
where
Umax h ` `2 ` ££
Re = , U0 = I1 - y M, U0 = -2 (5)
n
Now for convenience we drop all the “^” notation to get the working form of the dimensionless Orr-
Sommerfeld equation:
2 SpectralCollocationOSEqn.nb
Definition of Eigenvalues/Eigenvectors
The linear stability of plane Poiseuille flow is determine by Eqs. 6 and 7. The parameters are the
Reynolds number for the flow, the wave number a associated with the disturbance, and c the wave
speed. Recall that the wave speed c is defined in terms of the wave number a and the disturbance
frequency w as
c = wêa (8)
In the derivation of Eqs. (6) and (7), the perturbation stream function perturbation was defined as
Y Hx, y, tL = y HyL Exp@Â Ha x - w tLD = y HyL Exp@Âa Hx - c tLD (9)
To analyze flow stability, one typically sets a and Re, and then finds a non-zero c (or w) and the associ-
ated y that satisfies Eqs. (6) and (7). The parameter c is called the eigenvalue and y the associated
eigenfunction. There is an infinite set of eigenvalues/eigenfunctions that satisfy Eqs. (6) and (7). Since
the eigenvalue problem is non-self adjoint, the eigenvalues can be complex. The complex conjugate
values of a eigenvalue/eigenfunction pair satisfy the adjoint eigenvalue problem. Thus any flow distur-
`
bance, say y, can be expressed as linear combination of all Yi and Yi :
¶
`
y Hx, y, tL = ‚ IAi Yi + Bi Yi M (10)
i=1
The coefficients Ai and Bi are determined from some initial condition for the disturbance, and finding a
suitable biorthogonality relationship for the eigenfunctions. Normally thsi is not required unless the
theory is tested against specified initial disturbances to the flow.
If we define l ª -Â w, then
Y Hx, y, tL = y HyL Exp@Âa x + l tD
and the perturbation will grow with time if the real part of l is positive. With this definition for l the Orr
Sommerfeld equation becomes
Re-1 IyH4L - 2 a2 y££ + a4 yM - 2 Âa y - Âa I1 - y2 M Iy££ - a2 yM =
(11)
l Iy££ - a 2 yM
where now l is the eigenvalue we seek.
When the real part of l is zero (i.e. Re(l)=0), the flow is said to be neutrally stable, The solution to the
eigenvalue problem is often expressed in terms of a neutral stability curve plotted in the plane of a and
Re. For plane Poiseuille flow there is a (acr , Recr L, and for all values less than (acr , Recr L, the flow is
stable to all two dimensional disturbances that satisfy Eq. (11). The most accurate values for these
critical values have been computed by Orszag[2] and are given below:
acr = 1.02056, Re = 5772.22 (12)
The dimensionless form of the eigenvalue problem we will work with is given by Eqs. (6) and (7) and
reproduced below for convenience
Re-1 IyH4L - 2 a2 y££ + a4 yM - 2 Âa y - Âa I1 - y2 M Iy££ - a2 yM =
l Iy££ - a2 yM (13)
y H±1L = 0, y£ H±1L = 0
The spectral collocation code will be based on the method suggested by Trefethen[2]. The key idea is to
define a new function q(y) to handle the 4th order operator appearing in Eq. (13):
y HyL = I1 - y2 M q HyL (14)
Note that the function q(y) satisfies the BCs q(±1)=0, which insures that y£ H±1L = 0.
Then the 4th order operator in terms of q(y) becomes:
„4 y „4 q „3 q „2 q è
= I1 - y2 M -8 y - 12 ª D4 q (15)
4 4 3 2
„y „y „y „y
In the spectral collocation method, all differential operators are discretized at the collocation points to
become matrices Di :
è è
D4 fl D4 ª ˇiag I1 - y2 M D4 - 8 Diag HxL D3 - 12 D2
(16)
„2 „3 „4
ª D2 fl D2 , ª D3 fl D3 , ª D4 fl D4
„y2 „y3 „y4
The notation DiagI1 - y 2 M is a diagonal matrix with elements 1 - yi 2 along its diagonal. The discretized
version of the unknown q(y) at the collocation points, becomes the vector Q, which is related to the
discretized unknown yi ª Ui by
Qi = Ui ë I1 - y2i M (17)
so that
è è
D4 Q = D4 S U, where S = Diag I1 ë I1 - y2 MM (18)
In the next section we developed a Mathematica module that determines the eigenvalues that satisfy
Eq. (21)
4 SpectralCollocationOSEqn.nb
Mathematica Code
The Mathematica code for solving the Orr-Sommerfeld equation using the spectral collocation method is
shown below as a module. It takes 3 parameters: Np (number of collocation points+1), Rey ( Reynolds
number), and a (dimensionless wave number).
OrrSommerfeldSolver@Np_, Rey_, a_D := ModuleA8d, Dmatrix, D2, D3,
D4, D2a, D3a, D4a, diag1, diag2, diag3, S, diag4, A, A1, B, B1, y<,
H*Housam's Differentiation matrix*L
d@0, 0D = H2 Np ^ 2 + 1L ê 6 êê N;
d@Np, NpD = - H2 Np ^ 2 + 1L ê 6 êê N;
y@i_D := Cos@i Pi ê NpD êê N;
d@i_, i_D := - y@iD ê H2 H1 - y@iD ^ 2LL êê N;
d@j_, k_D :=
If@j ¹≠ k && k ¹≠ 0 && k ¹≠ Np && j ¹≠ 0 && j ¹≠ Np , H- 1L ^ Hj + kL ê Hy@jD - y@kDLD êê N;
d@Np, 0D = - 1 ê 2 H- 1L ^ Np;
d@0, NpD = 1 ê 2 H- 1L ^ Np;
d@j_, 0D := If@j ¹≠ Np && j ¹≠ 0, - 1 ê 2 H- 1L ^ j ê H1 - y@jDLD;
d@j_, NpD := If@j ¹≠ Np && j ¹≠ 0, 1 ê 2 H- 1L ^ Hj + NpL ê H1 + y@jDLD;
d@0, j_D := If@j ¹≠ Np && j ¹≠ 0, 2 H- 1L ^ j ê H1 - y@jDLD;
d@Np, j_D := If@j ¹≠ Np && j ¹≠ 0, - 2 H- 1L ^ Hj + NpL ê H1 + y@jDLD;
Dmatrix = Table@d@i, jD, 8i, 0, Np<, 8j, 0, Np<D;
H* generate the differentiation matrices *L
D2 = Dmatrix.Dmatrix;
D3 = Dmatrix.Dmatrix.Dmatrix;
D4 = Dmatrix.Dmatrix.Dmatrix.Dmatrix;
H* generate the diagonal elements for various Diagonal matrices*L
diag1 = TableA1 - N@Cos@i Pi ê NpDD2 , 8i, 0, Np<E;
diag2 = Table@N@Cos@i Pi ê NpDD, 8i, 0, Np<D;
diag3 = Join@80<, Table@1 ê H1 - N@Cos@i Pi ê NpD ^ 2DL, 8i, 1, Np - 1<D, 80<D;
S = DiagonalMatrix@diag3D;
H*Here we assemble the the matrices A
and B for the generalized eigen value problem: AU=lBU *L
A = Rey-1 IHDiagonalMatrix@diag1D.D4 - 8
DiagonalMatrix@diag2D.D3 - 12 D2L.S - 2 a2 D2 + a4 IdentityMatrix@Np + 1DM -
2 a I IdentityMatrix@Np + 1D
- I a DiagonalMatrix@diag1D.HD2 - IdentityMatrix@Np + 1DL;
B = ID2 - a2 IdentityMatrix@Np + 1DM;
H*Because of the BCs: qH-1L=0,qH1L=0 we delete the first and last
rows and its first and last columns of the A and B matrices. *L
A1 = A@@2 ;; Np, 2 ;; NpDD;
B1 = B@@2 ;; Np, 2 ;; NpDD;
H*Next we solve the generalized eigenvalue problem*L
res = Reverse@Eigenvalues@8A1, B1<DD;
ListPlot@res ê. Complex@a_, b_D Ø 8a, b<, Frame Ø True, PlotRange Ø
880.5, - 2<, All<, FrameLabel Ø 8Style@"ReHlL", 18D, Style@"ImHlL", 18D<,
PlotLabel Ø "Most dangenerous mode:\n l=" <>
ToString@NumberForm@res@@1DD, NumberFormat Ø HRow@8Ò1, "e", Ò3<D &LDDD
E
The following calculation is for a Reynolds number greater than Recrit = 5777.2, but at acrit . As expected
the flow is unstable
SpectralCollocationOSEqn.nb 5
The following calculation is for a Reynolds number greater than Recrit = 5777.2, but at acrit . As expected
the flow is unstable
OrrSommerfeldSolver@100, 6000, 1.02056D
Most dangenerous mode:
l=0.000410434e - 0.262444e I
0.0
-0.2
-0.4
ImHlL
-0.6
-0.8
ReHlL
The following calculation is at acrit but at Re < Recrit = 5772.22. At expected the flow is stable!
OrrSommerfeldSolver@100, 5770, 1.02056D
Most dangenerous mode:
l=-7.31696e-6 - 0.264215e I
0.0
-0.2
-0.4
ImHlL
-0.6
-0.8
ReHlL
The following is a check on Orszag’s results given in Table 1 from his publication. All digits shown in the
plot below for the most dangeous mode agree precisely with Orszag’s value who used 50 Chebyshev
polynomials
6 SpectralCollocationOSEqn.nb
OrrSommerfeldSolver@50, 10 000, 1D
Most dangenerous mode:
l=0.00373967e - 0.237526e I
0.0
-0.2
ImHlL
-0.4
-0.6
-0.8
ReHlL
References
1. S. A. Orszag, Accurate solution of the Orr-Sommerfeld stability equation, J. Fluid Mech., 50,
pp. 689-703, (1971)
2. L. N. Trefethen, Spectral Methods in Matlab, SIAM, (2000)