Scientific software engineering

0Citations
Citations of this article
10Readers
Mendeley users who have this article in their library.

This article is free to access.

Abstract

Teaching material on scientific computing has traditionally been very focused on the mathematics and the applications, while details on how the computer is programmed to solve the problems have received little attention. Many end up writing as simple programs as possible, without being aware of much useful computer science technology that would increase the fun, efficiency, and reliability of the their scientific computing activities. This chapter demonstrates aseries of good practices and tools from modern computer science, using the simple mathematical problem u′=−auu′=−au, u(0)=Iu(0)=I, such that we minimize the mathematical details and can go more in depth with implementations. The goal is to increase the technological quality of computer programming and make it match the more well-established quality of the mathematics of scientific computing. The conventions and techniques outlined here will save you alot of time when you incrementally extend software over time from simpler to more complicated problems. In particular, you will benefit from many good habits: · new code is added in amodular fashion to alibrary (modules), · programs are run through convenient user interfaces, · it takes one quick command to let all your code undergo heavy testing, · tedious manual work with running programs is automated, · your scientific investigations are reproducible, · scientific reports with top quality typesetting are produced both for paper and electronic devices.

Cite

CITATION STYLE

APA

Langtangen, H. P. (2016). Scientific software engineering. Lecture Notes in Computational Science and Engineering, 110, 127–187. https://doi.org/10.1007/978-3-319-29439-1_5

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free