# Sparse matrix computations - PowerPoint PPT Presentation

Sparse matrix computations

1 / 13

## Sparse matrix computations

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
##### Presentation Transcript

1. Sparse matrix computations Dave O’Hallaron Intel Research Pittsburgh Sept 2007

2. element node t mesh simulation results Galerkin discretization FEM solver Animation Visualization Model Mathematical Model Computer Model Numerical Model Physical Model Physical System Wave propagation equation Material property model Earthquake ground motion Scientific Computing Process

3. t Scientific Computing Workflow Physical model Mesh Simulation results Solver Mesh generation Visuali- zation Mesh

4. David O’Hallaron (CMU CS and ECE) Jacobo Bielak (CMU CivE)

5. 1994 Northridge Quake Simulation 20 seconds of an aftershock from the Jan 17, 1994 Northridge quake in San Fernando Valley of Southern California.

6. Teora, Italy 1980

7. lat. 34.38 long. -118.16 epicenter lat. 34.32 long. -118.48 x San Fernando Valley lat. 34.08 long. -118.75 San Fernando Valley

8. San Fernando Valley (Top View) Hard rock epicenter x Soft soil

9. San Fernando Valley (Side View) Soft soil Hard rock

10. Initial node distribution

11. Unstructured mesh (top view)

12. nodes element Partitioned Unstructured Mesh

13. The disp vector records the displacements of each mesh node during last three timesteps Quake solver code NODEVECTOR3 disp[3], M, C, M23; MATRIX3 K; /* matrix and vector assembly */ FORELEM(i) { ... } /* time integration loop */ for (iter = 1; iter <= timesteps; iter++) { SMVP(K, disp[dispt], disp[disptplus]); disp[disptplus] *= - IP.dt * IP.dt; disp[disptplus] += 2.0 * M * disp[dispt] - (M - IP.dt / 2.0 * C) * disp[disptminus] - ...); disp[disptplus] = disp[disptplus] / (M + IP.dt / 2.0 * C); i = disptminus; disptminus = dispt; dispt = disptplus; disptplus = i; } K is the adjacency matrix of the mesh, a labeled undirected graph 90% of time spent in sparse matrix vector product (SMVP) kernel