block-structured adaptive mesh renement · 2013. 4. 15. · consider two levels, coarse and ne ,...
TRANSCRIPT
![Page 1: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/1.jpg)
Block-Structured Adaptive MeshRefinement
John [email protected]
Center for Computational Sciences and EngineeringLawrence Berkeley National Laboratory, USA
http://seesar.lbl.gov/ccse/
Presented at: Adaptive Grid Approaches for Fluid DynamicsCambridge UniversityCambridge, UKDecember 14–15, 2004
Collaborators: A. Almgren, V. Beckner, M. Day, J. Grcar, M. Lijewski, C. RendlemanM. Berger, P. Colella
Bell Lecture 1 – p. 1/22
![Page 2: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/2.jpg)
Types of Refinement
AMR approaches
Unstructured
Mesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 3: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/3.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortion
Mesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 4: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/4.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortion
Mesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 5: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/5.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortion
Mesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 6: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/6.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortionPoint-wise structuredrefinement
Point-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 7: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/7.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortionPoint-wise structuredrefinement
Point-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 8: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/8.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortionPoint-wise structuredrefinement
Point-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 9: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/9.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 10: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/10.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 11: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/11.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 12: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/12.jpg)
Types of Refinement
AMR approaches
UnstructuredMesh distortionPoint-wise structuredrefinementBlock structured
The next four lectures focus on block-structured refinement fortime-dependent problems
Basic ideasMulti-physics applications
Implementation issues
Bell Lecture 1 – p. 2/22
![Page 13: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/13.jpg)
Overview of LecturesDay 1:
1) AMR for Hyperbolic Conservation Laws ("Hello World")
PreliminariesKey AMR ideas
Software / Parallel Implementation
2) Extension to More General Systems
Incompressible Navier-Stokes– Fractional Step Scheme
1-D AMR for “classical” PDE’s– hyperbolic– elliptic– parabolic
Spatial accuracy considerations
Bell Lecture 1 – p. 3/22
![Page 14: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/14.jpg)
Overview of Lectures (p.2)Day 2:
3) IAMR and Extension to Multiphysics
Incompressible AMR
Software to support IAMR
Multiphysics applications– LMC (Low Mach Number Combustion)– AMAR (Adaptive Mesh and Algorithm Refinement)
4) Geometry
Embedded Boundary
Software to support EB
Bell Lecture 1 – p. 4/22
![Page 15: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/15.jpg)
AMR for Conservation LawsConsider the 2-D hyperbolic conservation law
Ut + Fx + Gy = 0
whereF = F(U),G = G(U)
Basic discretization:Finite volume approach with cell-centered data
Flux-based representation of conservation law
Explicit in time update
Un+1− Un
∆t=
Fn+ 1
2
i−1/2,j− F
n+ 12
i+1/2,j
∆x+
Gn+ 1
2
i,j−1/2− G
n+ 12
i,j+1/2
∆y
Numerical fluxes computed from data at tn in neighborhood of edge
Bell Lecture 1 – p. 5/22
![Page 16: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/16.jpg)
Basic AMR IssuesBasic design concepts for AMR
Cover regions requiring highresolution with finer grids
Use higher-order upwindmethodology for regular grids tointegrate PDE
Refine in space and timeMaintain CFL across levelsSubcycle in time
Issues
Generation of grid hierarchy
How to integrate on hierarchyIntegration of data on a patchSynchronization of levels
Shock Reflection
Original references:
2-D: Berger and Colella, JCP 1989
3-D: Bell,Berger,Saltzman and Welcome,JCP 1994
Bell Lecture 1 – p. 6/22
![Page 17: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/17.jpg)
Building the initial grid hierarchyFill data at level 0Estimate where refinement is needed and bufferGroup cells into patches according to a prescribed “grid efficiency”and refine ⇒ B1, ..., Bn (Berger and Rigoustos, 1991)
Repeat for next level and adjust for proper nesting
Efficiency = 0.5 Efficiency = 0.7 Efficiency = 0.9
Bell Lecture 1 – p. 7/22
![Page 18: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/18.jpg)
Building the initial grid hierarchyFill data at level 0Estimate where refinement is needed and bufferGroup cells into patches according to a prescribed “grid efficiency”and refine ⇒ B1, ..., Bn (Berger and Rigoustos, 1991)
Repeat for next level and adjust for proper nesting
Efficiency = 0.5 Efficiency = 0.7 Efficiency = 0.9
Bell Lecture 1 – p. 7/22
![Page 19: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/19.jpg)
Building the initial grid hierarchyFill data at level 0Estimate where refinement is needed and bufferGroup cells into patches according to a prescribed “grid efficiency”and refine ⇒ B1, ..., Bn (Berger and Rigoustos, 1991)
Repeat for next level and adjust for proper nesting
Efficiency = 0.5 Efficiency = 0.7 Efficiency = 0.9
Bell Lecture 1 – p. 7/22
![Page 20: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/20.jpg)
Building the initial grid hierarchyFill data at level 0Estimate where refinement is needed and bufferGroup cells into patches according to a prescribed “grid efficiency”and refine ⇒ B1, ..., Bn (Berger and Rigoustos, 1991)
Repeat for next level and adjust for proper nesting
Efficiency = 0.5 Efficiency = 0.7 Efficiency = 0.9
Bell Lecture 1 – p. 7/22
![Page 21: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/21.jpg)
Building the initial grid hierarchyFill data at level 0Estimate where refinement is needed and bufferGroup cells into patches according to a prescribed “grid efficiency”and refine ⇒ B1, ..., Bn (Berger and Rigoustos, 1991)
Repeat for next level and adjust for proper nesting
Efficiency = 0.5 Efficiency = 0.7 Efficiency = 0.9
Bell Lecture 1 – p. 7/22
![Page 22: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/22.jpg)
Building the initial grid hierarchyFill data at level 0Estimate where refinement is needed and bufferGroup cells into patches according to a prescribed “grid efficiency”and refine ⇒ B1, ..., Bn (Berger and Rigoustos, 1991)
Repeat for next level and adjust for proper nesting
Efficiency = 0.5 Efficiency = 0.7 Efficiency = 0.9
Bell Lecture 1 – p. 7/22
![Page 23: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/23.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
Advance fine grids in time r times
Synchronize coarse and fine data
Extend recursively to arbitrary number of refinement levels.
Bell Lecture 1 – p. 8/22
![Page 24: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/24.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
Advance fine grids in time r times
Synchronize coarse and fine data
Extend recursively to arbitrary number of refinement levels.
Level 0 Bell Lecture 1 – p. 8/22
![Page 25: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/25.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
Advance fine grids in time r times
Synchronize coarse and fine data
Extend recursively to arbitrary number of refinement levels.
Level 0 Level 1 Bell Lecture 1 – p. 8/22
![Page 26: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/26.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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 2Bell Lecture 1 – p. 8/22
![Page 27: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/27.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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 2Bell Lecture 1 – p. 8/22
![Page 28: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/28.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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
sync
Bell Lecture 1 – p. 8/22
![Page 29: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/29.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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
sync
Bell Lecture 1 – p. 8/22
![Page 30: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/30.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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
sync
Bell Lecture 1 – p. 8/22
![Page 31: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/31.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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
sync
Bell Lecture 1 – p. 8/22
![Page 32: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/32.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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
sync
sync
Bell Lecture 1 – p. 8/22
![Page 33: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/33.jpg)
Adaptive integration algorithmConsider two levels, coarse and fine, with refinement ratio r
∆xf = ∆xc/r , ∆tf = ∆tc/r,
To integrate
Advance coarse grids in time tc → tc + ∆tc
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
sync
syncsync
Bell Lecture 1 – p. 8/22
![Page 34: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/34.jpg)
Integrating on grid patchHow do you integrate a patch of data at level `?
Obtain boundary data needed to call integrator on uniform grid of data.
Assume explicit scheme with stencil width sd
Enlarge patch by sd cells in eachdirection and fill with data using
– Physical boundary conditions– Other patches at the same
level– Coarse grid data
Advance grid in time t → t + ∆t
Fine-Fine
Physical BC
Coarse-Fine
Bell Lecture 1 – p. 9/22
![Page 35: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/35.jpg)
FillPatch Operation
To fill fine grid “ghost cells” at t+k∆tf ,
k = 0, ..., r−1, using coarse grid data
Define coarse patch needed forinterpolation
Fill coarse patch at time t and t + ∆tc
Time-interpolate data on coarse patchto time t+k∆tf
Interpolate coarse data to fine patch
Bell Lecture 1 – p. 10/22
![Page 36: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/36.jpg)
SynchronizationAfter coarse grid time step and the subcycled advance of fine data, wehave
Uc at tn+1c
Uf at tn+1c
However, Uc and Uf are not consistent
Coarse data is not necessarily equal to the average of the fine griddata “over” it.Scheme violates conservation because of inconsistent fluxes atcoarse-fine interface
Bell Lecture 1 – p. 11/22
![Page 37: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/37.jpg)
SynchronizationAfter coarse grid time step and the subcycled advance of fine data, wehave
Uc at tn+1c
Uf at tn+1c
However, Uc and Uf are not consistent
Coarse data is not necessarily equal to the average of the fine griddata “over” it.Scheme violates conservation because of inconsistent fluxes atcoarse-fine interface
Bell Lecture 1 – p. 11/22
![Page 38: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/38.jpg)
SynchronizationAfter coarse grid time step and the subcycled advance of fine data, wehave
Uc at tn+1c
Uf at tn+1c
However, Uc and Uf are not consistent
Coarse data is not necessarily equal to the average of the fine griddata “over” it.Scheme violates conservation because of inconsistent fluxes atcoarse-fine interface
Bell Lecture 1 – p. 11/22
![Page 39: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/39.jpg)
SynchronizationAfter coarse grid time step and the subcycled advance of fine data, wehave
Uc at tn+1c
Uf at tn+1c
However, Uc and Uf are not consistent
Coarse data is not necessarily equal to the average of the fine griddata “over” it.Scheme violates conservation because of inconsistent fluxes atcoarse-fine interface
Bell Lecture 1 – p. 11/22
![Page 40: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/40.jpg)
SynchronizationAfter coarse grid time step and the subcycled advance of fine data, wehave
Uc at tn+1c
Uf at tn+1c
However, Uc and Uf are not consistent
Coarse data is not necessarily equal to the average of the fine griddata “over” it.Scheme violates conservation because of inconsistent fluxes atcoarse-fine interface
Bell Lecture 1 – p. 11/22
![Page 41: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/41.jpg)
SynchronizationAfter coarse grid time step and the subcycled advance of fine data, wehave
Uc at tn+1c
Uf at tn+1c
However, Uc and Uf are not consistent
Coarse data is not necessarily equal to the average of the fine griddata “over” it.Scheme violates conservation because of inconsistent fluxes atcoarse-fine interface
Bell Lecture 1 – p. 11/22
![Page 42: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/42.jpg)
Synchronization (p2)How do we address these problems with the solution?
Average down the fine grid data onto all underlying coarse cells
Uc =1
rd
∑Uf
Reflux at coarse-fine interfaces
∆xc∆ycUc = ∆xc∆ycU
c− ∆tcAc
Fc +
∑∆tfAf
Ff
Bell Lecture 1 – p. 12/22
![Page 43: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/43.jpg)
RegriddingCompute “error” at each cell : if “too big” then flag cell for refinement
Richardson extrapolation
Coarsen data on a patch at tn−1 and advance by 2∆t
Advance data at tn by ∆t and coarsenDifference of these two solutions is proportional to error
Functions of solution (e.g., vorticity)
Geometric considerationsCompute refined patches as initially
Fill newly refined regions using conservative interpolation from coarse grid
Bell Lecture 1 – p. 13/22
![Page 44: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/44.jpg)
RegriddingCompute “error” at each cell : if “too big” then flag cell for refinement
Richardson extrapolation
Coarsen data on a patch at tn−1 and advance by 2∆t
Advance data at tn by ∆t and coarsenDifference of these two solutions is proportional to error
Functions of solution (e.g., vorticity)
Geometric considerationsCompute refined patches as initially
Fill newly refined regions using conservative interpolation from coarse grid
Bell Lecture 1 – p. 13/22
![Page 45: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/45.jpg)
RegriddingCompute “error” at each cell : if “too big” then flag cell for refinement
Richardson extrapolation
Coarsen data on a patch at tn−1 and advance by 2∆t
Advance data at tn by ∆t and coarsenDifference of these two solutions is proportional to error
Functions of solution (e.g., vorticity)
Geometric considerationsCompute refined patches as initially
Fill newly refined regions using conservative interpolation from coarse grid
Bell Lecture 1 – p. 13/22
![Page 46: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/46.jpg)
RegriddingCompute “error” at each cell : if “too big” then flag cell for refinement
Richardson extrapolation
Coarsen data on a patch at tn−1 and advance by 2∆t
Advance data at tn by ∆t and coarsenDifference of these two solutions is proportional to error
Functions of solution (e.g., vorticity)
Geometric considerationsCompute refined patches as initially
Fill newly refined regions using conservative interpolation from coarse grid
Bell Lecture 1 – p. 13/22
![Page 47: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/47.jpg)
RegriddingCompute “error” at each cell : if “too big” then flag cell for refinement
Richardson extrapolation
Coarsen data on a patch at tn−1 and advance by 2∆t
Advance data at tn by ∆t and coarsenDifference of these two solutions is proportional to error
Functions of solution (e.g., vorticity)
Geometric considerationsCompute refined patches as initially
Fill newly refined regions using conservative interpolation from coarse grid
Bell Lecture 1 – p. 13/22
![Page 48: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/48.jpg)
Summary of AlgorithmHyperbolic AMR
For n = 1, ..., Nfinal
Advance(0,tn0 )
Advance (`,t)If (time to regrid) then
Regrid(`)
FillPatch(`,t)
Integrate(`,t,∆t`)
If (`<`finest) thenFor isub = 1, ..., r`
Advance(`+1, t+(isub−1)∆t +̀1)Average down(`,t+∆t`)Reflux(`,t+∆t`)
End If
Regrid(`): generate new grids at levels `+1 and higherFillPatch(`,t): fill patch of data at level ` and time t
Integrate(`,t,∆t): Advance data at level ` from t to t+∆t, averaging and storing fluxes atboundaries of level ` grids if ` > 0 and level ` cells at boundary of ` + 1
Average down(`,t): average (in space) level `+1 data at time t to level `
Reflux(`,t): Add (time- and space-averaged) refluxing corrections tolevel ` cells at time t adjacent to level `+1 grids
Bell Lecture 1 – p. 14/22
![Page 49: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/49.jpg)
Review of Data OperationsSingle-level operations
Fill a patch with data from same-level grids
Fill data using physical boundary conditions
Interpolate data in time
Add corrections from stored fluxes at same resolutionIntegrate patch of data in time
Find union of rectangles that contain a set of tagged points
Multi-level operations
Map regions between different levels of refinement
Interpolate : coarse → fine
Average : fine → coarse
Store fluxes from fine grid boundaries at coarse resolution
Bell Lecture 1 – p. 15/22
![Page 50: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/50.jpg)
Software / Parallel ImplementationAvailable software frameworks for hyperbolic AMR
BoxLib (LBNL)
Chombo (LBNL)
AMRClaw (UW)
SAMRAI (LLNL)
PARAMESH (NASA)
GRACE (Rutgers)
Data Structures
Support for Index space operations
Real data stored in FORTRAN-compatible form
Parallelization Strategy
Data distributionDynamic load balancing
Bell Lecture 1 – p. 16/22
![Page 51: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/51.jpg)
Data StructuresIndex space
Box : a rectangular region in index space
BoxArray : a union of Boxes at a level
Real data at a levelFAB: FORTRAN-compatible data on a single box
– Data on a patch
MultiFAB: FORTRAN-compatible data on a union of rectangles– Data at a level
FluxRegister: FORTRAN-compatible data on the border of a union ofrectangles
– Data for reflux correction (at coarse level resolution)
Bell Lecture 1 – p. 17/22
![Page 52: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/52.jpg)
Data OperationsBox calculus in C++:
compute intersection of patch with union of boxes
compute coarsening or refinement of patch coordinates
identify coarse grids underlying a given patch
Real data operations happen in FORTRAN on individual rectangularregions, either grids in the BoxArray or temporary patches:
time integration of a patch of data
interpolation/averaging of a patch of data
filling of flux registers
Bell Lecture 1 – p. 18/22
![Page 53: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/53.jpg)
Parallel Data DistributionAMR hierarchy represented by a BoxArray and MultiFAB at each level
Each processor contains the full BoxArray.– Simplifies data-communications: send-and-forget
Data itself is distributed among processors; different resolutions aredistributed independently, separately load-balanced.
Owner computes rule on FAB data.
Efficient implementation– Every MultiFAB with the same BoxArray has the same distribution– Each processor keeps list of its grids nearest neighbors and their
processors– Each processor keeps list of coarse grids and their processors
used to supply boundary conditions– Messages are ganged: no more than one message is ever
exchanged between processors in an operation
Bell Lecture 1 – p. 19/22
![Page 54: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/54.jpg)
Load BalanceAMR requires dynamic load-balancing.
Point-wise uniform work load: work proportional to the grid volume.
Dynamic programming approach based on the classic Knapsackproblem.
The LB problem as posed is NP, but a heuristic algorithm is providedthat finds a good, if not optimal solution.
Experience shows that good load-balance can be achieved withabout three grids per processor.
Bell Lecture 1 – p. 20/22
![Page 55: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/55.jpg)
Scaling Results for Hyperbolic Code
10 100 1000Number of processors
10
100
1000R
un T
ime
16x16x16 SC4532x32x32 SC4564x64x64 SC4532x32x32 IBM SP64x64x64 IBM SP128x128x128 IBM SP
Hyperbolic AMR Scaling
AMR using unsplit Godunov, 3 levels, factor of 4 refinement
Bell Lecture 1 – p. 21/22
![Page 56: Block-Structured Adaptive Mesh Renement · 2013. 4. 15. · Consider two levels, coarse and ne , with renement ratio r xf = xc=r ; tf = tc=r; To integrate Advance coarse grids in](https://reader036.vdocument.in/reader036/viewer/2022071006/5fc3d4f65c6ae41744505c97/html5/thumbnails/56.jpg)
Shock–bubble interactionMach 1.25 shock in air interacting with a helium bubble
Domain 22.25 cm × 8.9 cm × 8.9 cm
Base grid 80 × 32 × 32
3 levels, r1 = 1, r2 = 4
Shock bubble
Bell Lecture 1 – p. 22/22