Adaptive Multilevel BDDC Jan Mandel Includes joint work with Clark Dohrmann, Bedˇ rich Soused´ ık, Jakub ˇ ıstek, Pavel Burda, Marta ˇ S´ Cert´ ıkov´ a, and Jaroslav Novotn´ y. Center for Computational Mathematics and Department of Mathematical and Statistical Sciences University of Colorado Denver Supported by National Science Foundation under grant DMS-0713876 DD19, August 2009 (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 1 / 49
Outline Some (biased) history BDDC formulation Adaptive Multilevel BDDC Implementation by global matrices and generalized change of variables Implementation on top of frontal solver (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 2 / 49
Motivation BDDC – Balancing Domain Decomposition by Constraints From Dohrmann (2003): Some remaining issues need to be addressed for improvement. First, it would be useful to have an effective method for select- ing additional corners and edges to improve performance for very poorly conditioned problems. Second, the performance of the multilevel extension should be investigated further. Recall that the multilevel extension is obtained by recursive application of the preconditioner to coarse problem stiffness matrices. Such an ex- tension would be beneficial for problems with very large numbers of substructures... (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 3 / 49
Basic substructuring assemble elements into substructures, eliminate interiors = ⇒ reduced problem (Schur complement) on interface (Dirichlet-to-Neumann operator H 1 / 2 → H − 1 / 2 , a.k.a. Poincar´ e-Steklov operator) for parallel solution; Schur complement matrix-vector multiply = solve substructure Dirichlet problem only matrix datastructures needed; condition number O (1 / h ) better � 1 / h 2 � in practice than the O for the original problem (for small N ) (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 4 / 49
Early Preconditioners diagonal preconditioning: Gropp and Keyes 1987, “probing” the diagonal of the Schur complement Chan and Mathew 1992 (because creating the diagonal of the Schur complement is expensive)... preconditioning by solving substructure Neumann problems ( H − 1 / 2 → H 1 / 2 ) Glowinski and Wheeler 1988, Le Talleck and De Roeck 1991 (a.k.a. the Neumann-Neumann method) add coarse space – asymptotically optimal preconditioners: H / h → log 2 (1 + H / h ) (Bramble, Pasciak, Schatz 1986+, Widlund 1987, Dryja 1988, Dryja-Widlund-Smith 1994... ) but all these methods require access to mesh details and depend on details of the Finite Element code, which makes them hard to interface with existing FE software (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 5 / 49
FETI and BDD algebraic - need only substructure 1. solvers (Neumann, Dirichlet), 2. connectivity, 3. basis of nullspace (BDD - constant function for the Laplacian, FETI - actual nullspace) both involve singular substructure problems (Neumann) and build the coarse problem from local substructure nullspaces (in different ways) to assure that the singular systems are consistent Balancing Domain Decomposition (BDD, Mandel 1993): solve the system reduced to interfaces, interface degrees of freedom common (this is the Neumann-Neumann with a particular coarse space and multiplicative coarse correction) Finite Element Tearing and Interconnecting (FETI, Farhat and Roux 1991): enforce continuity across interfaces by Lagrange multipliers, solve the dual system for the multipliers (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 6 / 49
FETI and BDD Developments Both require only matrix level information available in FE software. So they became very popular and widely used. The methods work well in 2D and 3D (solids). But the performance for plates/shells/biharmonic was not so good. Reason: the condition numbers depend on the energy (trace norm) of functions with jumps across a substructure corner. In 2D, OK for H 1 / 2 traces of H 1 functions, not H 3 / 2 traces of H 2 functions (embedding theorem). Fix: avoid this by increasing the coarse space and so restricting the space where the method runs, to make sure that nothing gets torn across the corners (BDD: LeTallec Mandel Vidrascu 1998, FETI: Farhat Mandel 1998, Farhat Mandel Tezaur 1998). Drawback: complicated, expensive, a large coarse problem with custom basis functions (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 7 / 49
The best so far: FETI-DP and BDDC To assure that nothing gets torn across the corners, enforce identical values at corners from all neighboring substructures a-priori = ⇒ corner values are coarse degrees of freedom Continuity elsewhere at the interfaces by Lagrange multipliers as in FETI = ⇒ FETI-DP (Farhat et al 2001) Continuity elsewhere by common values as in BDD = ⇒ BDDC (Dohrmann 2003; independently Cros 2003, Frakagis and Papadrakakis 2003, with corner coarse degrees of freedom only) Additional coarse degrees of freedom (side/face averages) required in 3D for good conditioning: Farhat, Lesoinne, Pierson 2000 (algorithm only), Dryja Windlud 2002 (with proofs) (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 8 / 49
Evolution of BDD/BDDC/FETI-DP (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 9 / 49
Substructuring for the two-level method (with H/h=4) (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 10 / 49
BDDC description - example of spaces � N W = W i : space of block vectors, one block per substructure i =1 � U ⊂ W ⊂ W continuous across whole continuous across no continuity substructure interfaces corners only required global matrix: assembled partially assembled not assembled substructures: assembled assembled assembled Want to solve u ∈ U : a ( u , v ) = � f , v � ∀ v ∈ U . (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 11 / 49
Abstract two-level BDDC: Variational setting of the problem and algorithm components u ∈ U : a ( u , v ) = � f , v � , ∀ v ∈ U form a ( · , · ) is SPD on U and positive semidefinite on W ⊃ U , Example: W = W 1 × · · · × W N (spaces on substructures) U = functions continuous across interfaces Choose preconditioner components: space � W , U ⊂ � W ⊂ W , such that a ( · , · ) is positive definite on � W . 1 Example: functions with continuous coarse dofs, such as values at substructure corners projection E : � W → U , range E = U . 2 Example: averaging across substructure interfaces (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 12 / 49
Abstract BDDC preconditioner Theorem The abstract BDDC preconditioner M : U − → U defined by w ∈ � ∀ z ∈ � M : r �− → u = Ew , W : a ( w , z ) = � r , Ez � , W . satisfies � ( I − E ) w � 2 κ = λ max ( MA ) a λ min ( MA ) ≤ ω = sup . � w � 2 w ∈ f W a The space � W is defined using so called coarse degrees of freedom , as � W = { w ∈ W : C ( I − E ) w = 0 } , C . . . weights on the local coarse degrees of freedom, E . . . averaging, = ⇒ coarse degrees of freedom on adjacent substructures coincide. (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 13 / 49
Coarse degrees of freedom (in implementation) We want to represent common values of coarse dofs as global coarse dofs, Q P . . . the global coarse degrees of freedom selection matrix . Suppose there is a space U c and operators Q T P : U → U c R c : U c → X R : U → W , where R c and R are mapping (0 − 1) matrices, related as CR = R c Q T P . In implementation, � W is decomposed into � W = � W ∆ ⊕ � W Π � W ∆ = functions with zero coarse dofs ⇒ local problems on substructures � W Π = functions given by coarse dofs & energy minimal ⇒ ⇒ global coarse problem . (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 14 / 49
The coarse problem A basis function from � W Π is energy minimal subject to given values of 1 coarse degrees of freedom on the 0.8 substructure. The function is discon- 0.6 tinuous across the interfaces between 0.4 the substructures but the values of 0.2 coarse degrees of freedom on the dif- 0 ferent substructures coincide. The coarse problem has the same structure as the original FE problem = ⇒ solve it approximately by one iteration of BDDC = ⇒ three-level BDDC . Apply recursively = ⇒ Multilevel BDDC . (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 15 / 49
Substructuring for the three-level method Ω 2, k Ω 1, i H 2 H 1 h (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 16 / 49
Multilevel BDDC Coarse problem solved by the BDDC preconditioner recursively. U � P 1 E 1 � U I 1 U 1 W 1 ← ← ⊂ ⊂ � � � W Π1 ⊕ W ∆1 � P 2 E 2 � U I 2 U 2 W 2 ← ← ⊂ ⊂ � � � W Π2 ⊕ W ∆2 � . . . � PL − 1 EL − 1 � U IL − 1 U L − 1 W L − 1 ← ← ⊂ ⊂ � � � W Π L − 1 ⊕ W ∆ L − 1 The leaves of the tree are the local problems and the coarse actually solved. (Zhangjiajie, China) Adaptive Multilevel BDDC DD19, August 2009 17 / 49
Recommend
More recommend