Upload
jaclyn
View
62
Download
0
Embed Size (px)
DESCRIPTION
Sparse matrix computations. Dave O’Hallaron Intel Research Pittsburgh Sept 2007. element. node. t. mesh. simulation results. Galerkin discretization. FEM solver. Animation. Visualization Model. Mathematical Model. Computer Model. Numerical Model. Physical Model. Physical - PowerPoint PPT Presentation
Citation preview
Sparse matrix computations
Dave O’Hallaron
Intel Research Pittsburgh
Sept 2007
Scientific Computing Process
Earthquake ground motion
Physical System
mesh
elementnode
ComputerModel
FEM solver
Numerical Model
Galerkin discretization
t
simulation results
VisualizationModel
Animation
Physical Model
Material property model
Mathematical Model
Wave propagation equation
2
2
t
uIuuu T
Scientific Computing Workflow
Mesh
t
Simulation results
Physical model Mesh
generationVisuali-zation
Solver
Mesh
David O’Hallaron (CMU CS and ECE)Jacobo Bielak (CMU CivE)
1994 Northridge Quake Simulation
20 seconds of an aftershock from the Jan 17, 1994 Northridge quake in San Fernando Valley of Southern California.
Teora, Italy1980
San Fernando Valley
x
epicenter lat. 34.32 long. -118.48
lat. 34.08 long. -118.75
lat. 34.38 long. -118.16
San Fernando Valley
San Fernando Valley (Top View)
Soft soil
Hard rock
xepicenter
San Fernando Valley (Side View)
Soft soil
Hard rock
Initial node distribution
Unstructured mesh (top view)
Partitioned Unstructured Mesh
element
nodes
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
The disp vector records thedisplacements of each mesh node during last three timesteps
90% of time spent in sparse matrix vector
product (SMVP) kernel