1 Data Structures for Scientific Computing Orion Sky Lawlor www.cs.uaf.edu 2011/04/14.

Slides:



Advertisements
Similar presentations
Fast Adaptive Hybrid Mesh Generation Based on Quad-tree Decomposition
Advertisements

Continuum Simulation Monday, 9/30/2002. Class Progress Visualization: abstract concept (stress,2D, 3D), mechanical field Stochastic simulations: random.
Parallelizing stencil computations Based on slides from David Culler, Jim Demmel, Bob Lucas, Horst Simon, Kathy Yelick, et al., UCB CS267.
Efficient Storage and Processing of Adaptive Triangular Grids using Sierpinski Curves Csaba Attila Vigh Department of Informatics, TU München JASS 2006,
Coupling Continuum Model and Smoothed Particle Hydrodynamics Methods for Reactive Transport Yilin Fang, Timothy D Scheibe and Alexandre M Tartakovsky Pacific.
1 Computer Graphics Chapter 7 3D Object Modeling.
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
Computing 3D Geometry Directly From Range Images Sarah F. Frisken and Ronald N. Perry Mitsubishi Electric Research Laboratories.
A Bezier Based Approach to Unstructured Moving Meshes ALADDIN and Sangria Gary Miller David Cardoze Todd Phillips Noel Walkington Mark Olah Miklos Bergou.
A Bezier Based Approach to Unstructured Moving Meshes ALADDIN and Sangria Gary Miller David Cardoze Todd Phillips Noel Walkington Mark Olah Miklos Bergou.
1cs542g-term Notes. 2 Meshing goals  Robust: doesn’t fail on reasonable geometry  Efficient: as few triangles as possible Easy to refine later.
Hierarchical Multi-Resolution Finite Element Model for Soft Body Simulation Matthieu Nesme, François Faure, Yohan Payan 2 nd Workshop on Computer Assisted.
1 Internal Seminar, November 14 th Effects of non conformal mesh on LES S. Rolfo The University of Manchester, M60 1QD, UK School of Mechanical,
GATE D Object Representations (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager SimBT.
CSE351/ IT351 Modeling And Simulation Choosing a Mesh Model Dr. Jim Holten.
CSE351/ IT351 Modeling and Simulation
CS267 L12 Sources of Parallelism(3).1 Demmel Sp 1999 CS 267 Applications of Parallel Computers Lecture 12: Sources of Parallelism and Locality (Part 3)
Efficient Parallelization for AMR MHD Multiphysics Calculations Implementation in AstroBEAR.
1/36 Gridless Method for Solving Moving Boundary Problems Wang Hong Department of Mathematical Information Technology University of Jyväskyklä
Haptic Cloth Rendering 6th Dutch-Belgian Haptics Meeting TUDelft, 21 st June 2006 Lode Vanacken Expertise centre for Digital Media (EDM) Hasselt University.
Quadtrees and Mesh Generation Student Lecture in course MATH/CSC 870 Philipp Richter Thursday, April 19 th, 2007.
Module on Computational Astrophysics Jim Stone Department of Astrophysical Sciences 125 Peyton Hall : ph :
T-Snake Reference: Tim McInerney, Demetri Terzopoulos, T-snakes: Topology adaptive snakes, Medical Image Analysis, No ,pp73-91.
New Coupled Models of Emerging Magnetic Flux in Active Regions W. P. Abbett, S. A. Ledvina, and G.H. Fisher.
Scientific Data Representation and Mapping
1 Finite-Volume Formulation. 2 Review of the Integral Equation The integral equation for the conservation statement is: Equation applies for a control.
Parallel Adaptive Mesh Refinement Combined With Multigrid for a Poisson Equation CRTI RD Project Review Meeting Canadian Meteorological Centre August.
ParFUM Parallel Mesh Adaptivity Nilesh Choudhury, Terry Wilmarth Parallel Programming Lab Computer Science Department University of Illinois, Urbana Champaign.
Grid Generation.
Graphics Graphics Korea University cgvr.korea.ac.kr Creating Virtual World I 김 창 헌 Department of Computer Science Korea University
Parallelization Of The Spacetime Discontinuous Galerkin Method Using The Charm++ FEM Framework (ParFUM) Mark Hills, Hari Govind, Sayantan Chakravorty,
1 Data Structures for Scientific Computing Orion Sky Lawlor charm.cs.uiuc.edu 2003/12/17.
Scalable Algorithms for Structured Adaptive Mesh Refinement Akhil Langer, Jonathan Lifflander, Phil Miller, Laxmikant Kale Parallel Programming Laboratory.
7 th Annual Workshop on Charm++ and its Applications ParTopS: Compact Topological Framework for Parallel Fragmentation Simulations Rodrigo Espinha 1 Waldemar.
A Hybrid Particle-Mesh Method for Viscous, Incompressible, Multiphase Flows Jie LIU, Seiichi KOSHIZUKA Yoshiaki OKA The University of Tokyo,
High Performance Computing 1 Load-Balancing. High Performance Computing 1 Load-Balancing What is load-balancing? –Dividing up the total work between processes.
Mesh Generation 58:110 Computer-Aided Engineering Reference: Lecture Notes on Delaunay Mesh Generation, J. Shewchuk (1999)
Discontinuous Galerkin Methods and Strand Mesh Generation
Adaptive Mesh Modification in Parallel Framework Application of parFUM Sandhya Mangala (MIE) Prof. Philippe H. Geubelle (AE) University of Illinois, Urbana-Champaign.
Application Paradigms: Unstructured Grids CS433 Spring 2001 Laxmikant Kale.
Detail-Preserving Fluid Control N. Th ű rey R. Keiser M. Pauly U. R ű de SCA 2006.
Parametric Surfaces Define points on the surface in terms of two parameters Simplest case: bilinear interpolation s t s x(s,t)x(s,t) P 0,0 P 1,0 P 1,1.
Solid Modeling. Solid Modeling - Polyhedron A polyhedron is a connected mesh of simple planar polygons that encloses a finite amount of space. A polyhedron.
1996 Eurographics Workshop Mathieu Desbrun, Marie-Paule Gascuel
Ale with Mixed Elements 10 – 14 September 2007 Ale with Mixed Elements Ale with Mixed Elements C. Aymard, J. Flament, J.P. Perlat.
1 1  Capabilities: Building blocks for block-structured AMR codes for solving time-dependent PDE’s Functionality for [1…6]D, mixed-dimension building.
1 Multi-resolution Tetrahedral Meshes Leila De Floriani Department of Computer and Information Sciences University of Genova, Genova (Italy)
October 25, 2007 P_HUGG and P_OPT: An Overview of Parallel Hierarchical Cartesian Mesh Generation and Optimization- based Smoothing Presented at NASA Langley,
Presented by Adaptive Hybrid Mesh Refinement for Multiphysics Applications Ahmed Khamayseh and Valmor de Almeida Computer Science and Mathematics Division.
Partial Derivatives Example: Find If solution: Partial Derivatives Example: Find If solution: gradient grad(u) = gradient.
1 Rocket Science using Charm++ at CSAR Orion Sky Lawlor 2003/10/21.
Scientific Computing Lab Outlook / State of Research Dr. Miriam Mehl Institut für Informatik Scientific Computing in Computer Science.
Development of an Atmospheric Climate Model with Self-Adapting Grid and Physics Joyce E. Penner 1, Michael Herzog 2, Christiane Jablonowski 3, Bram van.
1 Overview (Part 1) Background notions A reference framework for multiresolution meshes Classification of multiresolution meshes An introduction to LOD.
Fifth International Conference on Curves and Surfaces Incremental Selective Refinement in Hierarchical Tetrahedral Meshes Leila De Floriani University.
CSE 872 Dr. Charles B. Owen Advanced Computer Graphics1 Water Computational Fluid Dynamics Volumes Lagrangian vs. Eulerian modelling Navier-Stokes equations.
An Introduction to Computational Fluids Dynamics Prapared by: Chudasama Gulambhai H ( ) Azhar Damani ( ) Dave Aman ( )
3D Object Representations 2009, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Interesting papers on SIGGRAPH 2005 Korea University Computer Graphics Lab. Jin-Kyung Hong.
A novel approach to visualizing dark matter simulations
Smoothed Particle Hydrodynamics For Deformable Vessel Dynamics Progress Report Van Jones 2008/01/30.
1 ChaNGa: The Charm N-Body GrAvity Solver Filippo Gioachin¹ Pritish Jetley¹ Celso Mendes¹ Laxmikant Kale¹ Thomas Quinn² ¹ University of Illinois at Urbana-Champaign.
2D AFEAPI Overview Goals, Design Space Filling Curves Code Structure
Lecture 7 - Meshing Applied Computational Fluid Dynamics
Data Structures for Efficient and Integrated Simulation of Multi-Physics Processes in Complex Geometries A.Smirnov MulPhys LLC github/mulphys
Ana Gainaru Aparna Sasidharan Babak Behzad Jon Calhoun
ParFUM: High-level Adaptivity Algorithms for Unstructured Meshes
Component Frameworks:
Visualization CSE 694L Roger Crawfis The Ohio State University.
Presentation transcript:

1 Data Structures for Scientific Computing Orion Sky Lawlor /04/14

2 Overview Introduction and Motivation Structured Grids Adaptive structured grids Unstructured Grids Adaptive unstructured grids Particles and Spatial Search Regular grids Trees

3 Introduction / Motivation There are only a few ways to represent the problem domain: Structured Grids Unstructured Grids Particles Knowing the basic terms helps you talk to application folks, and understand their code

4 Grids in General

5 So you’re trying to represent some physical situation, like heat flow You decide to divide up space into a bunch of little pieces: Grids: Introduction Element, or Cell, or Volume Node, or Vertex, or Point

6 Element Centered Data Fluid Dynamics, most PDEs Grids: Location of Data Node Centered Data Structural dynamics/FEM “Shape function” interpolates between nodes Data values constant (or simple) in a cell Hybrids too,like Arakawa C-grid

7 Eulerian: non-moving grid E.g., pressure waves move through the grid in CFD Grids: Motion of Grid and Data Lagrangian: moving grid E.g., grid deformation follows the structure deformation in FEM Or hybrid, e.g. “ALE”“ALE”

8 Structured Grids

9 AKA “Regular Grid”, since grid cells lie in regular rows and columns Cells are stored in a 3D array Cells can lie along axes (“rectilinear grid”); or curve through space Structured Grids: Introduction X Y

10 “Stencil” of source cells to compute a destination cell Classic GPU algorithm Common in fluid dynamics Also found in PDE solvers Structured Grids: Terminology i j i j x Read-only “Ghost” or “Dummy” cells around boundary

11 Fluid Dynamics Classical fluid dynamics grid Jacobi and other PDE solvers “Finite Difference” formulation Level set methods E.g., fluid solidification phase field Image processing Just a 2D pixel array! Structured Grids: Applications

12 Adaptive Structured Grids

13 “Adaptive Mesh Refinement”/AMR Cells are stored in small 3D arrays, linked together with pointers For regular refinement, use quadtree (2D) or octree (3D); can be irregular “block structured AMR” Adaptive Structured Grids: Intro from LLNL SC98 SAMRAI flier

14 “Refinement” and “Coarsening” criteria control evolution of mesh Basically simulation error estimates “Hanging Node Constraint” Neighbors must have similar (±1) refinement level Adaptive Structured Grids: Terms bad!

15 Adaptive physics solvers LLNL SAMRAI C++ Framework NASA GSFC PARAMESH AMRITA (James Quirk) INRIA GPU Gems 3:5GPU Gems 3:5 Adaptive Structured Grids: Apps

16 Unstructured Grids

17 Unstructured Grids: Introduction AKA “Mesh” Cells are stored in 1D array Vertices (“nodes”) of each cell (“element”) are listed explicitly Mesh consists of triangles and/or quadrilaterals (2D); tetrahedra, cubes/hexahedra, prisms, pyramids (3D)

18 Run computation on separate pieces Add up node forces along boundaries “Ghost regions”, like structured grids “Shared nodes” along partition boundaries: Unstructured Grids: Terms

19 “Conformality” Nodes never land in middle of element Enforced during mesh generation/modification Unstructured Grids: Terms bad!

20 Structural Mechanics This is the classic finite element mesh Fluid Dynamics In strange domains, where structured grids are tough to automatically generate Can be extended to Adaptive Meshes! Unstructured Grids: Applications

21 Adaptive Unstructured Grids

22 Adaptive Unstructured Grids: Intro AKA “Mesh Refinement”, shades into from-scratch “Mesh Generation” Cells still stored in 1D arrays, but the cells can now change Must respect conformality Must ensure element “quality” Must work in parallel

23 “Delaunay” mesh and “flip” “Edge bisection”: cut edge in middle Adaptive Meshes: Terminology

24 Almost every unstructured mesh program wants to be adaptive. Charm++ Triangle Mesh Refinement (Wilmarth) Charm++ PMAF3D (Wilmarth) Charm++ Tet Data Transfer Library (Lawlor) Adaptive Meshes: Applications

25 Particle Methods and Spatial Search

26 Particles and Spatial Search To work on a particle, you need nearby particles E.g., all particles within cutoff r Used for molecular dynamics (NAMD) or, all k nearest particles Used by Smoothed Particle Hydrodynamics (SPH) methods Search for neighboring particles is spatial, so need a “spatial search structure” Can use: structured grid, adaptive search tree, unstructured grid,...

27... using Structured Grids E.g., NAMD molecular dynamics Particles are Atoms Search structure is based on “Patches” of space in regular, rectilinear grid E.g., Charm++ Collision Library Search structure is based on regular rectilinear voxel grid atoms over here......never talk to atoms over here

28... using Search Trees E.g., Cosmology simulations Particles are stars, galaxies Search structure is a spatial octree SPH: “Smoothed particle hydrodynamics” Barnes-Hut gravity “Tree walk”

29 Conclusions

30 Conclusions There are only a few ways to represent the problem domain: Structured Grids Unstructured Grids Particles There are a lot of specialized terms, but very few concepts