The basic laws of fluid dynamics are the Navier–Stokes momentum equations described in Chapter 1. Computational fluid dynamics (CFD) is the practice of solving those equations,* along with the mass conservation equation, by numerical algorithms. The ability of such seemingly simple governing equations to describe a wealth of complex fluid motions is quite remarkable. That remarkable capability is revealed most notably by computer simulation.
Numerical solution of Navier–Stokes equations nowadays has become almost routine. A variety of algorithms and solution methods for both incompressible and compressible flow have been developed over time and successfully implemented in a large number of computational codes (Ferziger and Peric, 2002; Fletcher, 1991; Tannehill et al., 1997). Initially, this software was primarily for research, mainly in academic institutions, government labs, and corporate research centers. But the appearance (and disappearance) of a number of general purpose, commercial CFD codes has been seen since the early 1990s. These were developed for use by nonexperts, as well as by those experienced in the practice of computation. Some of these codes have matured over time, becoming increasingly powerful as the latest techniques, methods, and analytical models were adapted to their requirements, and as high-speed computing power became increasingly available. Computational capabilities, previously mastered only in the research environment (higher-order numerical schemes, multigrid methods, advanced modeling capabilities, parallel processing) are now being used widely, through the medium of software packages. The engineer, student, or scientist no longer needs to have an intimate familiarity with computational methods to make productive use of CFD. Other technologies that have facilitated CFD include the graphic user interface, software for geometry and mesh creation, and techniques for plotting and visualization.