C 1 finite element time discretization of 4 th order Friedhelm Schieweck1 1 Institut für Analysis und Numerik Otto-von-Guericke-Universität Magdeburg European Finite Element Fair (EFEF) Warwick, May, 20 - 21, 2010 C 1 finite element time discretization 1 Problem and FE space problem : Find u : [0, T ] → Rd such that u′ (t) = F (t, u(t)) u(0) = u0 C 1 finite element time discretization 2 Problem and FE space problem : Find u : [0, T ] → Rd such that u′ (t) = F (t, u(t)) u(0) = u0 FE mesh : I := [0, T ] = N [ In , In := [tn−1 , tn ] , τn := tn − tn−1 n=1 C 1 finite element time discretization 2 Problem and FE space problem : Find u : [0, T ] → Rd such that u′ (t) = F (t, u(t)) u(0) = u0 FE mesh : I := [0, T ] = N [ In , In := [tn−1 , tn ] , τn := tn − tn−1 n=1 C 1 FE space : Xτ := {uτ ∈ C 1 (I, Rd ) : uτ In ∈ P3 (In , Rd ) ∀ n = 1, . . . , N } C 1 finite element time discretization 2 Problem and FE space problem : Find u : [0, T ] → Rd such that u′ (t) = F (t, u(t)) u(0) = u0 FE mesh : I := [0, T ] = N [ In , In := [tn−1 , tn ] , τn := tn − tn−1 n=1 C 1 FE space : Xτ := {uτ ∈ C 1 (I, Rd ) : uτ In ∈ P3 (In , Rd ) ∀ n = 1, . . . , N } reference transformation : t = ωn (t̂) = tn−1/2 + C 1 finite element time discretization τn 2 t̂ , ωn : [−1, 1] → In û(t̂) := u(t) ⇒ û′ (t̂) = τn ′ 2 u (t) 2 Hermite basis functions 1 C basis functions on [−1,1] 1 φ φ 3 0.8 1 0.6 φ 0.4 4 0.2 0 φ2 −0.2 −0.4 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 time t ref û(t̂) = û(1) φ1 (t̂) + û′ (1) φ2 (t̂) + û(−1) φ3 (t̂) + û′ (−1) φ4 (t̂) |{z} | {z } | {z } | {z } U1 C 1 finite element time discretization U2 U3 U4 3 Hermite basis functions 1 C basis functions on [−1,1] 1 φ φ 3 0.8 1 0.6 φ 0.4 4 0.2 0 φ2 −0.2 −0.4 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 time t ref û(t̂) = û(1) φ1 (t̂) + û′ (1) φ2 (t̂) + û(−1) φ3 (t̂) + û′ (−1) φ4 (t̂) |{z} | {z } | {z } | {z } U1 U2 U3 U4 thus, for uτ In ∈ P(In , Rd ) , it holds: uτ (t) = uτ (tn ) φ1 (t) + τ2n u′τ (tn ) φ2 (t) + uτ (tn−1 ) φ3 (t) + τ2n u′τ (tn−1 ) φ4 (t) | {z } | {z } | {z } | {z } U1 C 1 finite element time discretization U2 U3 U4 3 Computation of the coefficients U 1 , . . . , U 4 task: compute the 4 coefficients Unj of uτ on a new In C 1 finite element time discretization 4 Computation of the coefficients U 1 , . . . , U 4 task: compute the 4 coefficients Unj of uτ on a new In by the C 1 -continuity it holds for n > 1 : 1 Un3 = uτ (tn−1 ) = Un−1 2 4 τn Un = u′τ (tn−1 ) = 2 2 τn−1 Un−1 and for n = 1 : U13 = u0 , ⇒ 2 4 τn U1 = u′ (t0 ) = F (t0 , u0 ) Un3 and Un4 are known !! C 1 finite element time discretization 4 Computation of the coefficients U 1 , . . . , U 4 task: compute the 4 coefficients Unj of uτ on a new In by the C 1 -continuity it holds for n > 1 : 1 Un3 = uτ (tn−1 ) = Un−1 2 4 τn Un = u′τ (tn−1 ) = 2 2 τn−1 Un−1 and for n = 1 : U13 = u0 , ⇒ 2 4 τn U1 = u′ (t0 ) = F (t0 , u0 ) Un3 and Un4 are known !! Un2 depends explicitly on Un1 : 2 2 τn Un = u′τ (tn )=F (tn , Un1 ) C 1 finite element time discretization collocation at tn 4 nested iteration for Un1 conclusion : we need only one more equation to determine Un1 this is the variational test equation : Z Z ′ uτ (t) · 1 dt = πn F t, uτ (t) · 1 dt In where In 4 X πn F t, uτ (t) := F tn,k , uτ (tn,k ) Lk (t) k=1 with tn,k := ωn (t̂k ) , t̂k ∈ [−1, 1] 4 Gauss-Lobatto-points and L̂k ∈ P3 are Lagrange basis functions w.r.t. C 1 finite element time discretization t̂k 5 The final scheme solve for Un1 by a quasi-Newton method : Un1 − Un3 = g1 Un4 + g4 + τn τn |2 F (tn , Un1 ) {z } =Un2 4 4 X X cj,2 Unj + g3 F tn,3 , g2 F tn,2 , cj,3 Unj C 1 finite element time discretization j=1 | j=1 {z with Un1 } | {z with Un1 } 6 Theoretical results Theorem (Sch. ’10) Assume V := Rd and kF (t, u1 ) − F (t, u2 )kV ≤ Lku1 − u2 kV Lτ ≤ δ0 sufficiently small ∀ u 1 , u2 ∈ V ( τ := maxn τn ) Then, for our method, a unique solution uτ ∈ Xτ exists it holds the optimal error estimate ku − uτ kC(In ,V ) ≤ C max τ4k kd4t ukC(Ik ,V ) 1≤k≤n where C = C̃e2Ltn−1 . Furthermore, the method is A-stable. Remark: generalization to arbitrary order is possible C 1 finite element time discretization 7 Simple numerical example problem : Find u : [0, 1] → R2×2 such that dt u(t) = Au(t) ∀ t ∈ [0, 1], u(0) = u0 , −0.5 0.1 2 A= , u0 = 10 −50 1.6 eigenvalues of A : λ1 ≈ −0.48, λ2 ≈ −50 ⇒ relatively stiff we use our method with τn = τ ∀ n error norm : ku − uτ k∞ := max ku(tn ) − uτ (tn )k 1≤n≤N C 1 finite element time discretization 8 Plot of the components of the solution: τ = 1 10 solution u(t) : Ntime = 10 emax = 1.17e−001 2 u1 ex 1.8 u2 ex u1 h 1.6 u2 h 1.4 1.2 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 time t C 1 finite element time discretization 9 Plot of the components of the solution: τ = 1 20 solution u(t) : Ntime = 20 emax = 1.87e−002 2 u1 ex 1.8 u2 ex u1 h 1.6 u2 h 1.4 1.2 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 time t C 1 finite element time discretization 10 Error norms ku − uτ k∞ := max ku(tn ) − uτ (tn )k 1≤n≤N τ 1/10 1/20 1/40 1/80 1/160 1/320 new method ku − uτ k∞ EOC 1.170 e-01 1.875 e-02 2.6413 1.592 e-03 3.5583 9.301 e-05 4.0968 5.858 e-06 3.9891 3.645 e-07 4.0063 C 1 finite element time discretization dG(1) ku − uτ k∞ EOC 5.655 e-02 8.233 e-02 -0.542 5.191 e-02 0.666 1.829 e-02 1.505 5.713 e-03 1.679 1.594 e-03 1.842 11