Book contents
- Frontmatter
- Contents
- Preface
- 1 Introduction
- 2 Basics
- 3 Short introduction to Linux
- 4 Interpolation
- 5 Taking derivatives
- 6 Numerical integration
- 7 Solution of nonlinear equations
- 8 Differential equations
- 9 Matrices
- 10 Random processes and Monte Carlo simulation
- References
- Appendix A The ROOT system
- Appendix B Free scientific libraries
- Appendix C FORTRAN and C++
- Appendix D Program listings
- Index
Appendix B - Free scientific libraries
Published online by Cambridge University Press: 04 August 2010
- Frontmatter
- Contents
- Preface
- 1 Introduction
- 2 Basics
- 3 Short introduction to Linux
- 4 Interpolation
- 5 Taking derivatives
- 6 Numerical integration
- 7 Solution of nonlinear equations
- 8 Differential equations
- 9 Matrices
- 10 Random processes and Monte Carlo simulation
- References
- Appendix A The ROOT system
- Appendix B Free scientific libraries
- Appendix C FORTRAN and C++
- Appendix D Program listings
- Index
Summary
In the past, the dominant computer language for scientific computing was FORTRAN. This created a wealth of libraries with well tested routines, which address almost all numerical problems covered in this book. However, using these libraries “out of the box,” without understanding their limitations and algorithms, is bound to get you into trouble one day. Because we are using C++, you will want to know how to call these FORTRAN routines from a C++ program. This will allow you to use these routines without having to rewrite them in C++.
LAPACK
LAPACK: Linear Algebra PACKage.
LAPACK is written in Fortran77 and provides routines for solving systems of simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue problems, and singular value problems. The associated matrix factorizations (LU, Cholesky, QR, SVD, Schur, generalized Schur) are also provided, as are related computations such as reordering of the Schur factorizations and estimating condition numbers. Dense and banded matrices are handled, but not general sparse matrices. In all areas, similar functionality is provided for real and complex matrices, in both single and double precision.
From the Website http://www.netlib.org/lapack/index.html, where the whole package can be downloaded. There is now also a C++ version available, called LAPACK++.
SLATEC
SLATEC is another very useful package which contains general purpose mathematical and statistical programs. You will find this at http://www.netlib.org/slatec/index.html.
Where to obtain ROOT
An important aspect about ROOT to remember is the developer's philosophy: “Release early and release often.”
- Type
- Chapter
- Information
- Introductory Computational Physics , pp. 117 - 118Publisher: Cambridge University PressPrint publication year: 2006