Академический Документы
Профессиональный Документы
Культура Документы
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)