Writing scientific software : a guide for good style / Suely Oliveira and David E. Stewart.

Oliveira, Suely
Call Number
005.3
Author
Oliveira, Suely, author.
Title
Writing scientific software : a guide for good style / Suely Oliveira and David E. Stewart.
Physical Description
1 online resource (xii, 303 pages) : digital, PDF file(s).
Notes
Title from publisher's bibliographic system (viewed on 05 Oct 2015).
Contents
pt. I. Numerical software -- Why numerical software? -- Scientific computation and numerical analysis -- Priorities -- Famous disasters -- Exercises -- pt. II. Developing software -- Basics of computer organization -- Software design -- Data structures -- Design for testing and debugging -- Exercises -- pt. III. Efficiency in time, efficiency in memory -- Be algorithm aware -- Computer architecture and efficiency -- Global vs. local optimization -- Grabbing memory when you need it -- Memory bugs and leaks -- pt. IV. Tools -- Sources of scientific software -- Unix tools -- pt. V. Design examples -- Cubic spline function library -- Multigrid alogrithms.
Summary
The core of scientific computing is designing, writing, testing, debugging and modifying numerical software for application to a vast range of areas: from graphics, meteorology and chemistry to engineering, biology and finance. Scientists, engineers and computer scientists need to write good code, for speed, clarity, flexibility and ease of re-use. Oliveira and Stewart's style guide for numerical software points out good practices to follow, and pitfalls to avoid. By following their advice, readers will learn how to write efficient software, and how to test it for bugs, accuracy and performance. Techniques are explained with a variety of programming languages, and illustrated with two extensive design examples, one in Fortran 90 and one in C++: other examples in C, C++, Fortran 90 and Java are scattered throughout the book. This manual of scientific computing style will be an essential addition to the bookshelf and lab of everyone who writes numerical software.
Added Author
Stewart, David, 1961- author.
Subject
Computer software Development.
SOFTWARE ENGINEERING.
Science Data processing.
Science Software.
Multimedia
Total Ratings: 0
No records found to display.
 
 
 
03032nam a22004098i 4500
001
 
 
vtls001584466
003
 
 
VRT
005
 
 
20200921121900.0
006
 
 
m|||||o||d||||||||
007
 
 
cr||||||||||||
008
 
 
200921s2006||||enk     o     ||1 0|eng|d
020
$a 9780511617973 (ebook)
020
$z 9780521858960 (hardback)
020
$z 9780521675956 (paperback)
035
$a (UkCbUP)CR9780511617973
039
9
$y 202009211219 $z santha
040
$a UkCbUP $b eng $e rda $c UkCbUP
050
0
0
$a QA76.76.D47 $b O45 2006
082
0
0
$a 005.3 $2 22
100
1
$a Oliveira, Suely, $e author.
245
1
0
$a Writing scientific software : $b a guide for good style / $c Suely Oliveira and David E. Stewart.
264
1
$a Cambridge : $b Cambridge University Press, $c 2006.
300
$a 1 online resource (xii, 303 pages) : $b digital, PDF file(s).
336
$a text $b txt $2 rdacontent
337
$a computer $b c $2 rdamedia
338
$a online resource $b cr $2 rdacarrier
500
$a Title from publisher's bibliographic system (viewed on 05 Oct 2015).
505
0
$a pt. I. Numerical software -- Why numerical software? -- Scientific computation and numerical analysis -- Priorities -- Famous disasters -- Exercises -- pt. II. Developing software -- Basics of computer organization -- Software design -- Data structures -- Design for testing and debugging -- Exercises -- pt. III. Efficiency in time, efficiency in memory -- Be algorithm aware -- Computer architecture and efficiency -- Global vs. local optimization -- Grabbing memory when you need it -- Memory bugs and leaks -- pt. IV. Tools -- Sources of scientific software -- Unix tools -- pt. V. Design examples -- Cubic spline function library -- Multigrid alogrithms.
520
$a The core of scientific computing is designing, writing, testing, debugging and modifying numerical software for application to a vast range of areas: from graphics, meteorology and chemistry to engineering, biology and finance. Scientists, engineers and computer scientists need to write good code, for speed, clarity, flexibility and ease of re-use. Oliveira and Stewart's style guide for numerical software points out good practices to follow, and pitfalls to avoid. By following their advice, readers will learn how to write efficient software, and how to test it for bugs, accuracy and performance. Techniques are explained with a variety of programming languages, and illustrated with two extensive design examples, one in Fortran 90 and one in C++: other examples in C, C++, Fortran 90 and Java are scattered throughout the book. This manual of scientific computing style will be an essential addition to the bookshelf and lab of everyone who writes numerical software.
650
0
$a Computer software $x Development.
650
0
$a SOFTWARE ENGINEERING.
650
0
$a Science $x Data processing.
650
0
$a Science $v Software.
700
1
$a Stewart, David, $d 1961- $e author.
776
0
8
$i Print version: $z 9780521858960
856
4
0
$u https://doi.org/10.1017/CBO9780511617973
999
$a VIRTUA               
No Reviews to Display
Summary
The core of scientific computing is designing, writing, testing, debugging and modifying numerical software for application to a vast range of areas: from graphics, meteorology and chemistry to engineering, biology and finance. Scientists, engineers and computer scientists need to write good code, for speed, clarity, flexibility and ease of re-use. Oliveira and Stewart's style guide for numerical software points out good practices to follow, and pitfalls to avoid. By following their advice, readers will learn how to write efficient software, and how to test it for bugs, accuracy and performance. Techniques are explained with a variety of programming languages, and illustrated with two extensive design examples, one in Fortran 90 and one in C++: other examples in C, C++, Fortran 90 and Java are scattered throughout the book. This manual of scientific computing style will be an essential addition to the bookshelf and lab of everyone who writes numerical software.
Notes
Title from publisher's bibliographic system (viewed on 05 Oct 2015).
Contents
pt. I. Numerical software -- Why numerical software? -- Scientific computation and numerical analysis -- Priorities -- Famous disasters -- Exercises -- pt. II. Developing software -- Basics of computer organization -- Software design -- Data structures -- Design for testing and debugging -- Exercises -- pt. III. Efficiency in time, efficiency in memory -- Be algorithm aware -- Computer architecture and efficiency -- Global vs. local optimization -- Grabbing memory when you need it -- Memory bugs and leaks -- pt. IV. Tools -- Sources of scientific software -- Unix tools -- pt. V. Design examples -- Cubic spline function library -- Multigrid alogrithms.
Subject
Computer software Development.
SOFTWARE ENGINEERING.
Science Data processing.
Science Software.
Multimedia