Tbilisi Mathematical Journal

Numerical methods with Sage

Lauri Ruotsalainen and Matti Vuorinen

Full-text: Open access


Numpy and SciPy are program libraries for the Python scripting language, which apply to a large spectrum of numerical and scientific computing tasks. The Sage project provides a multiplatform software environment which enables one to use, in a unified way, a large number of software components, including NumPy and SciPy, and which has Python as its command language. We review several examples, typical for scientific computation courses, and their solution using these tools in the Sage environment.

Article information

Tbilisi Math. J., Volume 5, Issue 2 (2012), 101-119.

First available in Project Euclid: 12 June 2018

Permanent link to this document

Zentralblatt MATH identifier

Primary: 65-01: Instructional exposition (textbooks, tutorial papers, etc.)

Numerical analysis teaching


Ruotsalainen, Lauri; Vuorinen, Matti. Numerical methods with Sage. Tbilisi Math. J. 5 (2012), no. 2, 101--119. https://projecteuclid.org/euclid.tbilisi/1528768905

Export citation


  • M. S. Andersen, J. Dahl and L. Vandenberghe, CVXOPT: A Python package for convex optimization, http://abel.ee.ucla.edu/cvxopt.
  • R. Bradshaw, S. Behnel, D. S. Seljebotn, G. Ewing, et al., The Cython compiler, http://cython.org.
  • R. L. Burden and J. D. Faires, Numerical analysis, Fifth ed. PWS Publ Co, 1993, ISBN 0-534-93219-3.
  • S. D. Conte and C. de Boor, Elementary numerical analysis: An algorithmic approach. Third ed. McGraw-Hill Book Co., New York-Toronto, Ont.-London 1965 x+278 pp.
  • W. Decker, G.-M. Greuel, G. Pfister and H. Sch önemann, Singular – A computer algebra system for polynomial computations, http://www.singular.uni-kl.de.
  • Dan Drake et al., The SageTeX Package, 2009, ftp://tug.ctan.org/ \hfill pub/tex-archive/macros/latex/contrib/sagetex/ sagetexpackage.pdf.
  • GAP – Groups, Algorithms, and Programming, The GAP Group, http://www.gap-system.org.
  • J. Grout, Numerical Analysis, Speech presented at Sage Education Days 3, The University of Washington, Seattle, http://wiki.sagemath.org/education3.
  • M. T. Heath, Scientific computing: An Introductory Survey. Second ed. McGrawHill 2002, ISBN 0-07-112229-X.
  • P. Henrici, Elements of numerical analysis. John Wiley & Sons, Inc., New York-London-Sydney 1964 xv+328 pp.
  • Sage Reference v5.4: History and License, The Sage Development Team, 2012, http://www.sagemath.org/doc/reference/history_and_license.html.
  • J. D. Hunter, Matplotlib: A 2D Graphics Environment. Computing in Science & Engineering, Vol. 9, No. 3. (2007), pp. 90-95, doi:10.1109/MCSE.2007.55.
  • Jmol: an open-source Java viewer for chemical structures in 3D, http://www.jmol.org.
  • E. Jones, T. Oliphant, P. Peterson, et al.: SciPy: Open source scientific tools for Python, http://www.scipy.org.
  • J. Kiusalaas Numerical methods in engineering with Python. Third edition. Cambridge University Press, New York, 2013. ISBN-10: 1107033853 | ISBN-13: 978-1107033856.
  • H. P. Langtangen, A Primer on Scientific Programming With Python, Springer, 2009, ISBN: 3642024742, 9783642024740
  • G. Lindfield and J. Penny, Numerical Methods using MATLAB. Prentice Hall, 1999, ISBN 0-13-012641-1.
  • M. Lutz, Programming Python. 3rd ed. O'Reilly, 2006.
  • Maxima, a Computer Algebra System, 2012, http://maxima.sourceforge.net.
  • J. H. Mathews and K. D. Fink, Numerical methods using MATLAB, Third ed. 1999, Prentice Hall, Inc., Englewood Cliffs, NJ.
  • C. B. Moler, Numerical computing with MATLAB. Society for Industrial and Applied Mathematics, Philadelphia, PA, 2004. xii+336 pp. ISBN: 0-89871-560-1
  • Numerical Computing with Sage, Release 5.4, The Sage Development Team, 2012, http://www.sagemath.org/pdf/numerical_sage.pdf.
  • T. E. Oliphant, Python for Scientific Computing, Computing in Science & Engineering 9, 90 (2007).
  • PARI/GP, Bordeaux, 2012, http://pari.math.u-bordeaux.fr.
  • W. H. Press, S. A. Teukolsky, W. T. Vetterling and B. P. Flannery, Numerical recipes. The art of scientific computing. Third edition. Cambridge University Press, Cambridge, 2007. xxii+1235 pp. ISBN: 978-0-521-88068-8
  • F. Pérez and B. E. Granger, IPython: A System for Interactive Scientific Computing, Computing in Science & Engineering 9, 90 (2007).
  • Publications Citing Sage, The Sage Development Team, http://www.sagemath.org/library-publications.html.
  • R: A Language and Environment for Statistical Computing, R Core Team, R Foundation for Statistical Computing, Vienna, Austria, ISBN: 3-900051-07-0, http://www.R-project.org.
  • A. Rasila Introduction to numerical methods with Python language, part 1, Mathematics Newsletter / Ramanujan Mathematical Society 14: 1 and 2 (2004), 1 -15. http://www.ramanujanmathsociety.org/
  • W. A. Stein et al., Sage Mathematics Software (Version 5.4), The Sage Development Team, 2012, http://www.sagemath.org.
  • H.-R. Schwarz, Numerical analysis. A comprehensive introduction. With a contribution by J. Waldvogel. Translated from the German. John Wiley & Sons, Ltd., Chichester, 1989. xiv+517 pp. ISBN: 0-471-92064-9.
  • G. Strang, Introduction to linear algebra, Wellesley-Cambridge Press, 1993.
  • Teaching with Sage, Sage wiki, The Sage Development Team, http://wiki.sagemath.org/Teaching_with_SAGE.
  • A. Tveito, H. P. Langtangen, B. F. Nielsen and X. Cai, Elements of scientific computing. Texts in Computational Science and Engineering, 7. Springer-Verlag, Berlin, 2010. xii+459 pp. ISBN: 978-3-642-11298-0
  • S. Tosi, Matplotlib for Python Developers, From technologies to solutions, 2009, Packt Publishing.
  • J. E. Stone, The Tachyon 3D Ray Tracer, Sage Reference v5.4, The Sage Development Team, http://www.sagemath.org/ doc/reference/sage/\hfill plot/plot3d/tachyon.html.
  • Sage Workshops, Sage wiki, The Sage Development Team, http://wiki.sagemath.org/Workshops.