Skip to main content

A Primer on Scientific Programming with Python

  • Textbook
  • © 2014


  • Example-oriented text with all applications taken from science and engineering
  • Aimed at newcomers to programming and Python, but proved to be useful for professionals too
  • All examples are accompanied by complete program codes, which can be modified to the reader's needs
  • Covers both Matlab-style "simple" programming and object-oriented programming
  • Demonstrates how Python can be an alternative to Matlab in scientific computing

Part of the book series: Texts in Computational Science and Engineering (TCSE, volume 6)

This is a preview of subscription content, log in via an institution to check access.

Access this book

eBook USD 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Other ways to access

Licence this eBook for your library

Institutional subscriptions

About this book

The book serves as a first introduction to computer programming of scientific applications, using the high-level Python language. The exposition is example and problem-oriented, where the applications are taken from mathematics, numerical calculus, statistics, physics, biology and finance. The book teaches "Matlab-style" and procedural programming as well as object-oriented programming. High school mathematics is a required background and it is advantageous to study classical and numerical one-variable calculus in parallel with reading this book. Besides learning how to program computers, the reader will also learn how to solve mathematical problems, arising in various branches of science and engineering, with the aid of numerical methods and programming. By blending programming, mathematics and scientific applications, the book lays a solid foundation for practicing computational science.

From the reviews:

Langtangen … does an excellent job of introducing programming as a set of skills in problem solving. He guides the reader into thinking properly about producing program logic and data structures for modeling real-world problems using objects and functions and embracing the object-oriented paradigm. … Summing Up: Highly recommended.
F. H. Wild III, Choice, Vol. 47 (8), April 2010

Those of us who have learned scientific programming in Python ‘on the streets’ could be a little jealous of students who have the opportunity to take a course out of Langtangen’s Primer.” 
John D. Cook, The Mathematical Association of America, September 2011

This book goes through Python in particular, and programming in general, via tasks that scientists will likely perform. Itcontains valuable information for students new to scientific computing and would be the perfect bridge between an introduction to programming and an advanced course on numerical methods or computational science.
Alex Small, IEEE, CiSE Vol. 14 (2), March/April 2012  


Similar content being viewed by others


Table of contents (9 chapters)


From the book reviews:

“This is a book that can guide a student in a class. It would also work for a scientist or engineer who wants to learn programming in the first place or transition to Python from another language. An advanced Python programmer who wants to learn scientific computing, and who likes to learn through example code, could also use this book to learn scientific computing.” (Joan Horvath, Computing Reviews, February, 2015)

Authors and Affiliations

  • Simula Research Laboratory, Lysaker, Fornebu, Norway

    Hans Petter Langtangen

About the author

Hans Petter Langtangen is a professor of computer science at the University of Oslo. He has formerly been a professor of mechanics and is now the director of a Norwegian Center of Excellence: "Center for Biomedical Computing", at Simula Research Laboratory. Langtangen has published over 100 scientific publications and written several books, including papers and a book on Python's potential for scientific computing. He has also developed open source and commercial software systems for computational sciences.

Bibliographic Information

Publish with us