To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
Most of the simple methods described in Part III have almost no potential for practical applications, due mainly to stability problems. This fourth part of the book concerns methods at the next higher level of sophistication, here referred to as the first generation of numerical methods for computational gasdynamics. However sophisticated they may be in other ways, by definition, first-generation methods do not use flux averaging, slope averaging, or other forms of solution sensitivity, except possibly upwinding. As a result, first-generation methods experience a sharp trade-off between accuracy and stability: They can model shocks well but then experience low accuracy in smooth regions; or they can model smooth regions well but then experience poor stability near shocks in the form of spurious oscillations and overshoots. The next part of the book, Part V, describes solution-sensitive second- and third-generation numerical methods, which reduce this trade-off by doing one thing in smooth regions and another at shocks. First-generation methods prove useful in undemanding applications and, more importantly, are the basic building blocks of second- and third-generation methods.
Chapter 17 describes numerical methods for scalar conservation laws. Chapter 18 extends those methods to the Euler equations using flux vector splitting and Riemann solvers. Chapter 19 concerns solid and far-field boundary treatments, a crucial topic avoided until now by using periodic boundaries as in Chapter 15 or infinite boundaries as in Chapter 16.
Fluid dynamics concerns fluid motions. No single book, or even shelf of books, could hope to describe the full range of known fluid dynamics. By tradition, introductory books mainly concern three simplified categories of flow:
Gasdynamics – compressible frictionless flows.
Viscous flows, boundary layers, and turbulence – incompressible frictional flows.
Books with generic titles like fluid dynamics, fluid mechanics, or aerodynamics generally survey all three basic categories of flow. Other books concern just gasdynamics or just viscous flows. These books sacrifice breadth for depth. Given the huge differences between compressible inviscid flows and viscous incompressible flows, single-topic treatments make sense for many readers, who need to know only one or the other.
Computational fluids dynamics (CFD) concerns computer simulations of fluid flows. Each type of fluid flow listed above has inspired a myriad of competing numerical methods, each with its own pros and cons, each demanding a good understanding of both traditional fluid dynamics and numerical analysis. As a result, the size of computational fluid dynamics far exceeds that of traditional fluid dynamics. At the present time, most CFD books survey numerical methods for all three of the basic flow categories. While such surveys work well for traditional fluid dynamics, the larger size of CFD requires more compromises and trade-offs. With so much to cover, even a two-volume survey can only describe the basic principles and techniques common to all three categories of flows, plus a limited and sometimes arbitrary sampling of the principles and techniques specific to each category of flow.
This chapter concerns boundary treatments. Before now, the book has avoided boundary treatments by using either infinite boundaries or periodic boundaries, but one cannot remain innocent forever. Boundary conditions and governing equations have equal importance, despite the fact that most sources, including this one, spend most of their time focused on the governing equations. For the same governing equations, boundary conditions distinguish flow over a plane from flow over a train from flow over a space shuttle from any other sort of flow. In practice, numerical boundary treatments often consume a large percentage of computational gasdynamics codes, both in terms of the number of lines of code and in terms of the development effort.
This chapter concerns two types of boundaries – solid and far-field boundaries. Solid boundaries are also known as surface, wall, rigid, or impermeable boundaries; naturally enough, solid boundaries occur at the surfaces of solid objects. This chapter considers only stationary solid boundaries. Far-field boundaries are also known as open, artificial, permeable, or remote boundaries. Far-field boundaries limit the computational domain to a reasonable finite size; the true boundaries may be extremely far away, or even infinitely far away, at least conceptually. In general, when the physical domain is very large or infinite, then the farther away the numerical far-field boundary is, the more accurate but also the more costly the numerical approximation will be. Far-field boundaries are divided into inflow boundaries, where fluid enters the computational domain, and outflow boundaries, where fluid exits the computational domain. In multidimensions, far-field boundaries may also be streamlines, across which fluid neither exits nor enters.
The last two chapters dramatically demonstrate the folly in attempting to represent a discontinuous function by a single polynomial. In the best case, with the entire true function available, the single polynomial representation will suffer from narrow width but large-amplitude Gibbs oscillations near the jump discontinuities, at least when minimizing the error in ordinary norms, as seen in Chapter 7. In more typical cases, with only limited information about the true function available or, more specifically, with only samples of the function available, the single polynomial will suffer from the Runge phenomenon, a relatively severe form of spurious oscillation that can increase rapidly as the number of samples increases, as seen in Chapter 8.
To overcome the problems associated with single-polynomial reconstructions, this chapter will consider piecewise-polynomial reconstructions, which were introduced earlier in Section 6.3, especially in Example 6.8. In piecewise-polynomial reconstructions, instead of representing the entire function by a single polynomial, we represent different local regions or cells by different polynomials. Figure 9.1 illustrates a typical piecewise-polynomial representation. By using separate and independent polynomials for each cell, only the cells containing jump discontinuities need suffer from large spurious oscillations, rather than the entire representation. Furthermore, piecewise-polynomial representations naturally allow jump discontinuities: the simplest reconstructions allow jump discontinuities only at cell edges, whereas the subcell resolution techniques discussed in Section 9.4 allow jump discontinuities to occur anywhere, including the insides of cells. Of course, piecewise-polynomial reconstructions cost more to build and evaluate and require more storage space than a single polynomial reconstruction; however, for discontinuous functions, the accuracy improvements easily justify the additional costs.
Logically, all things are created by a combination of simpler, less capable components.
Dogbert in Dilbert by Scott Adams
This part of the book concerns solution-sensitive methods. After possibly accounting for the wind direction, the first-generation methods studied so far mindlessly treat every part of the solution the same, regardless of how the solution behaves. The solution-sensitive methods studied in Part V combine a range of first-generation methods, varying the exact blend from place to place based on solution features such as shocks. For example, a solution-sensitive method might use Roe's first-order upwind method at shocks and the Lax–Wendroff method in smooth regions. Most solution-sensitive methods decide what to do based on solution gradients or flux gradients; large gradients indicate shocks or other features with the potential to cause trouble in the polynomial interpolations underlying most numerical methods.
In the literature, solution-sensitive methods are commonly called high-resolution or TVD methods. Less common terms include hybrid, adaptive, self-adjusting, averaged, reconstructed, essentially nonosdilatory, combination, corrected, and limited methods. No one book could describe the huge number of solution-sensitive methods suggested in the research literature. Part V includes methods based partly on historical significance and influence, partly on how well they exemplify general principles and notations, partly on current popularity, and partly on the author's personal tastes.
Many solution-sensitive methods explicitly enforce nonlinear stability conditions, such as the upwind range condition or the TVD condition. Stability conditions reduce spurious oscillations near shocks, but they also typically impose clipping errors at solution extrema. Although combination methods have trade-offs, these are far less severe than for the fixed methods studied in Part IV.
This chapter concerns numerical methods for the Euler equations. Rather than starting from scratch, this chapter mainly converts the numerical methods for scalar conservation laws seen in the last chapter into numerical methods for the Euler equations. The approaches described here can be divided into two categories – flux approaches and wave approaches. Wave approaches can be further subdivided into two categories – flux vector splitting approaches and reconstruction–evolution approaches. Whereas flux approaches consider only fluxes, wave approaches model both fluxes and waves, and especially the interactions between various families of waves, using either flux vector splitting or Riemann solvers, which makes them more physical and accurate but also more expensive and complicated. Before continuing, the reader may wish to review pertinent material from previous chapters. In particular, in preparation for flux vector splitting, discussed in Section 18.2, the reader should review the introduction to flux splitting and wave speed splitting found in Sections 13.4 and 13.5, respectively. Furthermore, in preparation for reconstruction–evolution methods, which use real or approximate Riemann solvers, the reader should review Chapter 5 and the introduction to reconstruction–evolution methods found in Section 13.6. And, of course, the reader should not even consider reading this chapter until carefully ingesting the last chapter.
This chapter converts all of the numerical methods for scalar conservation laws seen in the last chapter, except for Fromm's method, into numerical methods for the vector Euler equations in one if not several ways. For most numerical methods, the vector versions retain most of the properties of the scalar versions.
This part of the book concerns gasdynamics. One might think that the term “gasdynamics” could refer to any sort of flow of any sort of gas. However, by tradition, unless specifically stated otherwise, the terms gasdynamics or compressible flow refers to a relatively simple type of gas flow, affected only by pressure and flux, neither too dense nor too rare. A more precise definition appears in Chapter 2.
The treatment of gasdynamics found in Part I varies from the traditional gasdynamics treatment in several ways, due mainly to the demands of the numerical approximations studied later in this book, as opposed to the demands of the simple hand calculations studied in traditional gasdynamics texts. For example, traditional gasdynamics texts consider linearized potential flow approximations such as the the Prandtl–Glauert equation; while many people still use linear approximations, modern computing power has made them increasingly unnecessary. This book will not discuss linearized approximations. For another example, traditional gasdynamics texts focus mainly on steady two-dimensional flows, whereas this book focuses mainly on unsteady one-dimensional flows. These two model problems are equally difficult: Both model problems involve the same number of dependent and independent variables; and many solutions to one problem have an analogous solution in the other problem such as, for example, the steady two-dimensional expansion fan versus the unsteady one-dimensional expansion fan. The steady two-dimensional model problem has one major positive aspect: Many gas flows of practical interest are approximately steady and two dimensional. Unfortunately, the steady two-dimensional model problem has at least two critical cons.
The governing equations of gasdynamics are expressions of conservation and the second law of thermodynamics. Conservation requires that three fundamental quantities – mass, momentum, and energy – are neither created nor destroyed but are only redistributed or, excepting mass, converted from one form to another. For example, if momentum increases in one place, either momentum or an equivalent amount of energy must decrease someplace else. Conservation of momentum and energy is extremely complicated for a general physical system owing to the variety of mechanisms that can affect momentum and energy, such as viscosity, chemical reactions, gravity, electromagnetic forces, and so forth. To keep things simple, traditional gasdynamics as discussed in this book concerns inviscid flows of perfect gases, optionally free of forces except for pressure, which eliminates all influences on momentum and energy except for redistribution and pressure.
A companion principle to conservation, known as the second law of thermodynamics, requires that a fourth fundamental quantity called entropy should never decrease. The second law of thermodynamics restricts the redistributions and conversions of conserved quantities otherwise allowed by the conservation laws. As another supplement to conservation, the equations of state specify the nature and type of gas. Three conservation laws, two equations of state, and the second law of thermodynamics collectively constitute the Euler equations when expressed in a fixed coordinate system, or the Lagrange equations when expressed in a coordinate system that moves with the flow. This book mainly concerns the Euler equations, but see Problem 2.7 and Section 23.1 for an introduction to the Lagrange equations.
This chapter concerns reconstruction–evolution methods, also called solution-averaged or solution-reconstructed methods. Before continuing, you may wish to review the earlier discussions of reconstruction–evolution methods found in Sections 13.6, 17.3, and 18.3. The reconstruction–evolution methods seen in those earlier sections were all first-order accurate. This chapter concerns second- and higher-order accurate methods. In some cases, solution-averaged methods differ from flux-averaged methods in relatively minor ways. For example, the solution-averaged method might use an average like f((x + y)/2), whereas the flux-averaged method might use an average like (f(x) + (y))/2. However, in general, solution-averaged methods use elaborate physical modeling of a sort not possible in flux-averaged methods, making them far more complex.
This chapter describes five reconstruction–evolution methods. Section 23.1 concerns Van Leer's reconstruction–evolution method, better known as MUSCL. Section 23.2, concerns the Colella–Woodward reconstruction–evolution method, better known as PPM. Section 23.3 describes two reconstruction–evolution methods devised by Anderson, Thomas, and Van Leer, also often called MUSCL methods, that strongly resemble the flux-limited methods devised by Chakravarthy and Osher seen in Section 20.3. Section 23.4 describes the Harten–Osher reconstruction–evolution method, better known as the UNO method. Finally, Section 23.5 describes the Harten–Engquist–Osher–Chakravarthy reconstruction–evolution methods, better known as ENO methods. Do not confuse the finite-volume ENO methods seen in Section 23.5 with the finite-difference ENO methods seen in Section 21.4. The two classes of methods have basically one thing in common: both use ENO reconstruction, as described in Chapter 9, one to reconstruct the solution and the other to reconstruct the flux.
This chapter concerns orthogonal functions. A professor recently translated some of Elvis Presley's hit songs into Latin. The love songs were easy, but the professor had trouble with Elvis' rock hits – there are no Latin words for “blue suede shoes” or “hound dog.” Computers have a similar difficulty when it comes to functions. As seen in the last chapter, computers represent functions by finite sequences. Unfortunately, most finite sequences cannot adequately express most discontinuous functions. For example, whereas an infinite-order polynomial can represent any piecewise-smooth function, even the best finite-order polynomial approximations exhibit substantial oscillations in the presence of jump discontinuities. Of course, the best polynomial depends on how you define “best.” For example, the “best” polynomial could be the polynomial with the least error in the 1-norm, the 2-norm, the ∞-norm, or at some specified critical point. However, sometimes there are no good polynomials regardless of your criteria. This is quite often the case with discontinuous functions. Even completely smooth functions can suffer, as seen in the following example.
Example 7.1 Find the best quadratic approximation for a function with one maximum and one minimum.
Solution As seen in Figure 7.1, the error is enormous no matter which quadratic is chosen. The quadratic can model the maximum or the minimum but not both. There is simply no way to make a one-hump camel look like a two-hump camel. In this case, the choice of quadratic is largely arbitrary, and thus it is impossible to tell much about the original function by examining the chosen quadratic representation.
Welcome. This book concerns computational gasdynamics, a part of the broader field of computational fluid dynamics (CFD). More specifically, put in precise technical terms, this book concerns numerical methods for simulating high-speed flows of inviscid perfect gases, especially flows containing shocks. Computational gasdynamics falls across a number of traditional disciplines including aerospace engineering, mechanical engineering, chemical engineering, applied mathematics, numerical analysis, and physics. The book should appeal to practitioners of any of these disciplines, although it does not claim to have the theoretical rigor expected of mathematics texts nor the drive towards immediate full-scale applications found in many engineering books. This book presumes an understanding of calculus, differential equations, numerical analysis, fluid dynamics, and physics and a level of sophistication of the sort found in most seniors and first-year graduate students in science, mathematics, or engineering.
I have taught courses based on the material in this book numerous times in the past five years at the University of Colorado at Boulder. These courses have variously included juniors, seniors, graduate students, professors, post-docs, and practicing engineers in a variety of different disciplines. The feedback from my students has critically guided the development and evolution of the book, taking it from a handwritten collection of notes to the present form. Researchers in the field have also reviewed many parts of the book, although the needs of newcomers have always determined the final presentation. The book contains about a semester-and-a-half worth of material. To trim the material to a one-semester length, less advanced courses should use Part III selectively and omit Part V, while advanced courses should only sample Parts I and II.