CENTRAL School on Analysis and Numerics for PDEs November 09-12, 2015 Part 1: Newest Vertex Bisection Dirk Praetorius TU Wien Institute for Analysis and Scientific Computing
Outline 1 Regular Triangulations 2 Newest Vertex Bisection 3 Overlay Estimate 4 Closure Estimate http://www.asc.tuwien.ac.at/ praetorius/central01 praetorius.pdf Dirk Praetorius (TU Wien) 1 / 47
Regular Triangulations Dirk Praetorius (TU Wien)
Regular Triangulations Triangulation of Ω R 2 Dirk Praetorius (TU Wien) 2 / 47
Regular Triangulations Triangulation of Ω R 2 T is triangulation of Ω R 2, if T is finite set of compact triangles T with T > 0 T covers Ω, i.e., Ω = T T T. for all T,T T with T T holds T T = 0 i.e., the overlap of two elements is trivial Dirk Praetorius (TU Wien) 3 / 47
Regular Triangulations Regular triangulation Triangulation T is regular or conforming, if for all T,T T with T T, the intersection T T is either empty or a joint node T T = {z} or a joint edge T T = E regular not regular, hanging node Dirk Praetorius (TU Wien) 4 / 47
Regular Triangulations Shape regularity Triangulation T is γ-shape regular or (locally) γ-quasi uniform max T T diam(t) 2 T γ < geometrically: minimal angles of all T T are bounded from below analytically: enters inverse estimates and approximation estimates e.g., U L 2 (T) C(γ,q)diam(T) 1 U L 2 (T) for all U P q (T) sloppy formulation in papers:... where the constants depend on the shape of the elements. If the triangulation is (locally) quasi uniform, it holds... better:... where the constants depend on γ. Dirk Praetorius (TU Wien) 5 / 47
Regular Triangulations Axioms on mesh-refinement given initial mesh T 0 given mesh-refinement strategy refine( ) Axioms of Adaptivity require 1 all constants in (A1) (A4) are bounded γ-shape regularity 2 refined elements are split in 2 and n many sons 3 overlay estimate 4 closure estimate aim of talk: all is satisfied for Newest Vertex Bisection (NVB) Dirk Praetorius (TU Wien) 6 / 47
Newest Vertex Bisection Dirk Praetorius (TU Wien)
Newest Vertex Bisection Newest Vertex Bisection (NVB) each element has reference edge refinement by bisection T son of T = T = T /2 new reference edges are opposite to newest vertex for T T, obtain unique binary tree with possible successors T with T T Dirk Praetorius (TU Wien) 7 / 47
Newest Vertex Bisection NVB guarantees finitely many shapes NVB leads to only finitely many similarity classes of triangles depends only on T and its reference edge in particular, uniform shape regularity diam(t ) 2 T γ(t) < for all NVB successors T of T Dirk Praetorius (TU Wien) 8 / 47
Newest Vertex Bisection Element level function suppose initial triangulation T 0 with fixed reference edges each NVB successor T of some T 0 T 0 has refinement level: lev(t) := 0 if T = T 0 lev(t) := lev( T)+1 if T son of T note that diam(t) 2 T = T 0 2 lev(t) Lemma T,T T 0 T 0 with lev(t) = lev(t ) = T = T or T T = 0 proof by induction on lev(t) Dirk Praetorius (TU Wien) 9 / 47
Newest Vertex Bisection T = nvb(t,m) initialization for all marked elements T T M, mark its reference edge recursion if element s edge is marked, mark at least its reference edge terminates, since each triangulation has only finitely many edges refinement according to scheme note that each case is iterated NVB each refined element has 2, 3, or 4 sons Dirk Praetorius (TU Wien) 10 / 47
Newest Vertex Bisection Example given reference edges Dirk Praetorius (TU Wien) 11 / 47
Newest Vertex Bisection Example given reference edges marked elements M l T l Dirk Praetorius (TU Wien) 11 / 47
Newest Vertex Bisection Example given reference edges marked elements M l T l mark reference edges Dirk Praetorius (TU Wien) 11 / 47
Newest Vertex Bisection Example given reference edges marked elements M l T l mark reference edges proceed recursively Dirk Praetorius (TU Wien) 11 / 47
Newest Vertex Bisection Example given reference edges marked elements M l T l mark reference edges proceed recursively mesh refinement Dirk Praetorius (TU Wien) 11 / 47
Newest Vertex Bisection NVB preserves regularity recall refinement scheme T regular = T = nvb(t,m) regular since new nodes are always edge midpoints marked edge E = T T is refined for both elements i.e., refinement creates no new hanging nodes nvb(t,m) is coarsest conforming refinement of T s.t. all T M are bisected by NVB Dirk Praetorius (TU Wien) 12 / 47
Newest Vertex Bisection Order of refinement does not matter order of refinement does not matter T 1,T 2 T = nvb(nvb(t,{t 1 }),{T 2 })) = nvb(nvb(t,{t 2 }),{T 1 })) since only one refinement rule T = nvb(t,m) can also be realized through single refinements T := T for each T M T := nvb(t,{t}) end recall that nvb(t,{t}) usually refines more than 1 element Dirk Praetorius (TU Wien) 13 / 47
Newest Vertex Bisection Iterated NVB refinement T given regular triangulation fixed reference edge for all T T write T nvb(t ) if T is obtained by finitely many steps, i.e., exists n N 0, exists T 0,T 1,...,T n with T 0 = T and T n = T, exists M j T j, such that: T j = nvb(t j 1,M j 1 ) for all j = 1,...,n. initial triangulation T 0 fixes possible T T := nvb(t 0 ) Dirk Praetorius (TU Wien) 14 / 47
Overlay Estimate Dirk Praetorius (TU Wien)
Overlay Estimate Example T (blue) Dirk Praetorius (TU Wien) 15 / 47
Overlay Estimate Example T (red) Dirk Praetorius (TU Wien) 15 / 47
Overlay Estimate Example T (blue) T (red) T T Dirk Praetorius (TU Wien) 15 / 47
Overlay Estimate Lemma Local compatibility For all NVB successors T,T T 0 T 0 with T T > 0, it holds lev(t ) > lev(t) = T T lev(t ) = lev(t) = T = T (already proved) Proof. for all k lev(t) exist unique NVB successors T k,t k of T 0 s.t. lev(t k ) = k = lev(t k ) T T k and T T k T k T k T T > 0 implies T k = T k for all k lev(t) and T = T k for k = lev(t) i.e., T T k = T k = T for k = lev(t) T T k for lev(t ) > k Dirk Praetorius (TU Wien) 16 / 47
Overlay Estimate Overlay 1/2 Proposition (Overlay of NVB meshes) T,T nvb(t 0 ) T T := { T T : T T, T T, T T > 0 } = T T nvb(t ) nvb(t ) Proof. for x Ω, choose sequence T k of NVB triangles s.t. x T k lev(t k ) = k T k T k+1 = ex. i,j N s.t. T i T, T j T and x T i T j T T T = T T T T = T = T or T = T (local compatibility) = T T is triangulation remains to show: T T is regular Dirk Praetorius (TU Wien) 17 / 47
Overlay Estimate Overlay 2/2 recall: T T := { T T : T T, T T, T T > 0 } let T,T T T let z be node of T with z T goal: z is also node of T (i.e., there are no hanging nodes) w.l.o.g. T T w.l.o.g. T T (otherwise claim follows from regularity of T ) by definition of T T, there exists T T with T T thus, z T T regularity of T = z is node of T = z is node of T T is NVB successor of T with z T nodes stay nodes under NVB refinement Dirk Praetorius (TU Wien) 18 / 47
Overlay Estimate Overlay estimate Proposition (Overlay estimate) Let T,T T = nvb(t 0 ) = exists T T nvb(t ) nvb(t ) s.t. #(T T ) #T +#T #T 0 Proof. recall: T T := { T T : T T, T T, T T > 0 } shown: T T consists of elements of T and elements of T too rough estimate: #(T T ) #T +#T but: can locally subtract the number of coarser elements e.g., T = T T T T with T T, T T = do not count T for #(T T ) for each T 0 T 0, at least one such element in T T can be omitted = #(T T ) #T +#T #T 0 Dirk Praetorius (TU Wien) 19 / 47
Overlay Estimate Remarks T T := { T T : T T, T T, T T > 0 } is coarsest common refinement of T and T i.e., #(T T ) = min { # T : T nvb(t ) nvb(t ) } same proof works for NVB in R d instead of 2D overlay estimate can be proved for simple refinement strategies e.g., red refinement with hanging nodes overlay estimate fails for 2D red-green-blue refinement Stevenson: Found. Comp. Math. (2007) NVB in R 2 Cascón, Kreuzer, Nochetto, Siebert: SINUM (2008) Bonito, Nochetto: SINUM (2010) NVB in R d red refinement with hanging nodes Pavlicek: Bakk thesis (TU Wien 2011) RGB in R 2 Dirk Praetorius (TU Wien) 20 / 47
Closure Estimate Dirk Praetorius (TU Wien)
Closure Estimate Example M l T l T l+1 = nvb(t l,m l ) Dirk Praetorius (TU Wien) 21 / 47
Closure Estimate Example M l T l T l+1 = nvb(t l,m l ) clearly: #M l #R l Dirk Praetorius (TU Wien) 21 / 47
Closure Estimate Example M l T l T l+1 = nvb(t l,m l ) clearly: #M l #R l #R l C#M l cannot hold #M l = 1 #R l l Dirk Praetorius (TU Wien) 21 / 47
Closure Estimate Admissibility Initial triangulation T 0 is admissible, if for all T,T T 0, it holds E := T T is reference edge of T E is reference edge of T Dirk Praetorius (TU Wien) 22 / 47
Closure Estimate Closure estimate Theorem (Binev, Dahmen, DeVore 04, Stevenson 08) T 0 admissible T j = nvb(t j 1,M j 1 ) with M j 1 T j 1 for all j = 1,2,3,... l 1 = #T l #T 0 C(T 0 ) #M j j=0 recall: #T l #T l 1 C(T 0 )M l by counter example remainder of talk: proof of theorem Dirk Praetorius (TU Wien) 23 / 47
Closure Estimate Uniform refinements are admissible Lemma T 0 admissible T k := nvb(t k 1,T k 1 ) uniform refinement for k = 1,2,3,... = T k admissible and lev(t) = k for all T T k Proof by induction on k. start: k = 0 hypothesis: claim OK for k goal: claim for k+1 T k is admissible = only reference edges are refined no recursive marking needed all non-reference edges become reference edges of T k+1 Dirk Praetorius (TU Wien) 24 / 47
Closure Estimate Neighbors differ by level 1 Lemma T nvb(t 0 ) with T 0 admissible T,N T with E := T N edge = lev(t) lev(n) 1 Proof. w.l.o.g.: lev(t) = lev(n)+n with n 1 consider uniform refinement of T 0 with lev(t) = n levels of bisection provide successor N of N s.t. lev(n ) = lev(n)+n = lev(t) E = T N, since uniform refinement is regular = n 1, since 2 levels of bisection half all edges Dirk Praetorius (TU Wien) 25 / 47
Closure Estimate Configurations of reference edge 1/5 Lemma T nvb(t 0 ) with T 0 admissible T,N T with E := T N reference edge of T = Then, either lev(t) = lev(n) and E is also reference edge of N or lev(t) = lev(n)+1 and E is reference edge of son of N Proof by consideration of three cases. since lev(t) lev(n) 1: 1 lev(t) = lev(n) 2 lev(t) = lev(n)+1 3 lev(t)+1 = lev(n) Dirk Praetorius (TU Wien) 26 / 47
Closure Estimate Configurations of reference edge 2/5 1 Case. lev(t) = lev(n) goal: E is reference edge of T and N bisect T into T,T and N into N,N = lev(t ) = lev(t ) = lev(n ) = lev(n ) = {T,T,N,N } regular triangulation of T N E is split, since E is reference edge of T = E is also reference edge of N Dirk Praetorius (TU Wien) 27 / 47
Closure Estimate Configurations of reference edge 3/5 2 Case. lev(t) = lev(n)+1 goal: E is reference edge of T and son of N bisect N into N,N = lev(t) = lev(n ) = lev(n ) = {T,N,N } regular triangulation of T N E is not split, since E is reference edge of T = E is not reference edge of N = E is reference edge of one son of N Dirk Praetorius (TU Wien) 28 / 47
Closure Estimate Configurations of reference edge 4/5 3 Case. lev(t)+1 = lev(n) goal: this case is never met! bisect T into T,T = lev(t ) = lev(t ) = lev(n) = {T,T,N} regular triangulation of T N E is split, since E is reference edge of T = contradicts regularity Dirk Praetorius (TU Wien) 29 / 47
Closure Estimate Configurations of reference edge 5/5 Lemma T nvb(t 0 ) with T 0 admissible T,N T with E := T N reference edge of T = Then, either lev(t) = lev(n) and E also reference edge of N or lev(t) = lev(n)+1 and E is reference edge of son of N k k k k k +1 k +1 Dirk Praetorius (TU Wien) 30 / 47
Closure Estimate Lemma T nvb(t 0 ) with T 0 admissible Recursive refinement 1/6 T,N T with E := T N reference edge of T = ( T nvb(t,{n}) E also reference edge of N ) Proof of = (since = is clear). ex. minimal n and T 1,...,T n+1 T s.t. T 1 = N, T n+1 = T E j := T j T j+1 is reference edge of T j for all j = 1,...,n Case 1. n = 1, i.e., T 2 = T = E also reference edge of N = T 1 Case 2. n > 1, i.e., E j not reference edge of T j+1 for all j = 1,...,n = lev(t j ) = lev(t j+1 )+1 = lev(n) = lev(t 1 ) = = lev(t n+1 )+n = lev(t)+n = n 1 = contradicts n > 1 Dirk Praetorius (TU Wien) 31 / 47
Closure Estimate Recursive refinement 2/6 Lemma (Level of generated elements) T T nvb(t 0 ) with T 0 admissible T nvb(t,{t})\t = lev(t ) lev(t)+1 Proof by induction on lev(t). start: k = 0 is clear, since T 0 is admissible hypothesis: claim OK for all T with lev(t) k suppose lev(t) = k+1 w.l.o.g.: #(nvb(t,{t})\t ) > 2, i.e., more than T is refined let N T s.t. E := N T is reference edge of T Case 1. lev(t) = lev(n) k + 1 k + 1 Dirk Praetorius (TU Wien) 32 / 47
Closure Estimate Recursive refinement 3/6 Case 2. lev(t) = lev(n)+1 T nvb(t,{t})\t N T with E := T N is reference edge of T lev(t) = k+1 = lev(n) = k, i.e., hypothesis applies to N nvb(t,{t}) = nvb(t,{t}) with T := nvb(t,{n}) T T \T = lev(t ) lev(n)+1 = lev(t) T nvb(t,{t})\t is either son of T, i.e., lev(t ) = lev(t)+1 or grandson of N, i.e., lev(t ) = lev(n)+2 = lev(t)+1. k k + 1 k + 1 Dirk Praetorius (TU Wien) 33 / 47
Closure Estimate Recursive refinement 4/6 recall diam(t) 2 T = T 0 2 lev(t) with T T 0 T 0 = Ex. d,d > 0 s.t. d2 lev(t) T diam(t) 2 D 2 2 lev(t) Lemma (Distance of generated elements) T T nvb(t 0 ) with T 0 admissible T nvb(t,{t})\t lev(t) = dl(t,t ) := min x x 2D 2 j/2 x T x T j=lev(t ) Proof. Step 1. T T son of T = dl(t,t ) = 0 Step 2. E := T N is reference edge of T,N T = T and N are bisected once = dl(t,t ) = 0 Dirk Praetorius (TU Wien) 34 / 47
Closure Estimate Recursive refinement 5/6 Step 3. Proceed by induction on k = lev(t) start: k = 0 follows from Step 1 2, since T 0 is admissible hypothesis: estimate is true up to level k. suppose lev(t ) = k+1 and T T (covered by Step 1) N T with E := T N reference edge of T, but not of N (Step 2) = lev(t) = lev(n)+1 and T nvb(t,{n})\t = lev(n) = k and dl(n,t ) 2D lev(n) j=lev(t ) 2 j/2 triangle inequality = dl(t,t ) diam(n)+dl(n,t ) lev(t) = lev(n)+1 = diam(n) D2 lev(n)/2 = 2D2 lev(t)/2 = dl(t,t ) 2D lev(t) j=lev(t ) 2 j/2 Dirk Praetorius (TU Wien) 35 / 47
Closure Estimate Recursive refinement 6/6 Proposition (Control of generated elements) T T nvb(t 0 ) with T 0 admissible T nvb(t,{t})\t = lev(t ) lev(t)+1 and dl(t,t ) B(T 0 )2 lev(t )/2 Proof. dl(t,t ) 2D lev(t) j=lev(t ) 2 j/2 = 2 (lev(t )+k)/2 2 lev(t )/2 1 k=0 = B = lev(t) lev(t ) k=0 1 2 1/2 2 (lev(t )+k)/2 2D 1 2 1/2 and B = B(T 0 ). Dirk Praetorius (TU Wien) 36 / 47
Closure Estimate Closure estimate Theorem (Binev, Dahmen, DeVore 04, Stevenson 08) T 0 admissible T j = nvb(t j 1,M j 1 ) with M j 1 T j 1 for all j = 1,2,3,... l 1 = #T l #T 0 C(T 0 ) #M j j=0 use these assumptions in the following! Dirk Praetorius (TU Wien) 37 / 47
Closure Estimate Proof of closure estimate 1/9 A = A(T 0 ) := (D +B) p=0 (p+2)3 2 p/2 < Lemma M M := l 1 j=0 M j 0 k lev(m)+1 U k (M) := { T T l : lev(t) = k and dl(t,m) A2 k/2} = #U k (M) Ã(T 0) < Proof. diam(m) D2 lev(m)/2 D2 (k 1)/2 2D2 k/2 x T U k (M), y M = x y diam(t)+dl(t,m)+diam(m) 2 k/2 = U k (M) 2 k T 2 k for T U k (M) = #U k (M) 1. Dirk Praetorius (TU Wien) 38 / 47
Closure Estimate Proof of closure estimate 2/9 for T T and M M := l 1 j=0 M j define (lev(m) lev(t)+2) 2 if dl(t,m) A2 lev(t)/2 λ(t,m) := and lev(t) lev(m)+1 0 otherwise Lemma (upper bound) M M = T T l λ(t,m) π2 6 Ã(T 0) Proof. recall: U k (M) := { T T l : lev(t) = k and dl(t,m) A2 k/2} lev(m)+1 λ(t,m) = λ(t,m) T T l k=0 T U k (M) observe: λ(t,m) = (lev(m) k +2) 2. Dirk Praetorius (TU Wien) 39 / 47
Closure Estimate Lemma (upper bound) Proof of closure estimate 3/9 M M := l 1 j=0 M j = T T l λ(t,m) π2 6 Ã(T 0) Proof (cont d). lev(m)+1 λ(t,m) = λ(t,m) T T l k=0 T U k (M) observe: λ(t,m) = (lev(m) k +2) 2. = T T l λ(t,m) Ã(T 0) lev(m)+1 k=0 (lev(m) k+2) 2 lev(m)+1 k=0 p=1 (lev(m) k+2) 2 1 p 2 = π2 6 Dirk Praetorius (TU Wien) 40 / 47
Closure Estimate Proof of closure estimate 4/9 M M := l 1 j=0 M j = T T l λ(t,m) π2 6 Ã(T 0) Lemma (lower bound) T T l \T 0 = λ(t,m) 1 M M Lemmas imply closure estimate. #T l #T 0 #(T l \T 0 ) T T l \T 0 M M λ(t, M) (lower bound) λ(t,m) π2 6 Ã(T 0) #M (upper bound) M MT T l \T 0 = #T l #T 0 π2 6 Ã(T 0)#M = π2 6 Ã(T l 1 0) #M j Dirk Praetorius (TU Wien) 41 / 47 j=0
Closure Estimate Lemma (lower bound) T T l \T 0 = Proof of closure estimate 5/9 M M λ(t,m) 1, where M := l 1 j=0 M j Proof. ex. M 1,...,M n M and l 1 l 2 l n = 0 s.t. with M 0 := T M j nvb(t lj,{m j+1 })\T lj = lev(m j ) lev(m j+1 )+1, i.e., level decrease at most 1 = and dl(m j+1,m j ) B2 lev(m j)/2 clearly, lev(t) 1 = ex. minimal index t {1,...,n} s.t. lev(m t ) = lev(t) 1 = in particular, lev(t) lev(m j )+1 for all 1 j t j 1 next aim: dl(t,m j ) (D +B) k=0 2 lev(m k)/2 Dirk Praetorius (TU Wien) 42 / 47
Closure Estimate Proof of closure estimate 6/9 M 0 := T, M 1,...,M t M chosen s.t. lev(t) lev(m j )+1 lev(m j 1 ) lev(m j )+1 dl(m j,m j 1 ) B2 lev(mj 1)/2 triangle ineq. = dl(t,m j ) dl(t,m 1 )+diam(m 1 )+dl(m 1,M j ) j 1 inductively = dl(t,m j ) diam(m k )+ = dl(t,m j ) (D +B) k=1 j 1 2 lev(m k)/2 k=0 j dl(m k 1,M k ) k=1 define m(p,j) := # { k = 1,...,j 1 : lev(m k ) = lev(t)+p } = dl(t,m j ) (D +B) m(p,j)2 p/2 2 lev(t)/2 p=0 Dirk Praetorius (TU Wien) 43 / 47
Closure Estimate Proof of closure estimate 7/9 shown: dl(t,m j ) (D +B) m(p,j)2 p/2 2 lev(t)/2 for j = 1,...,t p=0 Case 1. m(p,t) (p+2) 3 for all p = 0,1,2,... = dl(t,m t ) (D +B) (p+2) 3 2 p/2 2 lev(t)/2 =: A2 lev(t)/2 p=0 recall: lev(m t ) = lev(t) 1 (lev(m) lev(t)+2) 2 if dl(t,m) A2 lev(t)/2 λ(t,m) := and lev(t) lev(m)+1 0 otherwise = λ(t,m t ) = 1 = λ(t,m) λ(t,m t ) = 1 M M Dirk Praetorius (TU Wien) 44 / 47
Closure Estimate Proof of closure estimate 8/9 recall: m(p,j) = # { k = 1,...,j 1 : lev(m k ) = lev(t)+p } Case 2. m(p,t) > (p+2) 3 for some p = 0,1,2,... for all those p, choose minimal t p = 2,...,t s.t. m(p,t p ) > (p+2) 3 choose p with minimal t := t p = m(p,k) (p+2) 3 for all p and all k = 1,...,t 1 as in Case 1 = dl(t,m k ) A2 lev(t)/2 recall: lev(t) lev(m k )+1 = λ(t,m k ) = (lev(m k ) lev(t)+2) 2 Dirk Praetorius (TU Wien) 45 / 47
Closure Estimate Proof of closure estimate 9/9 M 1,...,M t 1 M chosen s.t. λ(t,m k ) = (lev(m k ) lev(t)+2) 2 t = 2,...,t minimal s.t. m(p,t ) > (p +2) 3 recall: m(p,j) = # { k = 1,...,j 1 : lev(m k ) = lev(t)+p } = m(p,t ) 1 m(p,t 1) (p +2) 3 < m(p,t ) inequality in N = m(p,t 1) = (p +2) 3 = M M = M M λ(t,m) t 1 λ(t,m k ) = k=0 lev(m k )=lev(t)+p λ(t,m) (p +2) 2 in both cases = M M λ(t,m) 1 m(p,t 1) (p +2) 2 Dirk Praetorius (TU Wien) 46 / 47
Closure Estimate References Binev, Dahmen, DeVore: Numer. Math. (2004) NVB in R 2 with admissible T 0 Stevenson: Math. Comp. (2008) NVB in R d with admissible T 0 Bonito, Nochetto: SINUM (2010) red refinement in R d with hanging nodes Karkulik, Pavlicek, Praetorius: Constr. Approx. (2013) NVB in R d with arbitrary T 0 Aurada, Feischl, Führer, Karkulik, Praetorius: CMAM (2013) 1D bisection with bounded local mesh ratio Morgenstern, Peterseim: Comput. Aided Geom. Design (2015) T-spline meshes Dirk Praetorius (TU Wien) 47 / 47
Thanks for listening! Dirk Praetorius TU Wien Institute for Analysis and Scientific Computing dirk.praetorius@tuwien.ac.at http://www.asc.tuwien.ac.at/ praetorius Dirk Praetorius (TU Wien)