Skip to main content Accessibility help
×
Hostname: page-component-77c89778f8-n9wrp Total loading time: 0 Render date: 2024-07-17T17:25:55.440Z Has data issue: false hasContentIssue false

5 - Code verification

from Part II - Code verification

Published online by Cambridge University Press:  05 March 2013

Christopher J. Roy
Affiliation:
Virginia Polytechnic Institute and State University
Get access

Summary

In scientific computing, the goal of code verification is to ensure that the code is a faithful representation of the underlying mathematical model. This mathematical model generally takes the form of partial differential or integral equations along with associated initial condition, boundary conditions, and auxiliary relationships. Code verification thus addresses both the correctness of the chosen numerical algorithm and the correctness of the instantiation of that algorithm into written source code, i.e., ensuring there are no coding mistakes or “bugs.”

A computer program, referred to here simply as a code, is a collection of instructions for a computer written in a programming language. As discussed in Chapter 4, in the software engineering community code verification is called software verification and is comprised of software tests which ensure that the software meets the stated requirements. When conducting system-level testing of non-scientific software, in many cases it is possible to exactly determine the correct code output for a set of given code inputs. However, in scientific computing, the code output depends on the numerical algorithm, the spatial mesh, the time step, the iterative tolerance, and the number of digits of precision used in the computations. Due to these factors, it is not possible to know the correct code output (i.e., numerical solution) a priori. The developer of scientific computing software is thus faced with the difficult challenge of determining appropriate system-level software tests.

