Discretisation Solution of the system Numerical experiments Further applications A Finite Element Method for Nonvariational Elliptic Problems Tristan Pryer joint work with Omar Lakkis May 20, 2010 Discretisation Solution of the system Outline 1 Discretisation 2 Solution of the system 3 Numerical experiments 4 Further applications Numerical experiments Further applications Discretisation Solution of the system Numerical experiments Further applications Model problem in nonvariational form Model problem Given f ∈ L2 (Ω), find u ∈ H2 (Ω) ∩ H10 (Ω) such that A:D2 u | φ = hf , φi ∀ φ ∈ H10 (Ω), X:Y := trace (X| Y) is the Frobenius inner product of two matrices. Discretisation Solution of the system Numerical experiments Further applications Model problem in nonvariational form Model problem Given f ∈ L2 (Ω), find u ∈ H2 (Ω) ∩ H10 (Ω) such that A:D2 u | φ = hf , φi ∀ φ ∈ H10 (Ω), X:Y := trace (X| Y) is the Frobenius inner product of two matrices. Discretisation Solution of the system Numerical experiments Further applications Model problem in nonvariational form Model problem Given f ∈ L2 (Ω), find u ∈ H2 (Ω) ∩ H10 (Ω) such that A:D2 u | φ = hf , φi ∀ φ ∈ H10 (Ω), X:Y := trace (X| Y) is the Frobenius inner product of two matrices. Don’t want to rewrite in divergence form! A:D2 u | φ = hdiv (A∇u) | φi − hdiv (A) ∇u, φi . Discretisation Solution of the system Numerical experiments What should we do? Main idea Define appropriately the Hessian of a function who’s not twice differentiable, i.e., as a distribution. Further applications Discretisation Solution of the system Numerical experiments Further applications What should we do? Main idea Define appropriately the Hessian of a function who’s not twice differentiable, i.e., as a distribution. Construct a finite element approximation of this distribution. What is meant by the Hessian of a finite element function? [Aguilera and Morin, 2008] Discretisation Solution of the system Numerical experiments Further applications What should we do? Main idea Define appropriately the Hessian of a function who’s not twice differentiable, i.e., as a distribution. Construct a finite element approximation of this distribution. What is meant by the Hessian of a finite element function? [Aguilera and Morin, 2008] Discretise the strong form of the PDE directly. Discretisation Solution of the system Numerical experiments Hessians as distributions generalised Hessian Given v ∈ H1 (Ω) it’s generalised Hessian is given by 2 D v | φ = − h∇v ⊗ ∇φi + h∇u ⊗ n φi∂Ω ∀ φ ∈ H1 (Ω), x ⊗ y := xy| is the tensor product between two vectors. Further applications Discretisation Solution of the system Numerical experiments Further applications Hessians as distributions generalised Hessian Given v ∈ H1 (Ω) it’s generalised Hessian is given by 2 D v | φ = − h∇v ⊗ ∇φi + h∇u ⊗ n φi∂Ω ∀ φ ∈ H1 (Ω), x ⊗ y := xy| is the tensor product between two vectors. finite element space notation V := Φ ∈ H1 (Ω) : Φ|K ∈ Pp ∀ K ∈ T V̊ := V ∩ H10 (Ω), , Discretisation Solution of the system Numerical experiments Further applications Hessians as distributions generalised Hessian Given v ∈ H1 (Ω) it’s generalised Hessian is given by 2 D v | φ = − h∇v ⊗ ∇φi + h∇u ⊗ n φi∂Ω ∀ φ ∈ H1 (Ω), x ⊗ y := xy| is the tensor product between two vectors. finite element space notation V := Φ ∈ H1 (Ω) : Φ|K ∈ Pp ∀ K ∈ T V̊ := V ∩ , H10 (Ω), finite element Hessian For each V ∈ V̊ there exists a unique H[V ] ∈ Vd×d such that hH[V ], Φi = D2 V | Φ ∀ Φ ∈ V. Discretisation Solution of the system Numerical experiments Further applications Nonvariational finite element method Substitute the finite element Hessian directly into the model problem. We seek U ∈ V̊ such that D E D E A:H[U], Φ̊ = f , Φ̊ ∀ Φ̊ ∈ V̊. Discretisation Solution of the system Numerical experiments Further applications Nonvariational finite element method Substitute the finite element Hessian directly into the model problem. We seek U ∈ V̊ such that D E D E A:H[U], Φ̊ = f , Φ̊ ∀ Φ̊ ∈ V̊. Discretisation D d X d D E X E Aα,β Hα,β [U], Φ̊ f , Φ̊ = α=1 β=1 = d X d D X α=1 β=1 E Φ̊, Aα,β Φ| hα,β . Discretisation Solution of the system Numerical experiments Further applications Nonvariational finite element method Substitute the finite element Hessian directly into the model problem. We seek U ∈ V̊ such that D E D E A:H[U], Φ̊ = f , Φ̊ ∀ Φ̊ ∈ V̊. Discretisation D d X d D E X E Aα,β Hα,β [U], Φ̊ f , Φ̊ = α=1 β=1 = d X d D X α=1 β=1 E Φ̊, Aα,β Φ| hα,β . Discretisation Solution of the system Numerical experiments Further applications Nonvariational finite element method Substitute the finite element Hessian directly into the model problem. We seek U ∈ V̊ such that D E D E A:H[U], Φ̊ = f , Φ̊ ∀ Φ̊ ∈ V̊. Discretisation D d D d X E X E f , Φ̊ = Aα,β Hα,β [U], Φ̊ α=1 β=1 = d X d D X E Φ̊, Aα,β Φ| hα,β . α=1 β=1 hΦ, Φ| i hα,β = hΦ, Hα,β [U]i D E D E | | = − ∂β Φ, ∂α Φ̊ + Φnβ , ∂α Φ̊ ∂Ω u. Discretisation Solution of the system Numerical experiments Further applications Nonvariational finite element method Substitute the finite element Hessian directly into the model problem. We seek U ∈ V̊ such that D E D E A:H[U], Φ̊ = f , Φ̊ ∀ Φ̊ ∈ V̊. Discretisation D d D d X E X E f , Φ̊ = Aα,β Hα,β [U], Φ̊ α=1 β=1 = d X d D X E Φ̊, Aα,β Φ| hα,β . α=1 β=1 hΦ, Φ| i hα,β = hΦ, Hα,β [U]i D E D E | | = − ∂β Φ, ∂α Φ̊ + Φnβ , ∂α Φ̊ ∂Ω u. Discretisation Solution of the system Numerical experiments Further applications Linear system U = Φ̊ u, where u ∈ RN̊ is the solution to the following linear system | Du := d d X X α=1 β=1 Bα,β M−1 Cα,β u = f. Discretisation Solution of the system Numerical experiments Further applications Linear system U = Φ̊ u, where u ∈ RN̊ is the solution to the following linear system | Du := d d X X Bα,β M−1 Cα,β u = f. α=1 β=1 Components of the linear system D E Bα,β := Φ̊, Aα,β Φ| ∈ RN̊×N , M := hΦ, Φ| i ∈ RN×N , D E D E | | Cα,β := − ∂β Φ, ∂α Φ̊ + Φnβ , ∂α Φ̊ ∈ RN×N̊ , ∂Ω D E f := f , Φ̊ ∈ RN̊ . Discretisation Solution of the system Numerical experiments Further applications The system is hard to solve Linear system U = Φ̊ u, where u ∈ RN̊ is the solution to the following linear system | Du := d d X X α=1 β=1 Remarks The matrix D is not sparse Bα,β M−1 Cα,β u = f. Discretisation Solution of the system Numerical experiments Further applications The system is hard to solve Linear system U = Φ̊ u, where u ∈ RN̊ is the solution to the following linear system | Du := d d X X Bα,β M−1 Cα,β u = f. α=1 β=1 Remarks The matrix D is not sparse Mass lumping only works for P1 elements AND in this case only gives a reasonable solution U for very simple A Discretisation Solution of the system Numerical experiments Further applications The system is hard to solve Linear system U = Φ̊ u, where u ∈ RN̊ is the solution to the following linear system | Du := d d X X Bα,β M−1 Cα,β u = f. α=1 β=1 Remarks The matrix D is not sparse Mass lumping only works for P1 elements AND in this case only gives a reasonable solution U for very simple A Notice D is the sum of Schur complements Discretisation Solution of the system Numerical experiments Further applications The system is hard to solve Linear system U = Φ̊ u, where u ∈ RN̊ is the solution to the following linear system | Du := d d X X Bα,β M−1 Cα,β u = f. α=1 β=1 Remarks The matrix D is not sparse Mass lumping only works for P1 elements AND in this case only gives a reasonable solution U for very simple A Notice D is the sum of Schur complements We can create a block matrix to exploit this Discretisation Solution of the system Numerical experiments Further applications Block system E= M 0 .. . 0 M .. . 0 0 B1,1 0 0 B1,2 ··· ··· .. . 0 0 .. . ··· M ... 0 d,d−1 ... B 0 0 .. . −C1,1 −C1,2 .. . 0 M Bd,d −Cd,d−1 −Cd,d 0 | v = (h1,1 , h1,2 , . . . , hd,d−1 , hd,d , u) , | h = (0, 0 . . . , 0, 0, f) . , Discretisation Solution of the system Numerical experiments Further applications Block system E= M 0 .. . 0 M .. . 0 0 B1,1 0 0 B1,2 ··· ··· .. . 0 0 .. . ··· M ... 0 d,d−1 ... B 0 0 .. . −C1,1 −C1,2 .. . 0 M Bd,d −Cd,d−1 −Cd,d 0 | v = (h1,1 , h1,2 , . . . , hd,d−1 , hd,d , u) , | h = (0, 0 . . . , 0, 0, f) . Equivalence of systems Then solving the system Du = f is equivalent to solving Ev = h. for u. , Discretisation Solution of the system Numerical experiments Further applications structure of the block matrix the discretisation presented nothing but: Find U ∈ V̊ such that hH[U], Φi = − h∇U ⊗ ∇Φi + h∇U ⊗ n Φi∂Ω ∀Φ∈V D E D E A:H[U], Φ̊ = f , Φ̊ ∀ Φ̊ ∈ V̊. Discretisation Solution of the system Numerical experiments Further applications structure of the block matrix the discretisation presented nothing but: Find U ∈ V̊ such that hH[U], Φi = − h∇U ⊗ ∇Φi + h∇U ⊗ n Φi∂Ω ∀Φ∈V D E D E A:H[U], Φ̊ = f , Φ̊ M 0 .. . 0 M .. . 0 0 B1,1 0 0 B1,2 ··· ··· .. . 0 0 .. . ··· M ... 0 . . . Bd,d−1 0 0 .. . −C1,1 −C1,2 .. . 0 M Bd,d −Cd,d−1 −Cd,d 0 ∀ Φ̊ ∈ V̊. h1,1 h1,2 .. . hd,d−1 hd,d u 0 0 .. . . = 0 0 f Discretisation Solution of the system Numerical experiments A Linear PDE in NDform Operator choice - heavily oscillating 1 0 A= 0 a(x) Further applications Discretisation Solution of the system Numerical experiments Further applications A Linear PDE in NDform Operator choice - heavily oscillating 1 0 A= 0 a(x) 1 a(x) = sin |x1 | + |x2 | + 10−15 1 0.8 0.6 0.4 0.2 0 −0.2 −0.4 −0.6 −0.8 −1 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 Discretisation Solution of the system Numerical experiments Figure: Choosing f appropriately such that u(x) = exp (−10 |x|2 ). 1 10 X = L2 X = H1 10 EOC = 0.94816 EOC = 0.96833 EOC = 1.0129 −1 10 EOC = 1.6815 EOC = 1.0149 EOC = 1.0094 EOC = 1.0052 EOC = 2.0751 −2 10 EOC = 2.0465 ||u−uh||X 0 −3 EOC = 2.0345 10 EOC = 2.02 −4 10 EOC = 2.0107 −5 10 2 10 3 10 dim V 4 10 Further applications Discretisation Solution of the system Numerical experiments Another Linear PDE in NDform Operator choice A= 1 0 0 a(x) Further applications Discretisation Solution of the system Numerical experiments Another Linear PDE in NDform Operator choice A= 1 0 0 a(x) 2 a(x) := arctan 5000(|x| − 1) + 2 . Further applications Discretisation Solution of the system Numerical experiments Further applications Figure: Choosing f appropriately such that u(x) = sin (πx1 ) sin (πx2 ). 1 10 ||u−uh||X X = L2 X = H1 EOC = 0.91495 0 10 EOC = 1.0384 EOC = 1.0339 EOC = 1.8547 EOC = 1.02 −1 10 EOC = 1.0107 EOC = 1.0055 EOC = 2.0811 −2 10 EOC = 2.069 EOC = 2.0402 −3 10 EOC = 2.0214 EOC = 2.011 −4 10 2 10 3 10 dim V 4 10 Discretisation Solution of the system Numerical experiments Further applications The same Linear PDE in NDform Figure: On the left we present the maximum error of the standard FE-solution. Notice the oscillations apparant on the unit circle. On the right we show the maximum error of the NDFE-solution Discretisation Solution of the system Numerical experiments Fully nonlinear PDEs Model problem Given f ∈ L2 (Ω), find u ∈ H2 (Ω) ∩ H10 (Ω) such that N [u] = F (D2 u) − f = 0 Further applications Discretisation Solution of the system Numerical experiments Fully nonlinear PDEs Model problem Given f ∈ L2 (Ω), find u ∈ H2 (Ω) ∩ H10 (Ω) such that N [u] = F (D2 u) − f = 0 Newton’s method Given u 0 for each n ∈ N find u n+1 such that 0 n N [u ] | u n+1 − u n = −N [u n ] Further applications Discretisation Solution of the system Numerical experiments Fully nonlinear PDEs Model problem Given f ∈ L2 (Ω), find u ∈ H2 (Ω) ∩ H10 (Ω) such that N [u] = F (D2 u) − f = 0 Newton’s method Given u 0 for each n ∈ N find u n+1 such that 0 n N [u ] | u n+1 − u n = −N [u n ] N [u + v ] − N [u] F (D2 u + D2 v ) − F (D2 u) = lim →0 0 2 2 = lim F (D u) : D v + O(). hN 0 [u] | v i = lim →0 →0 Further applications Discretisation Solution of the system Numerical experiments Fully nonlinear PDEs Model problem Given f ∈ L2 (Ω), find u ∈ H2 (Ω) ∩ H10 (Ω) such that N [u] = F (D2 u) − f = 0 Newton’s method Given u 0 for each n ∈ N find u n+1 such that 0 n N [u ] | u n+1 − u n = −N [u n ] N [u + v ] − N [u] F (D2 u + D2 v ) − F (D2 u) = lim →0 = lim F 0 (D2 u) : D2 v + O(). hN 0 [u] | v i = lim →0 →0 Further applications Discretisation Solution of the system Numerical experiments Discretisation VERY roughly Given U 0 = Λu 0 find U n+1 such that F 0 (H[U n ]):H[U n+1 − U n ] = f − F (H[U n ]) Further applications Discretisation Solution of the system Numerical experiments Further applications Discretisation VERY roughly Given U 0 = Λu 0 find U n+1 such that F 0 (H[U n ]):H[U n+1 − U n ] = f − F (H[U n ]) H[U n ] is given in the solution of the previous iterate! M 0 .. . 0 M .. . ··· ··· .. . 0 0 0 0 B1,1 n−1 B1,2 n−1 ··· M ... 0 d,d−1 . . . Bn−1 0 0 .. . 0 0 .. . −C1,1 −C1,2 .. . 0 M d,d Bn−1 −Cd,d−1 −Cd,d 0 hn1,1 hn1,2 .. . n h d,d−1 hnd,d un 0 0 .. . . = 0 0 f Discretisation Solution of the system Numerical experiments Further applications Discretisation VERY roughly Given U 0 = Λu 0 find U n+1 such that F 0 (H[U n ]):H[U n+1 − U n ] = f − F (H[U n ]) H[U n ] is given in the solution of the previous iterate! M 0 .. . 0 M .. . ··· ··· .. . 0 0 0 0 B1,1 n−1 B1,2 n−1 ··· M ... 0 d,d−1 . . . Bn−1 0 0 .. . 0 0 .. . −C1,1 −C1,2 .. . 0 M d,d Bn−1 −Cd,d−1 −Cd,d 0 hn1,1 hn1,2 .. . n h d,d−1 hnd,d un 0 0 .. . . = 0 0 f Discretisation Solution of the system Numerical experiments Further applications Discretisation VERY roughly Given U 0 = Λu 0 find U n+1 such that F 0 (H[U n ]):H[U n+1 − U n ] = f − F (H[U n ]) H[U n ] is given in the solution of the previous iterate! M 0 .. . 0 M .. . ··· ··· .. . 0 0 0 0 B1,1 n−1 B1,2 n−1 ··· M ... 0 d,d−1 . . . Bn−1 0 0 .. . 0 0 .. . −C1,1 −C1,2 .. . 0 M d,d Bn−1 −Cd,d−1 −Cd,d 0 hn1,1 hn1,2 .. . n h d,d−1 hnd,d un Saves us postprocessing another one! [Vallet et al., 2007] [Ovall, 2007] 0 0 .. . . = 0 0 f Discretisation Solution of the system Numerical experiments Further applications Bibliography I Aguilera, N. E. and Morin, P. (2008). On convex functions and the finite element method. online preprint arXiv:0804.1780v1, arXiv.org. Ovall, J. (2007). Function, gradient and hessian recovery using quadratic edge-bump functions. J. Sci. Comput., 45(3):1064–1080. Vallet, M.-G., Manole, C.-M., Dompierre, J., Dufour, S., and Guibault, F. (2007). Numerical comparison of some Hessian recovery techniques. Internat. J. Numer. Methods Engrg., 72(8):987–1007.