e4301: numerical methods for pde’smspieg/e4301/lectures/lecture01_2011.pdf · e4301: numerical...
TRANSCRIPT
![Page 1: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/1.jpg)
E4301: Numerical Methods for PDE’sTu/Thur 11:00-12:15 327 Mudd
www.ldeo.columbia.edu/~mspieg/e4301
Prof. Marc SpiegelmanDept. of Applied Physics and Applied Math
Dept of Earth and Env. Sciences
![Page 2: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/2.jpg)
This Course is Not
• An advanced course in numerical analysis (E6302)
• A programming course. You should have some fluency in a programming language of your choice (for projects) and Matlab for homework assignments.
• Going to be comprehensive: e.g. give you the latest/greatest algorithms for application X (but the project will let you explore any application area of your choice, in the language of your choice).
![Page 3: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/3.jpg)
Course Objectives
• Give both understanding and experience in numerical solution of the most commonly occurring PDEs
• Give you enough analytical tools and examples to understand how it can go badly wrong and why.
• Help you start making intelligent choices of models and methods for solving problems of your choosing
![Page 4: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/4.jpg)
Computational Science Choices
![Page 5: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/5.jpg)
• Choose a Problem
Computational Science Choices
![Page 6: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/6.jpg)
• Choose a Problem• Choose a mathematical Model
Computational Science Choices
![Page 7: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/7.jpg)
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 8: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/8.jpg)
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 9: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/9.jpg)
• Choose a Spatial/Temporal Discretization
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 10: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/10.jpg)
• Choose a Spatial/Temporal Discretization• Choose a Functional Discretization
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 11: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/11.jpg)
• Choose a Spatial/Temporal Discretization• Choose a Functional Discretization Discrete problem
Auh = fh, F(uh) = 0
2
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 12: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/12.jpg)
• Choose a Solver:
• Choose a Spatial/Temporal Discretization• Choose a Functional Discretization Discrete problem
Auh = fh, F(uh) = 0
2
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 13: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/13.jpg)
• Choose a Solver:• Choose Visualization/Analysis Tools:
• Choose a Spatial/Temporal Discretization• Choose a Functional Discretization Discrete problem
Auh = fh, F(uh) = 0
2
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 14: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/14.jpg)
• Choose a Solver:• Choose Visualization/Analysis Tools:
• Choose a Spatial/Temporal Discretization• Choose a Functional Discretization Discrete problem
Auh = fh, F(uh) = 0
2
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 15: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/15.jpg)
Choose Your Software!
• Choose a Solver:• Choose Visualization/Analysis Tools:
• Choose a Spatial/Temporal Discretization• Choose a Functional Discretization Discrete problem
Auh = fh, F(uh) = 0
2
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
![Page 16: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/16.jpg)
Choose Your Software!
• Choose a Solver:• Choose Visualization/Analysis Tools:
• Choose a Spatial/Temporal Discretization• Choose a Functional Discretization Discrete problem
Auh = fh, F(uh) = 0
2
Continuous description Lu = f
• Choose a Problem• Choose a mathematical Model• Choose your PDE’s
Computational Science Choices
• Verification: did you solve the mathematical problem as posed?• Validation: Is your model a good description of reality?
![Page 17: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/17.jpg)
n Dimension
1 Dimension
Choose your Problems/PDE’ssingle physics problems
Basic Problems:
• Di↵usion Problems (Parabolic Equations)
@u
@t
= r· Kru
• Wave Equations (Hyperbolic Equations)
@u
@t
+ c
@u
@x
= 0
@
2u
@t
2+ cr2
u = 0
• Steady State BVPs (Elliptic Equations)
r2u = ⇢
Plus Boundary and initial conditions
3
![Page 18: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/18.jpg)
n Dimension
1 Dimension
Choose your Problems/PDE’ssingle physics problems
Plus Initial and Boundary Conditions!
Basic Problems:
• Di↵usion Problems (Parabolic Equations)
@u
@t
= r· Kru
• Wave Equations (Hyperbolic Equations)
@u
@t
+ c
@u
@x
= 0
@
2u
@t
2+ cr2
u = 0
• Steady State BVPs (Elliptic Equations)
r2u = ⇢
Plus Boundary and initial conditions
3
![Page 19: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/19.jpg)
• Fluid Dynamics (Incompressible Navier Stokes
Equations)
@v
@t
+ v · rv = �rP + ⌫r2v +1
⇢
f
r· v = 0
• Elastic Wave propagation
⇢
@
2u
@t
2= µr2u + (� + µ)r(r· u)
4
Choose your Problems/PDE’smore complex vector valued problems
![Page 20: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/20.jpg)
Choose your Problems/PDE’s“Multi-Physics Problems”
• Thermal Convection (Advection/Di↵usion
of heat + Equations of motion)
@T
@t
+ v · rT = r2T
@v
@t
+ v · rv = �rP + ⌫r2v + RaT g
r· v = 0
• Magma Dynamics (my personal favorite)
D�
Dt
= (1� �)P⇠
+ �/⇢
s
�r·K
µ
rP+P⇠
= r·K
µ
⇥rP
⇤ + �⇢g⇤+�
�⇢
⇢
f
⇢
s
r·V =P⇠
rP
⇤ = r· ⌘⇣rV + rVT
⌘� ��⇢g
5
![Page 21: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/21.jpg)
Choose your Problems/PDE’s“Multi-Physics Problems”
• Thermal Convection (Advection/Di↵usion
of heat + Equations of motion)
@T
@t
+ v · rT = r2T
@v
@t
+ v · rv = �rP + ⌫r2v + RaT g
r· v = 0
• Magma Dynamics (my personal favorite)
D�
Dt
= (1� �)P⇠
+ �/⇢
s
�r·K
µ
rP+P⇠
= r·K
µ
⇥rP
⇤ + �⇢g⇤+�
�⇢
⇢
f
⇢
s
r·V =P⇠
rP
⇤ = r· ⌘⇣rV + rVT
⌘� ��⇢g
5
![Page 22: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/22.jpg)
A hybrid FEniCS/PETSc code forInfinite Prandtl Number Thermal Convection
![Page 23: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/23.jpg)
• Thermal Convection (Advection/Di↵usion
of heat + Equations of motion)
@T
@t
+ v · rT = r2T
@v
@t
+ v · rv = �rP + ⌫r2v + RaT g
r· v = 0
• Magma Dynamics (my personal favorite)
D�
Dt
= (1� �)P⇠
+ �/⇢
s
�r·K
µ
rP+P⇠
= r·K
µ
⇥rP
⇤ + �⇢g⇤+�
�⇢
⇢
f
⇢
s
r·V =P⇠
rP
⇤ = r· ⌘⇣rV + rVT
⌘� ��⇢g
5
Choose your Problems/PDE’s“Multi-Physics Problems”
![Page 24: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/24.jpg)
• Thermal Convection (Advection/Di↵usion
of heat + Equations of motion)
@T
@t
+ v · rT = r2T
@v
@t
+ v · rv = �rP + ⌫r2v + RaT g
r· v = 0
• Magma Dynamics (my personal favorite)
D�
Dt
= (1� �)P⇠
+ �/⇢
s
�r·K
µ
rP+P⇠
= r·K
µ
⇥rP
⇤ + �⇢g⇤+�
�⇢
⇢
f
⇢
s
r·V =P⇠
rP
⇤ = r· ⌘⇣rV + rVT
⌘� ��⇢g
5
Choose your Problems/PDE’s“Multi-Physics Problems”
Plus IC’s, BC’s and constitutive relationships
![Page 25: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/25.jpg)
Non-linear porosity waves(Scott & Stevenson, 1984 Nature, Spiegelman, JFM, 1993, Simpson et al 2009,2010)
Collision of 2, 2D-porosity waves. Instability of 1D waves to 3D waves
![Page 26: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/26.jpg)
Non-linear porosity waves(Scott & Stevenson, 1984 Nature, Spiegelman, JFM, 1993, Simpson et al 2009,2010)
Computational Seismology
Weak Form
Choose w,u � V s.t.�
��w · uttdV =
�
��w : ⇥ + M : �w(xs)S(t)
s = 0, st = 0 at t = 0
Note: Free stress Boundary conditions ·n = 0 areautomatically included as natural boundary conditions.
Issue is simply choice of Discrete function space V for testfunctions w and u.
Benchmarked Hybrid FEniCS/PETSc codes (Simpson & Spiegelman, 2010 J. Sci. Comp) using P2-P2 mixed elements with Semi-Lagrangian 2nd-order time stepping.
Collision of 2, 2D-porosity waves. Instability of 1D waves to 3D waves
![Page 27: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/27.jpg)
Choose your Mesh(Spatial/Temporal Discretization)
Uniform cartesian mesh
Staggered mesh(finite Volume methods)
![Page 28: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/28.jpg)
Choose your Mesh(Spatial/Temporal Discretization)
Unstructured Meshes (from FEniCS/Dolfin)
2-D Triangular3-D Tetrahedral
![Page 29: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/29.jpg)
Choose your Mesh(Spatial/Temporal Discretization)
Unstructured Hexahedral Meshes (from Cubit (Sandia)FEniCS/Dolfin)
![Page 30: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/30.jpg)
Choose your Mesh(Spatial/Temporal Discretization)
Semi-Structured
Forest of Oct-tree Mesh (K Burstedde, ICES, UT Austin)
![Page 31: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/31.jpg)
Choose your Mesh(Spatial/Temporal Discretization)
Unstructured Meshes (a toilet)
![Page 32: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/32.jpg)
Choose a functional discretization
• Truncated Taylor series (Finite Difference)
• Linear combination of N basis functions
• local compact basis (FEM, FVEM methods)
• Global basis functions (Spectral methods)
• High order local bases (Spectral Elements)
u
h(x) =NX
i=1
w
i
�i
(x)
6
![Page 33: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/33.jpg)
Transformation from Continuous to Discrete problem
• Introduces Truncation Error!
• Need to analyze both stability and convergence.
• Transforms problem to discrete problems
• Requires efficient solvers for algebraic systems of linear and non-linear equations
Auh = fh, F(uh) = 0
2
![Page 34: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/34.jpg)
Choose your solvers• Whole families of methods for large sparse
systems
• Sparse direct (x=A\b)
• Simple iterative (Jacobi, SOR)
• Advanced Iterative methods:
• Krylov methods (CG, GMRES)
• Multi-grid methods
• Combined Preconditioned methods
• Newton-Krylov for nonlinear problems
• Physics based block-preconditioners (all of the above)
![Page 35: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/35.jpg)
Good software helps making choices (and changing your mind) easier
Choose your Software!
![Page 36: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/36.jpg)
Good software helps making choices (and changing your mind) easier
Choose your Software!
• Basic Programming Languages and tools
• C,C++,Python,Fortran
• Editors, Debuggers, Version Control (hg,svn etc)
![Page 37: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/37.jpg)
Good software helps making choices (and changing your mind) easier
Choose your Software!
• Basic Programming Languages and tools
• C,C++,Python,Fortran
• Editors, Debuggers, Version Control (hg,svn etc)
• Higher level programming languages and computational environments
• Matlab, Mathematica, SciPy,Octave,Sage,R
![Page 38: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/38.jpg)
Good software helps making choices (and changing your mind) easier
Choose your Software!
• Basic Programming Languages and tools
• C,C++,Python,Fortran
• Editors, Debuggers, Version Control (hg,svn etc)
• Higher level programming languages and computational environments
• Matlab, Mathematica, SciPy,Octave,Sage,R
• Advanced computational Libraries!
• Parallel Linear Algebra: PETSc, Trilinos
• Finite Elements: FEniCS, deal.ii, etc
![Page 39: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/39.jpg)
Good software helps making choices (and changing your mind) easier
Choose your Software!
• Basic Programming Languages and tools
• C,C++,Python,Fortran
• Editors, Debuggers, Version Control (hg,svn etc)
• Higher level programming languages and computational environments
• Matlab, Mathematica, SciPy,Octave,Sage,R
• Advanced computational Libraries!
• Parallel Linear Algebra: PETSc, Trilinos
• Finite Elements: FEniCS, deal.ii, etc
• Visualization/Analysis software
• Matlab, SciPy, Paraview, Sage...
![Page 40: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/40.jpg)
Course Objective
• Give Guidance and experience to start making intelligent choices (and enough tools and breadth to change your mind)
![Page 41: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/41.jpg)
Course Logistics• All information on web-site, http://
www.ldeo.columbia.edu/~mspieg/e4301
• Link also in Courseworks
• Principal approach is lectures, problem sets (~6) and projects.
• Projects can be collaborative up to 3/group
• Fill out the User Survey so I can gauge background and interests
![Page 42: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/42.jpg)
VolcanosEarthquakes
A (complicated) exampleUnderstanding the dynamics of Subduction Zones
![Page 43: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/43.jpg)
VolcanosEarthquakes
A (complicated) exampleUnderstanding the dynamics of Subduction Zones
![Page 44: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/44.jpg)
Choices• Problem: Subduction Zones
• why? Earthquakes, Volcanos (cool!)
• PDEs: Magma Dynamics (McKenzie 84, Spiegelman 93, Katz 2007, Simpson 2010)
• Discretization:
• mesh: Unstructured Triangles
• elements: P1-P1 (velocity, Temperature), P2-P2 Porosity Pressure
• Time stepping: Semi-Lagrangian Crank Nicolson
• Solvers: Newton-Krylov with Physics-based block-preconditioned GMRES
• Software: SEPRAN, hybrid FEniCS/PETSc w/ Paraview
![Page 45: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/45.jpg)
An Example Solution
![Page 46: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/46.jpg)
Non-linear porosity waves(Scott & Stevenson, 1984 Nature, Spiegelman, JFM, 1993, Simpson et al 2009,2010)
Collision of 2, 2D-porosity waves. Instability of 1D waves to 3D waves
![Page 47: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/47.jpg)
Non-linear porosity waves(Scott & Stevenson, 1984 Nature, Spiegelman, JFM, 1993, Simpson et al 2009,2010)
Computational Seismology
Weak Form
Choose w,u � V s.t.�
��w · uttdV =
�
��w : ⇥ + M : �w(xs)S(t)
s = 0, st = 0 at t = 0
Note: Free stress Boundary conditions ·n = 0 areautomatically included as natural boundary conditions.
Issue is simply choice of Discrete function space V for testfunctions w and u.
Benchmarked Hybrid FEniCS/PETSc codes (Simpson & Spiegelman, 2010 J. Sci. Comp) using P2-P2 mixed elements with Semi-Lagrangian 2nd-order time stepping.
Collision of 2, 2D-porosity waves. Instability of 1D waves to 3D waves
![Page 48: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/48.jpg)
Comparison to Data0
200
Depth
, km
5
5
5
10
15
0 1 2 3 4 5 6 7 8 9 10 11 12 130.00 0.04 0.08
0 100 200 300 400
Distance, kmSW NE
0
200
100 100
0 100 200 300 400
Distance, kmSW NE
Vp/Vs1000/Qs
low permeability high permeability
.
![Page 49: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/49.jpg)
Comparison to Data0
200
Depth
, km
5
5
5
10
15
0 1 2 3 4 5 6 7 8 9 10 11 12 130.00 0.04 0.08
0 100 200 300 400
Distance, kmSW NE
0
200
100 100
0 100 200 300 400
Distance, kmSW NE
Vp/Vs1000/Qs
low permeability high permeability
.
132.9 ± 4.1 km(Syracuse & Abers)
![Page 50: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/50.jpg)
The Future? GuMBi
• A prototype Model Building interface
• encapsulates the full set of choices in a single options file
• Built on existing Libraries: FEniCS, PETSc, spud
• Allows complete model building for custom compiled applications through code generation.
• FEM for General, coupled PDE’s on unstructured meshes (from FEniCS)
• Physics based, flexible block-preconditioners ( for non-linear multi-physics problems (built on PETSc SNES)
• Self documenting schema for options files (from spud)
![Page 51: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/51.jpg)
The Future? GuMBi
![Page 52: E4301: Numerical Methods for PDE’smspieg/e4301/Lectures/Lecture01_2011.pdf · E4301: Numerical Methods for PDE’s ... • An advanced course in numerical analysis (E6302) ... •](https://reader031.vdocuments.site/reader031/viewer/2022022003/5aa2b1c17f8b9ada698d3d14/html5/thumbnails/52.jpg)
Course Objectives
• Basic tools and insights to understand and use these and other computational tools
• Some real practical experience in solving a problem of your own.
By the end of this course, you should have: