Title: Overview Class
1OverviewClass 7 (Thurs, Feb 6)
- Black box approach to linear elastostatics
- Discrete Greens function methods
- Three parts
- What are Greens functions?
- Precomputation
- Fast contact handling via low-rank updates
- Capacitance matrix algorithm
- Multiresolution extensions (later)
2Linear Elastostatic Models (recap from last
class)
- Small-strain time-independent (static/equilibrium)
deformation response - Various origins, e.g., solid bodies, thin shells,
abstract linear systems, - Various surface representations and
discretization possible, e.g., FEM, BEM, FVM,
FDM, spectral,
3 Greens Functions for Interactive Elliptic PDEs
ARTDEFO Accurate Real Time Deformable Objects
In SIGGRAPH 99 Conference
Proceedings, ACM SIGGRAPH, 1999. (with Dinesh K.
Pai) A Unified Treatment of Elastostatic and
Rigid Contact for Real Time Haptics,
Haptics-e, The Electronic Journal of
Haptics Research (www.haptics-e.org), 2(1), 2001.
(w/ DKP)
4GF Deformation Basis
- Greens functions are physically based basis
functions adapted to - particular geometry
- particular constraints
- GF matrix is an input-output model of the linear
deformable system (for a particular BVP-type) - Relates displacements to tractions, etc.
- Well focus on surface constraints surface GFs
- Also works for volumetric quantities
- displacement, stress, strain, strain-rate, etc.
5Some Graphics References
- See webpage
- Cotin et al., 96/99.
- James Pai
- ARTDEFO Accurate Real Time Deformable Objects,
In SIGGRAPH 99 Conference Proceedings, ACM
SIGGRAPH, 1999. - A Unified Treatment of Elastostatic and Rigid
Contact for Real Time Haptics, Haptics-e, The
Electronic Journal of Haptics Research
(www.haptics-e.org), 2(1), 2001. - Doug L. James and Dinesh K. Pai, Multiresolution
Green's Function Methods for Interactive
Simulation of Large-scale Elastostatic Objects,
ACM Transactions on Graphics, Volume 22, No. 1,
Jan. 2003.
6Discrete Green's Functions (GFs)(in a
nutshell...)
- Reference BVP (RBVP)
-
- Greens function matrix
- General solution to RBVP (bar?specified BV)
7Example Displacement Constrained Model (white
dots indicate fixed vertices)
8Corresponding Greens Functions
- GF for this vertex is the response due to a
vertex force in the x, y and z directions - Use linear superposition to combine responses
9Anatomy of a Greens Function
- GF column corresponding to jth node, ?j
10Anatomy of a Greens Function
- GF corresponding to a single vertex
11Boundary Value Notation
- Various model descriptions/spaces possible
- Variables defined at n nodes/vertices
- x(x1,x2,,xn)T
- Continuous displacement u(x) and traction p(x)
fields, - e.g.,
- Discrete displacement u and traction p fields,
e.g., - u(u1,u2,,un)T, uku(xk)
- p(p1,p2,,pn)T, pkp(xk)
- Force relationship fkakpk, ak??kd?
- Sign convention (uk,pk)?0
12Boundary Value Problem (BVP)
- Specified and unspecified nodal variables
- (?u, ?p) are complementary node sets specifying
nodes with u or p constraints - BVP Given and (?u, ?p) ? Compute v
- (Mixed nodal boundary conditions possible)
13Matrix BVP
- Linear models formally satisfy
- Boundary Value Eqn
- Matrix BVP
- b represents body force effects.
-
14Example BEM (from last class)
- Identification with BEM equations
- HuGp
- (ARTDEFO paper)
15Recap Solving the BVP
H u G p H,G large dense
16Green's Functions (GFs)
- Reference BVP (RBVP)
-
- Greens function matrix
- Solutions to RBVP are
17Data-driven GF Formulation
- Excellent for interactive applications!
- Precompute GFs for speed
- Exploits linearity
- Avoids redundant work
- Optional boundary-only description for speed
- Black-box model definition
18Force-feedback Rendering
19More generally...
- GFs fundamental response of a linear system
- See whiteboard
- If Luf BVP then GF, G, satisfies LGdelta
homog BC. - In linear elasticity, there are formulae for
free space solutions, and a few others. - Survey of GFs for other physical phenomena
- We want Greens functions for a particular
deformable object ( constraint configuration),
hence - Numerical approx ? discrete Greens functions
20 Fast Capacitance Matrix Algorithms
ARTDEFO Accurate Real Time Deformable Objects
In SIGGRAPH 99 Conference Proceedings, ACM
SIGGRAPH, 1999. (with Dinesh K. Pai) A Unified
Treatment of Elastostatic and Rigid Contact for
Real Time Haptics, Haptics-e, The Electronic
Journal of Haptics Research (www.haptics-e.org),
2(1), 2001. (w/ DKP)
21Exploiting BVP Equation Structure
22Boundary Value Changes
Constraint type (position?force) doesnt change
Only the value of the constraint changes
23Boundary Value Changes
- BV changes only affect z in Avz
- Traction-free BC are trivial
24Boundary Condition Type Changes
Position ? Force constraint type switching
Intermediate BV changes
25Boundary Condition Type Changes
- BC change swaps a block column of A
26Sherman-Morrison-Woodbury
- Idea Exploit coherence between BVPs
- s-by-s capacitance matrix ????????
- Smaller matrix to invert and store!
27Motivation Changing BVP Type
- Traction?displacement constraint switching
- Example single nonzero constraint
- ? Self-effect relationship
- ? Equivalent traction constraint
- ? Equivalent Greens function (displ. constraint)
- Systematic formulation is CMA
28Capacitance Matrix Algorithms
- Solving general BVP using RBVPs GFs
- Low-rank updating techniques
- Long history in computing
- Sherman-Morrison-Woodbury et al. (50)
- Static reanalysis
- Contact mechanics Ezawa Okamoto 89
- Domain decomposition
- Real time simulation with precomputed GF Cotin
et al. 96, JamesPai99
29CMA Notation
- Updated capacitance node list, S
- S(S1,S2,,Ss) for s updates.
- Contact compliance matrix, C
- C -ET?E
- Capacitance matrix
- E dense?sparse row expansion
- e.g., Sk, EIk??3n?3
- ET sparse?dense row extraction
30CMA Formulae
- Solution to any BVP in terms of ?
- Direct solver with input/output sensitivity
- O(s3) C-1 construction for s switched contacts
- O(s2sn) solve for s nonzero BC and n outputs
Using Sherman-Morrison-Woodbury... v v(0)
(E(?E)) C-1ET v(0) v(0) ?(I-EET) - EET v
B C -ET?E s-by-s capacitance matrix
_
31CMA Formulae (contd)
32Capacitance Matrix Algorithm (CMA)
_
- Compute C-1
- Compute v(0)
- Compute s updated BVs
- ET v C-1ET v(0) ??3s
- Add correction to v(0) to obtain v
- v(0) (E(?E)) (C-1ET v(0))
- (Simpler when v(0) -v )
_
33Demo!
34Early ARTDEFO Examples
ARTDEFO Accurate Real Time Deformable Objects
In SIGGRAPH 99 Conference
Proceedings, ACM SIGGRAPH, 1999. (with Dinesh K.
Pai)
35Capacitance Inverse Updating
- Sequential inversion
- Use one C-1 to construct another
- Exploits temporal coherence between matrix BVP
- O(s2s?) cost for s? BC changes
- Effective updating of explicit matrix inverse
36Capacitance Inverse Updating
37Haptic Interaction