Lesson 12 U LTRASPHERICAL SPECTRAL METHODS
• Recall from last lecture we found a fast way of computing a derivative of function • In other words, we can apply the differentiation operator D ˇ u efficiently • On the other hand, the differentiation operator itself is dense: 0 1 3 5 · · · 4 8 12 ... 6 10 8 12 D = ... 10 12 ... • Thus imposing the equation in coefficient space loses efficiency, and hence we will focus on constructing the equation in value space � We will adapt the approach to regain banded matrices
V ALUE - SPACE C HEBYSHEV SPECTRAL METHODS
• Recall the discrete cosine transform C which maps function values at Chebyshev points f n = f ( x n ) to (approximate) Chebyshev coefficients ˇ f 0 . . C f n ≈ . ˇ f n − 1 • Using this, we can represent differentiation in value space by D n = C − 1 D n C • While this can be slow to generate for each n , the computational can be reused for multiple ODEs
• The second-order differential operator a (2) ( x ) u �� + a (1) ( x ) u � + a (0) ( x ) u becomes � � ���� ( a (2) ( x n )) D 2 n + ���� ( a (1) ( x n )) D n + ���� ( a (0) ( x n )) u n • There's a problem: which rows do we drop to incorporate the boundary condi- tions? • The typical boundary conditions are at the endpoints ± 1 � For example, Dirichlet conditions are � e � � � � � � 1 0 0 0 u ( x 1 ) · · · 1 B u n = u n = u n = e � 0 0 0 1 u ( x n ) · · · � 1 • Thus the standard approach is to drop the boundary rows
• The second-order differential equation a (2) ( x ) u �� + a (1) ( x ) u � + a (0) ( x ) u = f ( x ) and B u = c becomes BP � � � � � c u n = n ���� ( a (2) ( x n )) D 2 n + ���� ( a (1) ( x n )) D n + ���� ( a (0) ( x n )) � � f n I 2: n � 1 for the n − 2 × n boundary row dropping matrix � � 0 1 ... I 2: n � 1 = � � � � 1 0
Value space Chebyshev spectral method u 00 ( x ) + e x u ( x ) = 0 , u ( − 1) = 0 , u (1) = 1 0.01 10 - 4 10 - 6 10 - 8 10 - 10 10 - 12 50 100 150 200 Matrix sparsity Error
��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� � ��� ��� ��� ��� � ��� � ��� ��� ��� ��� � ��� Fourier Taylor Chebyshev 0 1 3 5 · · · 0 1 4 8 12 2 − 2 � 6 10 3 − � 8 12 Differentiation 0 4 10 5 2 � 12 ˆ a 0 ˆ ˆ ˆ ˆ a 0 a − 1 a − 2 a − 3 ˆ ˆ a 1 a 0 ? ˆ ˆ ˆ ˆ ˆ ˆ ˆ a 1 a 0 a − 1 a − 2 a 2 a 1 a 0 Multiplication T [ a ] = L [ a ] = ˆ ˆ ˆ ˆ a 3 a 2 a 1 a 0 ˆ ˆ ˆ ˆ a 2 a 1 a 0 a − 1 ˆ ˆ ˆ ˆ a 3 a 2 a 1 a 0
Fourier Taylor Chebyshev Differentiation Multiplication
F IRST ORDER DIFFERENTIATION
• We want to modify our method for Chebyshev polynomials so that differentiation is banded • The idea: represent the derivative in a different basis • We use the Chebyshev U polynomials – We define these by differentiating the Chebyshev T polynomials: U k ( x ) = T � k +1 ( x ) for k = 0 , 1 , 2 , . . . k + 1 ,
• Thus if � � a ( x ) = a k T k ( x ) ˇ k =0 we represent the derivative as � � � � a � ( x ) = a k +1 T � ˇ k +1 ( x ) = a k +1 ( k + 1) U k ( x ) ˇ k =0 k =0 • In matrix form we get the differentiation operator from T to U � � 0 1 2 � � � � 3 D = � � � � 4 � � ... � �
� � � T 1 ( x ) = U 1 ( x ) T 0 ( x ) = U 0 ( x ) , , 2 � T k ( x ) = T k ( x ) � x � x � �
� � T 1 ( x ) = U 1 ( x ) T 0 ( x ) = U 0 ( x ) , , 2 � T k ( x ) = T k ( x ) � x � x � T k +1 ( x ) = T � 2( k + 1) − T � k +1 ( x ) k � 1 ( x ) � 2( k + 1) − T k � 1 ( x ) = 2( k − 1) + C 2( k − 1) � x
� � T 1 ( x ) = U 1 ( x ) T 0 ( x ) = U 0 ( x ) , , 2 � T k ( x ) = T k ( x ) � x � x � T k +1 ( x ) = T � 2( k + 1) − T � k +1 ( x ) k � 1 ( x ) � 2( k + 1) − T k � 1 ( x ) = 2( k − 1) + C 2( k − 1) � x = U k ( x ) − U k � 2 ( x ) 2 2
• We have the conversion relationships T 1 ( x ) = U 1 ( x ) T k ( x ) = U k ( x ) − U k − 2 ( x ) T 0 ( x ) = U 0 ( x ) , , 2 2 2 • We use these to construct the T to U conversion operator: • In other words, if and then
• We have the conversion relationships T 1 ( x ) = U 1 ( x ) T k ( x ) = U k ( x ) − U k − 2 ( x ) T 0 ( x ) = U 0 ( x ) , , 2 2 2 • We use these to construct the T to U conversion operator: − 1 � � 1 0 2 1 − 1 0 � � 2 2 S 0 = � 1 − 1 � 0 � � 2 2 � � ... ... • In other words, if and then
• We have the conversion relationships T 1 ( x ) = U 1 ( x ) T k ( x ) = U k ( x ) − U k − 2 ( x ) T 0 ( x ) = U 0 ( x ) , , 2 2 2 • We use these to construct the T to U conversion operator: − 1 � � 1 0 2 1 − 1 0 � � 2 2 S 0 = � 1 − 1 � 0 � � 2 2 � � ... ... • In other words, if ˇ � � � � u 0 f 0 ∞ ˇ u 1 ˇ � f 1 and f ( x ) = f k T k ( x ) � = U � � � � . � � � . . . k =0 . . then ∞ � f ( x ) = u k U k ( x ) k =0
������ ��� ��� • Example: u � + u = f and u ( − 1) = 1 • We represent u in Chebyshev T series and f in Chebyshev U series • Thus the ODE becomes u = S 0 ˇ ( D + S 0 )ˇ f • The boundary conditions are • Thus we define the functional for
��� • Example: u � + u = f and u ( − 1) = 1 • We represent u in Chebyshev T series and f in Chebyshev U series • Thus the ODE becomes u = S 0 ˇ ( D + S 0 )ˇ f • The boundary conditions are � � � � u ( − 1) = u k T k ( − 1) = ˇ u k ��� k ������ ( − 1) ˇ k =0 k =0 • Thus we define the functional for
• Example: u � + u = f and u ( − 1) = 1 • We represent u in Chebyshev T series and f in Chebyshev U series • Thus the ODE becomes u = S 0 ˇ ( D + S 0 )ˇ f • The boundary conditions are � � � � u ( − 1) = u k T k ( − 1) = ˇ u k ��� k ������ ( − 1) ˇ k =0 k =0 � � � � u k ( − 1) k = u k ��� k π = ˇ ˇ k =0 k =0 • Thus we define the functional for
• Example: u � + u = f and u ( − 1) = 1 • We represent u in Chebyshev T series and f in Chebyshev U series • Thus the ODE becomes u = S 0 ˇ ( D + S 0 )ˇ f • The boundary conditions are � � � � u ( − 1) = u k T k ( − 1) = ˇ u k ��� k ������ ( − 1) ˇ k =0 k =0 � � � � u k ( − 1) k = u k ��� k π = ˇ ˇ k =0 k =0 • Thus we define the functional for B ˇ u = 1 B = (1 , − 1 , 1 , − 1 , . . . )
• Example: u � + u = f and u ( − 1) = 1 • This becomes � � 1 − 1 1 − 1 1 · · · − 1 1 1 � 1 � � 2 � � � B � 1 − 1 � 2 ˇ ˇ u = u = � � 2 2 S 0 ˇ D + S 0 f � � 1 − 1 3 � � 2 2 � � ... ... ...
M ULTIPLICATION OF C HEBYSHEV SERIES
��� ��� ��� � � ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� ��� � ��� ��� Fourier Taylor Chebyshev Relationship z j z k = z j + k � � j θ � � k θ = � � ( j + k ) θ ? T j ( x ) T k ( x ) = ˆ a 0 ˆ ˆ ˆ ˆ a 0 a − 1 a − 2 a − 3 ˆ ˆ a 1 a 0 ? ˆ ˆ ˆ ˆ ˆ ˆ ˆ a 1 a 0 a − 1 a − 2 a 2 a 1 a 0 Operator T [ a ] = L [ a ] = ˆ ˆ ˆ ˆ a 3 a 2 a 1 a 0 ˆ ˆ ˆ ˆ a 2 a 1 a 0 a − 1 ˆ ˆ ˆ ˆ a 3 a 2 a 1 a 0
• We go to the circle: T j ( J ( z )) T k ( J ( z )) = z j + z − j z k + z − k 2 2 • In other words,
• We go to the circle: T j ( J ( z )) T k ( J ( z )) = z j + z − j z k + z − k 2 2 = z j + k + z j − k + z k − j + z − j − k 4 • In other words,
• We go to the circle: T j ( J ( z )) T k ( J ( z )) = z j + z − j z k + z − k 2 2 = z j + k + z j − k + z k − j + z − j − k 4 = z j + k + z − j − k + z j − k + z k − j 4 4 • In other words,
Recommend
More recommend