Numerical Solution of Hyperbolic Partial Differential Equations, Cambridge U Press September 2009(Local users only)
John Trangenstein : Math 226 Numerical Solution of Hyperbolic Partial Differential Equations
To get online help with commands and utilities, here are some useful
sources:
- xman. Type "xman&". When the window comes up, click on
"Manual page" to see a list of commands, organized by type.
To find a particular command, pull down on "Options" to "Search."
- Gnu documentation. Type "emacs&". When the window comes up, pull
down on "Help" to "Info," then scroll to your favorite topic
(e.g., "Make"). Use the middle mouse button to scroll and click.
You will have to create a .emacs file in your home directory to
make this work properly (you can copy ~johnt/.emacs):
- pushd /usr/local/egcs/info
- info
- mGdb (to see gdb documentation)
To see g77 documentation, replace "mGdb" with "mg77".
To see egcs documentation, replace "mGdb" with "megcs".
- Linux online books.
- Netlib Home Directory
News flashes:
- To get a math department computer account, go to
Departmental Computing
- To get copies of the deal library source code:
- edit your ~/.cshrc file and add the following
lines at the end:
setenv CVSREAD
setenv CVSROOT /home/faculty/johnt/cvs
- make a directory for this course, and cd to that
directory.
- type
cvs get memdebug graphics gui gnu parabolic
cvs get deal
cp ~johnt/math226/GNUmakefile .
make
- to run the first heat equation solver, type
1d/heat input
This will open a window on your screen (hit ENTER to remove it)
and write some .xpm files in your directory.
- to make a movie of the run, type
convert *.xpm movie.gif
animate movie.gif
- Your movie might look like the following.
Warning: the .gif files can be pretty big. You will have to
watch your disk usage.
- you can save the graphics in a window by typing
eps4paper results
This will create the file results.eps, which you
can include in a LaTex file and massage easily.
If you want to print the graphics by itself, try
convert results.eps results.ps
lpr results.ps
- you can play with the input parameters by editing the file
named input. In particular, you might play around with
values for ncells and cfl.
- To enable your sessions to dump cores, add
unlimit coredumpsize
to your .cshrc file.
- To see your default printer and its location, type
lpq
- Some useful printers in the math department are
- lw0 in room 136
- lw3 in room 250
- To print a window created by the class program, run xv:
- click in xv 3.10a(PNG)... with the right mouse button
- click on Grab in xv controls with the left mouse button
- change the delay to 1 sec in the xv grab window
- click on Grab in xv grab with the left mouse button
- after the beep, click in the linear advection window
with the left mouse button
- click on Print in xv controls with the left mouse button
- click on B/W in xv prompt with the left mouse button
- click on OK in xv postscript with the left mouse button
- You will have to work a bit to get GNU documentation to work
properly. See the online help discussion below.
How to turn in computer programs:
- Make a directory called ch2 for the homework in chapter 2
and put your code there. Use a different directory for each chapter.
- chmod a+rx parabolic
- chmod a+r all source code in ch2.
- chmod a+x all executables in ch2.
- Put all written assignments on paper and turn them in.
- Include a printed copy of your program, the name of the
executable, and a sample output.
- Put all computational output on a web page and tell me its
location.
- Send your program by email to
johnt@math.duke.edu
- It would be best if you put only your homework in ch2;
put test code elsewhere.
Course Synopsis:
- Scalar Hyperbolic Conservation Laws
- Linear Advection
- Conservation Law on an Unbounded Domain 8/24
- Integral Form of the Conservation Law 8/24
- Advection-Diffusion Equation 8/24
- Advection Equation on a Half-Line
- Advection Equation on a Finite Interval
- Linear Finite Difference Methods
- Basics of Discretization 8/26
- Explicit upwind differences 8/26
- Explicit Downwind Differences 8/28
- Implicit Downwind Differences 8/28
- Implicit Upwind Differences 8/28
- Explicit Centered Differences 8/28
- Modified Equation Analysis
- Explicit Upwind Differences 8/28
- Explicit Downwind Differences 8/28
- Explicit Centered Differences 8/28
- Consistency, Stability and Convergence
- Fourier Analysis
- Constant Coefficient Equations and Waves 8/28
- Dimensionless Groups 8/28
- Finite Differences and Advection 9/2
- Fourier Analysis of Individual Schemes 9/2
- L2 Stability for Linear Schemes
- Lax Equivalence Theorem 9/4
- Measuring Accuracy and Efficiency 9/4
- Nonlinear Scalar Laws
- Nonlinear Hyperbolic Conservation Laws
- Nonlinear Equations on Unbounded Domains 9/7
- Characteristics 9/7
- Development of Singularities 9/7
- Propagation of Discontinuities 9/7
- Traveling Wave Profiles 9/7
- Entropy Functions 9/7
- Oleinik Chord Condition 9/9
- Riemann Problems 9/9
- Galilean Coordinate Transformations 9/9
- Case Studies
- Traffic Flow
- Miscible Displacement
- Buckley-Leverett Model
- First-Order Finite Difference Methods
- Explicit Upwind Differences 9/9
- Lax-Friedrichs Scheme 9/9
- Timestep Selection
- Godunov's Scheme
- Comparison of Lax-Friedrichs, Godunov and Rusanov
- Nonreflecting Boundary Conditions
- Lax-Wendroff Process
- Other Second-Order Schemes
- Nonlinear Hyperbolic Systems
- Theory of Nonlinear Hyperbolic Systems
- Characteristics 9/14
- Propagating Discontinuity Surfaces 9/14
- Frames of Reference 9/14
- Change of Frame of Reference for Propagating Discontinuities 9/14
- Lax Admissibility Condition 9/16
- Hugoniot Loci 9/16
- Centered Rarefactions 9/16
- Riemann Problems 9/16
- Gas Dynamics
- Eulerian Conservation of Mass
- Lagrangian Conservation of Mass
- Lagrangian Conservation of Momentum
- Transport Theorem
- Eulerian Conservation of Momentum
- Eulerian Conservation of Energy
- Lagrangian Conservation of Energy
- Summary of the Conservation Laws
- Jump Conditions
- Thermodynamics
- Jump Conditions for Polytropic Gas
- Characteristic Analysis
- Entropy Function
- Centered Rarefaction Curves
- Riemann Problem
- Upwind Schemes for Gas Dynamics
- Lax-Friedrichs 9/18
- Rusanov 9/18
- Godunov 9/18
- Finite Deformation in Elastic Solids
- Eulerian Equations of Motion
- Lagrangian Equations of Motion
- Constitutive Laws
- Conservation Form of the Equations of Motion
- Jump Conditions for Isothermal Solids
- Characteristic Analysis
- Equivalence of the Lagrangian and Eulerian Formulations
- Cristescu's Vibrating String
- Plasticity
- Multi-Component Multi-Phase Flow in Porous Media
- Polymer Model
- Three-Phase Buckley-Leverett Flow
- Numerical Methods for Scalar Laws
- Norms and Convergence
- Entropy Conditions and Difference Approximations
- Nonlinear Stability
- Propagation of Numerical Discontinuities
- Montonicity-Preserving Schemes
- Discrete Entropy Conditions
- Non-Reflecting BOundary Conditions
- E-Schemes
- Large-Timestep Version of Godunov's Method
- Flux Corrected Transport
- Total Variation Diminishing Schemes
- Sufficient Conditions
- Higher-Order Schemes for Linear Advection
- Nonlinear Conservation Laws
- TVD Scheme for Conservation Laws
- Slope-Limter Schemes
- Piecewise-Parabolic Method
- Essentially Non-Oscillatory Schemes
- Numerical Methods for Hyperbolic Systems
- Linear Systems
- Godunov's Method
- Rusanov's Method
- Lax-Friedrichs Scheme
- Lax-Wendroff Method
- Beam-Warming Method
- Leap-Frog scheme
- First-Order Schemes for Nonlinear Systems
- Lax-Friedrichs Method
- Rusanov's Method
- Godunov's Method
- Approximate Riemann Solvers
- Artificial Viscosity
- Higher-Order Schemes for Nonlinear Systems
- Lax-Wendroff Method
- MUSCL
- Flux-Limiter Methods
- TVD Methods
- ENO
- Hyperbolic Conservation Laws in Multiple Dimensions
- Curvilinear Coordinates
- Numerical Methods in Two Dimension
- Operator Splitting
- Donor Cell Methods
- Wave Propagation
- Multidimensional ENO
- Numerical Methods in Two Dimension
- Operator Splitting
- Donor Cell Upwind
- Wave Propagation
- Adaptive Mesh Refinement
- Localized Phenomena
- Basic Assumptions
- Outline of the AMR Algorithm
- Timestep Selection
- Advancing the Patches
- Regridding
- Refluxing
- Upscaling
- Object-Oriented Programming
- Programming Languages
- AMR Classes
- ScalarLaw Example
Return to: John A. Trangenstein *