Type
Chapter
Information
Publisher: Cambridge University Press
Print publication year: 2010

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Abanto, J., Pelletier, D., Garon, A., Trepanier, J-Y., and Reggio, M. (2005). Verication of some Commercial CFD Codes on Atypical CFD Problems, AIAA Paper 2005–682.
Banks, J. W., Aslam, T., and Rider, W. J. (2008). On sub-linear convergence for linearly degenerate waves in capturing schemes, Journal of Computational Physics. 227, 6985–7002.CrossRefGoogle Scholar
Burg, C. and Murali, V. (2004). Efficient Code Verification Using the Residual Formulation of the Method of Manufactured Solutions, AIAA Paper 2004–2628.
Carpenter, M. H. and Casper, J. H. (1999). Accuracy of shock capturing in two spatial dimensions, AIAA Journal. 37(9), 1072–1079.CrossRefGoogle Scholar
Crank, J. and Nicolson, P. A. (1947). Practical method for numerical evaluation of solutions of partial differential equations of the heat-conduction type, Proceedings of the Cambridge Philosophical Society. 43, 50–67.CrossRefGoogle Scholar
Despres, B. (2004). Lax theorem and finite volume schemes, Mathematics of Computation. 73(247), 1203–1234.CrossRefGoogle Scholar
Diskin, B. and Thomas, J. L. (2007). Accuracy Analysis for Mixed-Element Finite Volume Discretization Schemes, Technical Report TR 2007–8, Hampton, VA, National Institute of Aerospace.
Engquist, B. and Sjogreen, B. (1998). The convergence rate of finite difference schemes in the presence of shocks, SIAM Journal of Numerical Analysis. 35(6), 2464–2485.CrossRefGoogle Scholar
Ferziger, J. H. and Peric, M. (1996). Further discussion of numerical errors in CFD, International Journal for Numerical Methods in Fluids. 23(12), 1263–1274.3.0.CO;2-V>CrossRefGoogle Scholar
Ferziger, J. H. and Peric, M. (2002). Computational Methods for Fluid Dynamics, 3rd edn., Berlin, Springer-Verlag.CrossRefGoogle Scholar
Grinstein, F. F., Margolin, L. G., and Rider, W. J. (2007). Implicit Large Eddy Simulation: Computing Turbulent Fluid Dynamics, Cambridge, UK, Cambridge University Press.CrossRefGoogle Scholar
Hebert, S. and Luke, E. A. (2005). Honey, I Shrunk the Grids! A New Approach to CFD Verification Studies, AIAA Paper 2005–685.
Hirsch, C. (2007). Numerical Computation of Internal and External Flows (Vol. 1), 2nd edn., Burlington, MA, Elsevier.Google Scholar
Kamm, J. R., Rider, W. J., and Brock, J. S. (2003). Combined Space and Time Convergence Analyses of a Compressible Flow Algorithm, AIAA Paper 2003–4241.
Knupp, P. M. (2003). Algebraic mesh quality metrics for unstructured initial meshes, Finite Elements in Analysis and Design. 39(3), 217–241.CrossRefGoogle Scholar
Knupp, P. M. (2009). Private communication, March 9, 2009.
Knupp, P. M. and Salari, K. (2003). Verification of Computer Codes in Computational Science and Engineering, Rosen, K. H. (ed.), Boca Raton, FL, Chapman and Hall/CRC.Google Scholar
Knupp, P., Ober, C., and Bond, R. (2007). Measuring progress in order-verification within software development projects, Engineering with Computers. 23, 271–282.CrossRefGoogle Scholar
Mastin, C. W. (1999). Truncation Error on Structured Grids, in Handbook of Grid Generation, Thompson, J. F., Soni, B. K., and Weatherill, N. P., (eds.), Boca Raton, CRC Press.Google Scholar
Ober, C. C. (2004). Private communication, August 19, 2004.
Oberkampf, W. L. and Trucano, T. G. (2008). Verification and validation benchmarks, Nuclear Engineering and Design. 238(3), 716–743.CrossRefGoogle Scholar
Panton, R. L. (2005). Incompressible Flow, 3rd edn., Hoboken, NJ, John Wiley and Sons.
Patankar, S. V. (1980). Numerical Heat Transfer and Fluid Flow, New York, Hemisphere Publishing Corp.Google Scholar
Potter, D. L., Blottner, F. G., Black, A. R., Roy, C. J., and Bainbridge, B. L. (2005). Visualization of Instrumental Verification Information Details (VIVID): Code Development, Description, and Usage, SAND2005–1485, Albuquerque, NM, Sandia National Laboratories.
Richards, S. A. (1997). Completed Richardson extrapolation in space and time, Communications in Numerical Methods in Engineering. 13, 573–582.3.0.CO;2-6>CrossRefGoogle Scholar
Richtmyer, R. D. and Morton, K. W. (1967). Difference Methods for Initial-value Problems, 2nd edn., New York, John Wiley and Sons.Google Scholar
Rider, W. J. (2009). Private communication, March 27, 2009.
Roache, P. J. (1998). Verification and Validation in Computational Science and Engineering, Albuquerque, NM, Hermosa Publishers.Google Scholar
Roy, C. J. (2003). Grid convergence error analysis for mixed-order numerical schemes, AIAA Journal. 41(4), 595–604.CrossRefGoogle Scholar
Roy, C. J. (2005). Review of code and solution verification procedures for computational simulation, Journal of Computational Physics. 205(1), 131–156.CrossRefGoogle Scholar
Roy, C. J. (2009). Strategies for Driving Mesh Adaptation in CFD, AIAA Paper 2009–1302.
Roy, C. J., Tendean, E., Veluri, S. P., Rifki, R., Luke, E. A., and Hebert, S. (2007). Verification of RANS Turbulence Models in Loci-CHEM using the Method of Manufactured Solutions, AIAA Paper 2007–4203.
Tannehill, J. C., Anderson, D. A., and Pletcher, R. H. (1997). Computational Fluid Mechanics and Heat Transfer, 2nd edn., Philadelphia, PA, Taylor and Francis.Google Scholar
Thomas, J. L., Diskin, B., and Rumsey, C. L. (2008). Toward verification of unstructured-grid solvers, AIAA Journal. 46(12), 3070–3079.CrossRefGoogle Scholar
Thompson, J. F., Warsi, Z. U. A., and Mastin, C. W. (1985). Numerical Grid Generation: Foundations and Applications, New York, Elsevier. (www.erc.msstate.edu/publications/gridbook).
Trucano, T. G., Pilch, M. M., and Oberkampf, W. L. (2003). On the Role of Code Comparisons in Verification and Validation, SAND 2003–2752, Albuquerque, NM, Sandia National Laboratories.
Veluri, S., Roy, C. J., Hebert, S., and Luke, E. A. (2008). Verification of the Loci-CHEM CFD Code Using the Method of Manufactured Solutions, AIAA Paper 2008–661.

Save book to Kindle

To save this book to your Kindle, first ensure coreplatform@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.

Find out more about the Kindle Personal Document Service.

Available formats
×

Save book to Dropbox

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 Dropbox.

Available formats
×

Save book to Google Drive

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 Google Drive.

Available formats
×