introduction to block structured adaptive mesh refinement
play

Introduction to Block-Structured Adaptive Mesh Refinement (AMR) Ann - PowerPoint PPT Presentation

Introduction to Block-Structured Adaptive Mesh Refinement (AMR) Ann S. Almgren Center for Computational Sciences and Engineering (Building 50A) Lawrence Berkeley National Laboratory asalmgren@lbl.gov Almgren p. 1/25 Types of Refinement


  1. Introduction to Block-Structured Adaptive Mesh Refinement (AMR) Ann S. Almgren Center for Computational Sciences and Engineering (Building 50A) Lawrence Berkeley National Laboratory asalmgren@lbl.gov Almgren – p. 1/25

  2. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 2/25

  3. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 3/25

  4. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 4/25

  5. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 5/25

  6. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 6/25

  7. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 7/25

  8. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 8/25

  9. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 9/25

  10. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 10/25

  11. Types of Refinement AMR approaches Unstructured Mesh distortion Point-wise structured refinement Block structured Almgren – p. 11/25

  12. AMR for Conservation Laws Consider the 2-D hyperbolic conservation law U t + F x + G y = 0 where F = F ( U ) , G = G ( U ) Basic discretization: Finite volume approach with cell-centered data Flux-based representation of conservation law Explicit in time update F n + 1 2 ,j − F n + 1 G n + 1 2 − G n + 1 2 2 2 2 U n +1 − U n i − 1 i + 1 i,j − 1 i,j + 1 / / 2 ,j / / 2 = + ∆ t ∆ x ∆ y Numerical fluxes computed from data at t n in neighborhood of edge Almgren – p. 12/25

  13. Basic Structured Grid AMR Ideas Cover regions requiring high resolution with finer grids Use (higher-order upwind) methodology for regular grids to integrate solution Need to know how to generate the grid hierarchy – initially – every time you regrid how to integrate the solution forward in time Integration of data on a patch Synchronization of levels Original references: 2-D: Berger and Colella, JCP 1989 3-D: Bell,Berger,Saltzman and Welcome, JCP 1994 Almgren – p. 13/25

  14. AMR: To Subcycle or Not To Subcycle? Should we refine in time as well as space? Yes – subcyle in time (CASTRO, Enzo) ∆ t c = r ∆ t f Maintain CFL (accuracy of advection scheme) across levels Reduce total number of cells advanced No – don’t subcycle (FLASH, RAGE) ∆ t c = ∆ t f Compute time step every fine grid time Simpler synchronization algorithm Simpler software framework Almgren – p. 14/25

  15. AMR: Subcycling in Time? Suppose we have N cells at each level and L levels with factor 2 refinement.To reach time T : With L = 4 : Type Ia Supernova Subcycling: must advance N + 2 N + 4 N + 8 N = 15 N cell-steps No subcycling: must advance 4 · 8 N = 32 N cell-steps With 2 total levels there is a factor of 4 / 3 more work with no subcycling. With 3 total levels there is a factor of 12 / 7 more work with no subcycling. With 4 levels ... 32 / 15 ... With L levels ... ?? (Note that answer changes if N not constant over levels.) Almgren – p. 15/25

  16. Building the initial grid hierarchy Fill data at level 0 Estimate where refinement is needed and buffer Group cells into patches according to a prescribed “grid efficiency” and refine ⇒ B 1 , ..., B n (Berger and Rigoustos, 1991) Repeat for next level and adjust for proper nesting

  17. Building the initial grid hierarchy Fill data at level 0 Estimate where refinement is needed and buffer Group cells into patches according to a prescribed “grid efficiency” and refine ⇒ B 1 , ..., B n (Berger and Rigoustos, 1991) Repeat for next level and adjust for proper nesting

  18. Building the initial grid hierarchy Fill data at level 0 Estimate where refinement is needed and buffer Group cells into patches according to a prescribed “grid efficiency” and refine ⇒ B 1 , ..., B n (Berger and Rigoustos, 1991) Repeat for next level and adjust for proper nesting

  19. Building the initial grid hierarchy Fill data at level 0 Estimate where refinement is needed and buffer Group cells into patches according to a prescribed “grid efficiency” and refine ⇒ B 1 , ..., B n (Berger and Rigoustos, 1991) Repeat for next level and adjust for proper nesting

  20. Building the initial grid hierarchy Fill data at level 0 Estimate where refinement is needed and buffer Group cells into patches according to a prescribed “grid efficiency” and refine ⇒ B 1 , ..., B n (Berger and Rigoustos, 1991) Repeat for next level and adjust for proper nesting

  21. Building the initial grid hierarchy Fill data at level 0 Estimate where refinement is needed and buffer Group cells into patches according to a prescribed “grid efficiency” and refine ⇒ B 1 , ..., B n (Berger and Rigoustos, 1991) Repeat for next level and adjust for proper nesting Efficiency = 0.5 Efficiency = 0.7 Efficiency = 0.9 Almgren – p. 16/25

  22. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. Almgren – p. 17/25

  23. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. Level 0 Almgren – p. 17/25

  24. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. Level 0 Level 1 Almgren – p. 17/25

  25. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. Level 0 Level 1 Level 2 Almgren – p. 17/25

  26. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. Level 0 Level 1 Level 2 Almgren – p. 17/25

  27. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. sync Level 0 Level 1 Level 2 Almgren – p. 17/25

  28. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. sync Level 0 Level 1 Level 2 Almgren – p. 17/25

  29. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. sync Level 0 Level 1 Level 2 Almgren – p. 17/25

  30. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. sync Level 0 Level 1 Level 2 Almgren – p. 17/25

  31. Adaptive integration algorithm Consider two levels, coarse and fine, with refinement ratio r ∆ x f = ∆ x c /r , ∆ t f = ∆ t c /r, To integrate Advance coarse grids in time t c → t c + ∆ t c Advance fine grids in time r times Synchronize coarse and fine data Extend recursively to arbitrary number of refinement levels. sync sync Level 0 Level 1 Level 2 Almgren – p. 17/25

Recommend


More recommend