FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS LONG CHEN 1. S OBOLEV S PACES AND W EAK F ORMULATIONS Let Ω be a bounded Lipschitz domain in R3 . We introduce the Sobolev spaces H(curl ; Ω) = {v ∈ L2 (Ω), curl v ∈ L2 (Ω)}, H(div; Ω) = {v ∈ L2 (Ω), div v ∈ L2 (Ω)} The vector fields (E, H) belong to H(curl ; Ω) while the flux (D, B) in H(div; Ω). We shall use the unified notation H(d; Ω) with d = grad , curl , or div. Note that H(grad ; Ω) is the familiar H 1 (Ω) space. The norm for H(d; Ω) is the graph norm 1/2 kukd,Ω := kuk2 + kduk2 . We recall the integration by parts for vector functions below. Formally the boundary term is obtained by replacing the Hamilton operator by the unit outwards normal vector n. For example Z Z Z ∇u · φ dx = − u∇ · φ dx + nuφ dS, Z Ω Z Ω Z∂Ω ∇ × u · φ dx = u · ∇ × φ dx + n × u · φ dS, Ω Ω ∂Ω Z Z Z ∇ · u φ dx = − u · ∇φ dx + n · u φ dS. Ω Ω ∂Ω The weak formulation is obtained by multiplying the original equation by a smooth test equation and applying the integration. The boundary condition will be discussed later. For time-harmonic Maxwell equations, the weak formulation for E is (1) (µ−1 ∇ × E, ∇ × φ) − ω 2 (˜ E, φ) = (J̃ , φ) ∀φ ∈ D(Ω). And the equation for H is (2) (˜ −1 ∇ × H, ∇ × φ) − ω 2 (µH, φ) = (J̃ , ∇ × φ) ∀φ ∈ D(Ω). In (2) the source ∇ × J̃ is understood in the distribution sense and thus the differential operator is moved to the test function. The coefficient ˜ and the current J̃ are in general complex functions and so are E, H. The divergence constraint is build into the weak formulation when ω 6= 0. For example div(µH) = 0 in the distribution sense can be obtained by applying div operator to the equation ∇ × (˜ −1 ∇ × H) − ω 2 µH = ∇ × J̃ . When ω = 0, we need to impose the constraint explicitly. To simplify the discussion, we consider the following model problems: Date: Created: Spring 2014. Last update: June 21, 2016. 1 7 .17). In Sec. 14.6, we examine ld-Oseen extinction theorem ctive index. 8 2 (3) ne or both of the quantities frequency, and metals up to applications such as surface t to come by [153], although a, have !, µ that are simultae first to study their unusual x of refraction and the rever- applications have generated dia, termed “metamaterials”, d split-ring resonators, [382] have been shown to exhibit !rel µrel , must be defined by < 0 and µrel < 0 will imply µrel /n will be positive, which 1. Maxwell’s Equations current density; the difference of the normal components of the flux density D are equal LONG CHEN to the surface charge density; and the normal components of the magnetic flux density B are continuous. • The Symmetric and positive definite problem: Dn boundary condition may also be written a form that brings out the dependence on the polarization surface charges: ∇ × (α∇ × u) + βu = f in Ω, u × n = 0 on ∂Ω P1n )−(! 0 E1n +point 0 E2n + P2n )= ρs • (!Saddle system: ⇒ !0 (E1n − E2n )= ρs − P1n + P2n = ρs,tot where total × surface ρs,tot = ∇The × (α∇ u) =charge f indensity Ω, will ∇be · (βu) =ρ0s +ρin1s,Ω, u ,× n =the 0 surface on ∂Ω. pol +ρ2s,pol charge density of polarization charges accumulating at the surface of a dielectric is seen where areoutward uniformly bounded anddielectric): positive coefficients. The right hand side f to α beand (n̂ isβthe normal from the (4) is divergence free, i.e. div f = 0 in the distribution sense. ρs,pol = Pn = n̂ · P (1.5.2) 2. I NTERFACE AND B OUNDARY C ONDITION The relative directions of the field vectors are shown in Fig. 1.5.1. Each vector may 3 For vector u ∈asRthe and unit norm vector n, we surface can decompose into normal and be adecomposed suma of a part tangential to the and a partuperpendicular to it, that tangential partis,asE = Et + En . Using the vector identity, u = (u · n)n + n × (u × n) = u E + ut . E = n̂ × (E × n̂)+n̂(n̂ · E)= E + n (1.5.3) t n The vector u×n is also on the tangent plane and orthogonal to the tangential component ut ◦ parts as: weisidentify these 90 two which a clockwise rotation of ut on the tangent plane. Consequently {u × n, ut , n} forms an orthogonal basisEof=Rn̂3× ; see Fig. 1. E = n̂(n̂ · E)= n̂E (E × n̂) , t n n in the same direction as the ns 2.12, 7.16, and 8.6. ross material boundaries are Fig. 1.5.1 Field directions at boundary. F IGURE 1. Field directions at boundary. Extract from Electromagnetic Waves and Antennas by Orfanidis [6]. (1.5.1) m medium-2 into medium-1. surface current densities on mb/m2 ] and [ampere/m]. continuous across the interfield are equal to the surface Using these results, we can write the first two boundary conditions in the following vectorial forms, where the second form is obtained by taking the cross product of the firstinterface with n̂ and noting that is derived purely tangential: The condition canJsbe from the continuity requirement for piecewise smooth functions to be in H(d; Ω). Let Ω = K1 ∪ K2 ∪ S with interface S = K̄1 ∩ K̄2 . n̂ × (K E1i ). × n̂ )− n̂ ×u(E∈2 × ) = 0as n̂ × (E1 − E2 ) = 0 Let ui ∈ H(d; Define L2n̂(Ω) or, (1.5.4) ( n̂ × (H1 × n̂)− n̂ × (H2 × n̂) = Js × n̂ n̂ × (H1 − H2 ) = Js u1 x ∈ K1 , u= u2derived x ∈ from K2 . the integrated form of Maxwell’s The boundary conditions (1.5.1) can be equations if we make some additional regularity assumptions about the fields at the We can always define the derivative du in the distribution sense. To be a weak derivative, interfaces. we need to verify ( du1 x ∈ K1 , du = du2 x ∈ K2 . To do so, let φ ∈ D(Ω), by the definition of the derivative of a distribution hdu, φi = hu, d∗ φi = (u1 , d∗ φ) + (u2 , d∗ φ) = (du1 , φ) + (du2 , φ) + hγS (u1 − u2 ), φiS , where d∗ is the adjoint of d and γS is the correct restriction of functions on the interface depending on the differential operators. The negative sign in front of u2 is from the fact the outwards normal direction of K2 is opposite to that of K1 . FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS Then u ∈ H(d; Ω) if and only if u1 |S = u2 |S n × u1 |S = n × u2 |S n · u1 |S = n · u2 |S 3 for d = grad , for d = curl , for d = div . So for a function in H(curl ; Ω), its tangential component should be continuous across the interface and for a function in H(div; Ω), its normal component should be continuous. This will be the key of constructing finite element spaces for these Sobolev spaces. When the interface S contains surface charge ρS and surface current JS , the interface condition is for H and D is changed to (H 1 − H 2 ) × n = J S , (D 1 − D 2 ) · n = ρS . The interface condition for H can be build into the right hand side of the weak formulation (2) using a surface integral on S. The boundary condition can be thought of as an interface condition when one side of the interface is the free space. The following are popular boundary conditions for Maxwelltype equations. • If one side is a perfect conductor, then σ = ∞. By Ohm’s law, to have a finite current, the electric field E should be zero. So we obtain the boundary condition E × n = 0 for a perfect conductor. • Impedance boundary condition •1 n × H − λE t = g. 3. T RACES The trace of functions in H(d; Ω) is not simply the restriction of the function values since the differential operator div or curl only controls partial components of the vector function. The best way to look at the trace is, again, using integration by parts. 3.1. H(div; Ω) space. For functions v ∈ C 1 (Ω), φ ∈ C 1 (Ω) and Ω is a domain with a smooth boundary, we have the following integration by parts identity Z Z Z (5) div vφ dx = − v · grad φ dx + n · v φ dS. Ω Ω ∂Ω Then we relax the smoothness of functions and domains such that (5) still holds. First since for Lipschitz domains, the normal vector n of ∂Ω is well defined almost everywhere, we can assume Ω to be a bounded Lipschitz domain only. Second we only need v ∈ H(div; Ω) and φ ∈ H 1 (Ω). Then (5) can be used to define the trace of v ∈ H(div; Ω): Z Z (6) hn · v, γφi∂Ω := div vφ dx + v · grad φ dx, for all φ ∈ H 1 (Ω). Ω Ω In the left hand side of (6) we change from a boundary integral to an abstract duality action and γ : H 1 (Ω) → H 1/2 (∂Ω) is the trace operator for H 1 functions. Since γ is an onto, γφ will run over all H 1/2 (∂Ω) when φ run over H 1 (Ω). That is n · v is a dual of H 1/2 (∂Ω). Note that ∂(∂Ω) = 0. So the right space for n · v is H −1/2 (∂Ω). We summarize as the following theorem. •1 more on this 4 LONG CHEN Theorem 3.1. Let Ω ⊂ R3 be a bounded Lipschitz domain in R3 with unit outward normal n. Then the mapping γn : C ∞ (Ω̄) → C ∞ (∂Ω) with γn v = n · v|∂Ω can be extended to a continuous linear map γn from H(div; Ω) onto H −1/2 (∂Ω), namely kγn vk−1/2,∂Ω . kvkdiv,Ω . (7) and the following Green’s identity holds for functions v ∈ H(div; Ω) and φ ∈ H 1 (Ω) Z Z (8) hγn v, γφi∂Ω = div vφ dx + v · grad φ dx. Ω Ω The space H0 (div; Ω) can be defined as H0 (div; Ω) = {v ∈ H(div; Ω) : γn v = 0}. Proposition 3.2. The trace operator γn from H(div; Ω) onto H −1/2 (∂Ω) is surjective and there exists a continuous right inverse. Namely for any g ∈ H −1/2 (∂Ω), there exists a function v ∈ H(div; Ω) such that γn v = g in H −1/2 (∂Ω) and kvkdiv;Ω . kgk−1/2,∂Ω . Proof. For a given g ∈ H −1/2 (∂Ω), let f = −|Ω|−1 hg, 1i. We solve the Poisson equation (∇p, ∇φ) = (f, φ) + hg, γφi for all φ ∈ H 1 (Ω). The existence and uniqueness of the solution p ∈ H 1 (Ω) is ensured by the choice of f . By choosing v ∈ H01 (Ω), we conclude −∆p = f in L2 (Ω), i.e. v = ∇p is in H(div; Ω). Note that hγn v, γφi = (div v, φ) + (v, ∇φ) = −(f, φ) + (∇p, ∇φ) = hg, γφi. Since γ : H 1 (Ω) → H 1/2 (∂Ω) is surjective, we conclude γn v = g in H −1/2 (∂Ω). That is we found a function v ∈ H(div; Ω) such that γn v = g. From the stability of −∆ operator, we have kvk = k∇pk . kf k + kgk−1/2 . kgk−1/2 . Together with the identity k div vk = kf k, we obtain the inequality kvkdiv;Ω . kgk−1/2,∂Ω . 3.2. H(curl ; Ω) space. Similarly we can use the integration by parts Z Z Z curl v · φ dx = v · curl φ dx − (v × n) · φ dS Ω Ω ∂Ω to define the trace of H(curl ; Ω). The trace only controls the tangential part of v|∂Ω . Theorem 3.3. Let Ω ⊂ R3 be a bounded Lipschitz domain in R3 with unit outward normal n. Then the mapping γt : C ∞ (Ω̄) → C ∞ (∂Ω) with γt v = v|∂Ω × n can be extended by continunity to a continuous linear map γt from H(curl ; Ω) to H −1/2 (∂Ω), namely (9) kγt vk−1/2,∂Ω . kvkcurl ,Ω . and the following Green’s identity holds for functions v ∈ H(curl ; Ω) and φ ∈ H 1 (Ω) Z Z (10) hγt v, γφi∂Ω = v · curl φ dx − curl v · φ dx. Ω Ω The trace γt from H(curl ; Ω) to H −1/2 (∂Ω), however, is not surjective since in (10) φ can be further extend from H 1 (Ω) to H(curl ; Ω). We write the boundary pair as (11) hv × n, φi = hv × n, φt i = hγt v, φt i. The tangential component φt will be still in H s (curl Γ , Γ) and the trace γt v is a rotation of the tangential component v t and thus in H s (divΓ , Γ), where s is an appropriate index FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS 5 and curl Γ , divΓ are the curl , div operators on the boundary surface Γ = ∂Ω, respectively. It turns out the index s = −1/2 and the duality pair for (11) is H −1/2 (divΓ , Γ) − H −1/2 (curl Γ , Γ). The precise characterization is γt : H(curl ; Ω) → H −1/2 (divΓ , Γ) and this map is onto. Details can be found in the book [3] (page 58–60). The space H0 (curl ; Ω) can be defined as H0 (curl ; Ω) = {v ∈ H(curl ; Ω) : γt v = 0}. 4. W ELL - POSEDNESS OF W EAK F ORMULATIONS Let V = H0 (curl ; Ω). The weak formulation of (3) is: given an f ∈ L2 , find u ∈ V such that (12) (α∇ × u, ∇ × v) + (βu, v) = (f , v) for all v ∈ V. In (12), the first term is obtained by integration by part (moving ∇× in front of φ to u) (α∇ × u, ∇ × φ) = (∇ × (α × ∇ × u), φ) + (α∇ × u, n × φ)∂Ω and chose the test function φ ∈ V to remove the boundary term. The boundary condition for u is in Dirichlet type: u × n = 0 on ∂Ω. The well-posedness of (12) is trivial since the bilinear form is equivalent to the inner product of H(curl ; Ω) and thus the existence and uniqueness of the solution can be obtained by the Riesz representation theorem. The stability constant, however, will be proportional to 1/|β| and thus below up as |β| → 0. We will revisit this issue after we have discussed the saddle point formulation. For the saddle point formulation of Maxwell equation (4), the natural Sobolev space for u is again V = H0 (curl ; Ω) and the bilinear form a(u, v) := (∇ × u, ∇ × v), for u, v ∈ H0 (curl ; Ω), 0 which induces an operator A : V → V , hAu, vi = a(u, v). As a function in H(curl ; Ω) space, however, the divergence operator cannot be applied directly to u. It should be understood in the weak sense, i.e., −(divw u, q) = (u, grad q) ∀q ∈ Q := H01 (Ω). We define the bilinear form b(v, q) = (v, grad q) = −(divw v, q), for v ∈ H0 (curl ; Ω), q ∈ H01 (Ω) which induces operator B : V → Q0 as hBu, qi = b(u, q) for all q ∈ H01 (Ω) and B 0 : Q → V 0 as the dual of B. To impose the constraint, a Lagrangian multiplier p ∈ H01 (Ω) should be introduced. We arrive at the saddle point formulation of (4): given f ∈ V 0 , find u ∈ V, p ∈ Q s.t. A B0 u f (13) = . B O p 0 The well-posedness of the saddle point system (13) is a consequence of the inf-sup condition of B and the coercivity of A in the null space X = ker(B) = H0 (curl ; Ω) ∩ ker(divw ); see Chapter: Inf-sup conditions for operator equations. Lemma 4.1. We have the inf-sup condition (14) inf sup p∈Q v∈V hBv, pi = 1. kvkcurl |p|1 6 LONG CHEN Proof. Here we follow the convention in the Stokes equation to write out the formulation on B. It is more natural, however, to show the adjoint B 0 = grad is injective. We can interpret hBv, pi hv, ∇pi k∇pkV 0 = sup = sup , v∈V kvkcurl v∈V kvkcurl and it suffices to prove (15) k∇pkV 0 = k∇pk. First by the Cauchy-Schwarz inequality and the definition of the curl norm, we have k∇pkV 0 ≤ k∇pk. To prove the inequality in the opposite direction, we simply chose v = grad p. Then hBv, pi = |p|21 and kvkcurl = kvk = |p|1 . Therefore k∇pkV 0 ≥ k∇pk by the definition of sup. The coercivity in the null space can be derived from the following Poincaré-type inequality. Lemma 4.2 (Poincaré inequality. Lemma 3.4 and Theorem 3.6 in [2]). When Ω is simply connected and ∂Ω consists of only one component, we have (16) kvk . kcurl vk for any v ∈ X. A heuristic argument for the above Poincaré inequality is: using −∆u = grad div u + curl curl u, we get kuk1 h kcurl uk for u ∈ X. Together with the Poincaré inequality kuk . kuk1 , we get the desired result. The difficulty to make this argument rigorous is the boundary condition. For u ∈ H0 (curl ; Ω), only the tangential component is zero. A sketch of a proof is: show that curl : X → H := H0 (div; Ω) ∩ ker(div) is oneto-one and continuous. Then by the open mapping theorem, the inverse is also continuous which leads to (16). For each ψ ∈ H, i.e., div ψ = 0, with the assumption of the domain Ω, there exists a vector potential v such that ψ = curl v, which is not unique. But if we further require div v = 0 and impose boundary condition v × n = 0, then the potential is unique. Another approach is through the compact embedding. We can show Lemma 4.3. For a Lipschitz polyhedron domain Ω, there exists a constant s ∈ (1/2, 1] depending only on Ω such that X ,→ H s (Ω) and consequently X is compactly imbedded in L2 (Ω)3 . With the compact embedding, we can mimic the proof for H 1 -type Poincaré inequality to get (16). Now we revisit the stability of (12). We further require div f = 0. We consider the stability in the space X for which we can apply Poincaé inequality to obtain a coercivity in dependent of β. We can then obtain stability k∇ × uk . kf k with a constant depending only on α and constant in the Poincaré inequality. 5. F INITE E LEMENT M ETHODS FOR M AXWELL E QUATIONS In this section we first present two finite element spaces for Maxwell equations, discuss the interpolation error, and give convergence analysis of finite element methods for Maxwell equations using these spaces. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS 7 5.1. Edge Elements. We describe two types of edge elements developed by Nédélec [4, 5] in 1980s. We also briefly mention the implementation of these elements in MATLAB and recommend the readers to do the project Project: Edge Finite Element Method for Maxwell-type Equations. 5.1.1. First family: lowest order. For the k-th edge ek with vertices (i, j) and the direction from i to j, the basis φk and corresponding degree of freedom lk (·) are φk = λi ∇λj − λj ∇λi , Z 1 lk (v) = v · t ds ≈ [v(i) + v(j)] · ek , 2 ek where the approximation is exact when v · t is linear. We verify the duality lk (φk ) = 1 as follows Z φk (i) · ek = ∇λj · ek = ∇λj · t ds = λj (j) − λj (i) = 1 e Zk φk (j) · ek = ∇λi · ek = ∇λi · t ds = λi (j) − λi (i) = −1, ek and consequently lk (φk ) = 1. If we change the integral to another edge (m, n). If (m, n) ∩ (i, j) = ∅, then λi |emn = λj |emn = 0. Without loss of generality, consider m = i and n ∈ / {i, j}. Then in the basis φk either ∇λj · tmn = 0 or λj |emn = 0 and therefore φk · tmn = 0. This verifies li (φk ) = 0 for i 6= k. The lowest order edge element is NE0 = span{φk , k = 1, 2, · · · , 6} which is a linear polynomial. For a 2D triangle, the formulae for the basis is the same and three basis functions on a triangle is shown below We also show three basis function F IGURE 2. Basis of NE0 in a triangle. associated to three edges on one face in a tetrahedron in Fig. 3. Notice that the vector field φk of edge k is orthogonal to other edges. The lowest order element NE0 is not P13 whose dimension is 4 × 3 = 12. In other words, the lowest order edge element is an incomplete linear polynomial space and can only reproduce constant vector. From the approximation point of view, the L2 error can be only first order. Nevertheless the H(curl ) norm is still first order. Be careful on the orientation of edges. For each edge in the triangulation, we need to assign a unique orientation and will be called the global orientation. The orientation in one tetrahedron or one triangle (called local orientation) may not be consistent with 8 LONG CHEN F IGURE 3. Three basis of NE0 associated to three edges on one face in a tetrahedron. the global one. In 3-D, locally we still use i < j as the orientation. In 2-D, the local edges are orientated counterclockwise. For corresponding data structure, we refer to the documentation of ifem: Lowest Order Edge Element in 3D. The necessary data structure for the edge element can be obtained via [elem2edge,edge,elem2edgeSign] = dof3edge(elem); In the output elem2edge is the element-wise pointer from elem to edge which records all edges with ordering edge(k,1)<edge(k,2). The inconsistency of local edges to global edges is in elem2edgeSign. For the easy of computing curl-curl matrix, we also list the curl of the basis ∇ × φk = 2∇λi × ∇λj , •2 a figure here and present a geometry interpretation. The barycentric coordinate λi is a linear polynomial and the face fi is on the zero level set of λi . Therefore ∇λi is an inward normal direction of face fi opposite to vertex i. Write ∇λi = k∇λi kni with ni the unit inwards normal direction of fi . So the direction of the vector ∇λi × ∇λj is ni × nj which is the edge vector of the conjugate edge of k. Here we defined the conjugate edge, indexed by k 0 , as the edge formed by the other two vertices, i.e., ek and ek0 have no intersection and the direction of ek0 is “opposite” to ek ; see Fig. ?? •2 . With these notation, we get (17) ∇ × φk = 2k∇λi kk∇λj ktk0 . The volume and gradient of barycentric coordinates can be obtained by the subroutine [Dlambda,volume] = gradbasis3(node,elem). To enumerate 6 edges in one tetrahedron, we use locEdge = [1 2; 1 3; 1 4; 2 3; 2 4; 3 4] and two for loops for k=1:6 and for l=1:6. Two vertices of the k-edge can be obtained by locEdge(k,:). The unit edge vector t can be computed from edge and use elem2edge to get the index. By using the global edge vector in (17), no sign correction Rneeded. For variable coefficients, simply replace the volume |τ | by the weighted one, i.e. α dx. τ The mass matrix (φk , φl ) can be computed using the integral formulae of barycentric coordinates: Z α1 !α2 !α3 !α4 !6 1 α2 α3 α4 P (18) λα |τ |. 1 λ2 λ3 λ4 dx = ( i αi + 3)! τ FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS 9 The computation of (negative) weak divergence of an edge element, i.e., the local matrix Bτ , is essentially (φk , ∇λi ) which is a linear combination of the entry (∇λi , ∇λj ). Instead of computing 6 × 4 = 24 times inner product, one can compute a 4 × 4 SPD matrix with 9 times inner product and the rest is much cheaper addition and substraction. 5.1.2. Second family: linear polynomial. In addition to φk , for each edge, we add one more basis ψ k = λi ∇λj + λj ∇λi , Z 1 1 lk (v) = 3 v · t(λi − λj ) ds ≈ [v(i) − v(j)] · ek . 2 ek The approximation is obtained by the Simpson’s rule with the fact λi − λj = 0 at the middle point, which is exact when v · t is linear. Obviously {lk (·), lk1 (·), k = 1, 2, · · · , 6} are linear independent. We then show it is dual to {φk , ψ k } The Simpson’s rule is exact for lk1 (ψ k ) and thus 1 1 lk1 (ψ k ) = [ψ k · eij (i) − ψ k · eij (j)] = [(λi − λj )(i) − (λi − λj )(j)] = 1. 2 2 The verification of ψ k · el = 0, for l 6= k, is similar as before. Therefore {lk1 } is a dual basis of {ψ k }. We need to verify one more duality lk (ψ l ) = 0, lk1 (φl ) = 0, ∀l = 1, 2, · · · , 6. We only need to worry about l = k since ψ k · tl = φk · tl = 0 if k 6= l. Notice that ψ k · tk is odd (respect to the middle point) and thus the integral is zero. Similarly φk · tk = 1 and thus lk1 (φk ) = 0. The lowest order second family of edge element is NE1 = span{φk , ψ k , k = 1, 2, · · · , 6}, which is a full linear polynomial and will reproduce linear polynomials. Therefore the L2 norm of error will be second order. The H(curl ) norm, however, is still first order since ψ k = ∇(λi λj ) and ∇ × ψ k = 0 has no contribution to the approximation of curl. Plot of ψ k in a triangle is F IGURE 4. Basis vectors ψ k of NE1 in a triangle. For NE1 , the curl-curl matrix is simply the zero extension of that of NE0 (6 × 6 to 12 × 12). The 12 × 12 local mass matrix can be computed by loops of φk and ψ k . For the B matrix, now the space for the Lagrange multiplier is the quadratic Lagrange element. The 12 × 10 local matrix can be computed with the help of mass matrix since the gradient of edge bubble functions is a scaling of basis function ψ k . 10 LONG CHEN The global finite element space is obtained by gluing piecewise one. Using the barycentric coordinate in each tetrahedron, for an edge, the basis φk , ψ k can be extend to all tetrahedron surrounding this edge. Given a triangulation T , let E be the edge set of T . Define NE0 (T ) = span{φe , e ∈ E}, NE1 (T ) = span{φe , ψ e , e ∈ E}. To show the obtained spaces are indeed in H(curl ; Ω), it suffices to verify the tangential continuity of the piecewise polynomials. Given a triangular face f , in one tetrahedron, we label the vertex opposite to f as xf and the corresponding barycentric coordinate will be denoted by λf . For an edge e using xf as an vertex, the corresponding basis φe or ψ e is a linear combination of λi ∇λf and λf ∇λi . Restrict to f , λf |f = 0 and ∇λf ×nf = 0 since ∇λf is a norm vector of f . Therefore we showed that φe |f × nf = ψ e |f × nf = 0 for edges e containing nf . Therefore for v ∈ NE0 (T ) or NE1 (T ), the trace v|f × nf depends only on the basis function of edges of f which is the ideal continuity of a H(curl ; Ω) function. 5.2. Interpolation Error Estimate. We consider the canonical interpolation to the edge element space. Given a triangulation Th with mesh size h. Define Ihcurl : V ∩ dom(Ihcurl ) → NE0 (Th ) as follows: given a function u ∈ V , define uI = Ihcurl u ∈ NE0 (Th ) by matching the d.o.f. le (Ihcurl u) = le (u) ∀e ∈ Eh (Th ). Namely X Z uI = u · t ds φe e∈Eh e For the second family edge element space, add le1 (·) and ψ e . The L2 -norm error estimate of u − uI is relatively easy. Restrict to one element τ , as the operator I − Ihcurl preserves constant vectors, by the Bramble-Hilbert lemma lemma, we obtain ku − uI k0,τ . hτ |u|1 . (19) For the second family edge element space, the operator I − Ihcurl preserves linear polynomial and thus second order error estimate can be obtained. Exercise 5.1. In one tetrahedron τ , verify Ihcurl to NE0 (τ ) will preserve constant vector and to NE1 (τ ) linear vectors. For the error ∇ × (u − uI ), if we want to use Bramble-Hilbert lemma, we need to ˆ in the introduce the Piola transformation to connecting the curl operators ∇× and ∇× current element and reference element. Instead we introduce the lowest order face element for H(div; Ω) and use the commuting diagram to change to the estimate of L2 -error. Give a face fl formed by vertices [i, j, k], we introduce a basis vector φl = 2(λi ∇λj × ∇λk + λj ∇λk × ∇λi + λk ∇λi × ∇λj ), and the corresponding degree of freedom Z lfl (v) = v · n dS ≈ v(c) · nfl |fl |, fl where the approximation is exact for linear polynomial v. Exercise 5.2. [Face element] FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS 11 (1) Verify {lfi , i = 1, 2, 3, 4} is a dual basis of {φfj , j = 1, 2, 3, 4}. (2) For a triangle in 2D, the degree of freedom remains the same. Please write out the basis functions. A plot of this basis can be found in Fig. 5. F IGURE 5. Basis vectors φk of RT0 in a triangle. We define the lowest order face element space RT0 (τ ) = span{φfj , j = 1, 2, 3, 4} and the global version RT0 (T ) = span{φf , f ∈ F(T )}, where F(T ) is the set of all faces of a triangulation T . Given a triangulation Th with mesh size h. Define Ihdiv : V → RT0 (Th ) as follows: given a function u ∈ V , define uI = Ihdiv u ∈ RT0 (Th ) by matching the d.o.f. lf (Ihdiv u) = lf (u) ∀f ∈ Fh (Th ). Namely uI = X Z f ∈Fh e u · n dS φf We verify the crucial commuting property ∇ × Ihcurl u = Ihdiv ∇ × u by the Stokes’ theorem and the definition of interpolation operators: Z Z Z div Ih (∇ × u) · nf dS = (∇ × u) · nf dS = u · t ds f f ∂f Z Z = Ihcurl u · t ds = (∇ × Ihcurl u) · nf dS ∂f Then as Ihdiv f preserves the constant vector, we obtain k∇ × (u − uI )k0,τ = k(I − Ihdiv )∇ × uk0,τ . hτ |∇ × u|1,τ The commuting diagram can be extended to the whole sequence and summarized in the figure below Exercise 5.3. Prove the commuting diagram shown in Fig. 6. 12 LONG CHEN H1 grad Ihgrad P1 H(curl) H(div) Ihcurl grad N E0 ∂ vertices curl L2 Ih0 Ihdiv curl RT 0 ∂ edges div div P0 ∂ faces tetrahedron F IGURE 6. Commuting diagram of finite element spaces. Remark 5.4. The domain of the canonical interpolation Ihcurl , Ihdiv are smooth subspace of H(curl ; Ω) or H(div; Ω), respectively. For example, vven for a H 1 function u, the trace u restricted on an edge is not well defined. The arguments above require the function smooth enough. Quasi-interpolation, which relaxes the smoothness of the function and preserves the nice commuting diagram, have been constructed recently. 5.3. Well-posedness of Discrete Saddle Point Problem. For finite element approximation, we chose edge element space Vh ⊂ H0 (curl ; Ω) and define the subspace Xh = Vh ∩ ker(divh ). By the exact sequence, Vh = Xh ⊕ grad (Sh ). The bilinear form a(·, ·) is not well defined on Vh but it is on the subspace Xh due to the following discrete Poincaré inequality. Note that Xh 6⊂ X, it is not a simple consequence of the Poincaré inequality in Lemma 4.2 Lemma 5.5 (Discrete Poincaré inequality). For vh ∈ Xh , kvh k . kcurl vh k. A systematic way of proving the Poincare inequality is using the exact sequence in both continuous and discrete level and use the bounded operator; See Arnold, Falk and Winther [1]. For the discrete problem, fh ∈ Xh0 i.e. discrete divergence free (fh , grad vh ) = 0 for all vh ∈ Sh . Then A−1 : Xh0 → Xh is well defined and the following stability result holds: kuh kcurl . kfh kXh0 . Discrete inf-sup condition is easy. Just take ∇ph . Then we obtain the first order error estimate: k∇ × (u − uh )k + k∇(p − ph )k . k∇ × (u − uI )k + k∇(p − pI )k . h (|∇ × u|1 + |p|2 ) . FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS 13 ACKNOWLEDGMENT Thank Dr. Shuhao Cao for the discussion and help on the nice figures of basis functions. R EFERENCES [1] D. N. Arnold, R. S. Falk, and R. Winther. Finite element exterior calculus, homological techniques, and applications. Acta Numer., pages 1–155, 2006. [2] V. Girault and P. A. Raviart. Finite element methods for Navier–Stokes equations: Theory and algorithms. Springer-Verlag, Berlin, 1986. [3] P. Monk. Finite Element Methods for Maxwell’s Equations. Oxford University Press, 2003. [4] J. Nédélec. Mixed finite elements in R3 . Numer. Math., 35:315–341, 1980. [5] J. Nédélec. A new family of mixed finite elements in R3 . Numer. Math., 50:57–81, 1986. [6] S. J. Orfanidis. Electromagnetic Waves and Antennas. Online, 2011.