Book contents
- Frontmatter
- Contents
- Acknowledgements
- Introduction
- 1 The continuity equation
- 2 Density and gravity
- 3 Numerical solutions of partial differential equations
- 4 Stress and strain
- 5 The momentum equation
- 6 Viscous rheology of rocks
- 7 Numerical solutions of the momentum and continuity equations
- 8 The advection equation and marker-in-cell method
- 9 The heat conservation equation
- 10 Numerical solution of the heat conservation equation
- 11 2D thermomechanical code structure
- 12 Elasticity and plasticity
- 13 2D implementation of visco-elasto-plastic rheology
- 14 The multigrid method
- 15 Programming of 3D problems
- 16 Numerical benchmarks
- 17 Design of 2D numerical geodynamic models
- Epilogue: outlook
- Appendix: MATLAB program examples
- References
- Index
16 - Numerical benchmarks
Published online by Cambridge University Press: 05 June 2012
- Frontmatter
- Contents
- Acknowledgements
- Introduction
- 1 The continuity equation
- 2 Density and gravity
- 3 Numerical solutions of partial differential equations
- 4 Stress and strain
- 5 The momentum equation
- 6 Viscous rheology of rocks
- 7 Numerical solutions of the momentum and continuity equations
- 8 The advection equation and marker-in-cell method
- 9 The heat conservation equation
- 10 Numerical solution of the heat conservation equation
- 11 2D thermomechanical code structure
- 12 Elasticity and plasticity
- 13 2D implementation of visco-elasto-plastic rheology
- 14 The multigrid method
- 15 Programming of 3D problems
- 16 Numerical benchmarks
- 17 Design of 2D numerical geodynamic models
- Epilogue: outlook
- Appendix: MATLAB program examples
- References
- Index
Summary
Theory: Numerical benchmarks: testing of numerical codes for various problems. Examples of thermomechanical benchmarks.
Exercises: Programming of models for various numerical benchmarks.
Code benchmarking: why should we spend time on it?
Benchmarking of a numerical code means comparing the numerical solution obtained with solving the system of linear equations with (i) analytical solutions (ii) results of physical (analogue) experiments (iii) numerical results from other (well-established) codes and (iv) general physical considerations. Benchmarking of newly created numerical tools is sometimes very tedious, but an absolutely necessary stage of code development as its purpose is to test the code's robustness in a broad range of situations relevant to geodynamic modelling applications. For instance, if you plan to model with your code shear heating processes in deforming rocks – make sure that your code provides the correct temperature changes related to mechanical energy dissipation; if you model subduction – make sure that your code handles correctly large viscosity contrasts and has no notable numerical diffusion of the temperature field and composition; if you intend to model self-gravitating planetary bodies – make sure that your code computes correct gravity field etc. We should not be lazy and limit ourselves to one or two common benchmarks, such as the Rayleigh–Taylor instability and convection with constant viscosity hoping that everything else will work automatically. No, it will not! Therefore, test your code on a broad range of challenging cases (several of which are discussed below), to explore its limitations and be creative in inventing and calibrating new numerical benchmarks.
- Type
- Chapter
- Information
- Introduction to Numerical Geodynamic Modelling , pp. 241 - 268Publisher: Cambridge University PressPrint publication year: 2009