search for books and compare prices
Tables of Contents for Modern Software Tools for Scientific Computing
Chapter/Section Title
Page #
Page Count
Part I. Computational Differential Equations
3
266
1 The SCIRun Computational Steering Software System
5
40
S. G. Parker
D. W. Weinstein
C. R. Johnson
1.1 Introduction
5
4
1.2 Requirements of SCIRun as a Computational Steering System
9
1
1.3 Components of SCIRun
10
10
1.4 The Datatypes Library
20
3
1.5 Dataflow
23
3
1.6 Steering in a Dataflow System
26
1
1.7 Modules
27
7
1.8 Applications of SCIRun in Computational Medicine
34
5
1.9 Summary
39
1
1.10 Future Work
40
1
1.11 References
41
3
1.12 Software Appendix
44
1
2 Object-Oriented Solvers for Initial Value Problems
45
18
H. Olsson
2.1 Introduction
45
6
2.2 Overview of the Code
51
3
2.3 Case Studies: New algorithms
54
5
2.4 Comparison with Classical Solvers
59
2
2.5 Conclusions
61
1
2.6 References
61
2
3 SPRINT2D Software for Convection Dominated PDEs
63
18
M. Berzins et al.
3.1 Introduction
63
1
3.2 The SPRINT2D Software
64
3
3.3 Mesh Generation and Adaptivity
67
3
3.4 A PSE for SPRINT2D
70
2
3.5 Case Studies
72
5
3.6 Conclusions
77
2
3.7 References
79
2
4 Electrochemical Modelling and Software Genericity
81
24
G. Nelissen
P. Vankeirsbilck
4.1 Introduction
81
3
4.2 Electrochemical Modelling
84
3
4.3 A Generalized Approach to Numerical Modelling
87
2
4.4 Abstractions
89
11
4.5 Critical Remarks
100
1
4.6 Conclusions
101
1
4.7 References
102
3
5 An Object-Oriented Adaptive Finite Element Code: Design Issues and Applications in Hyperthermia Treatment Planning
105
20
R. Beck
B. Erdmann
R. Roitzsch
5.1 Introduction
106
1
5.2 Code Structure
107
10
5.3 Applications in Hyperthermia Treatment Planning
117
4
5.4 Concluding Remarks
121
1
5.5 References
121
4
6 On the Efficient Implementation of Multilevel Adaptive Methods
125
18
U. Rude
6.1 Introduction
125
2
6.2 Multilevel Implementations
127
3
6.3 Data Abstraction Concepts for Multilevel Adaptive Methods
130
2
6.4 Efficiency
132
4
6.5 Abstract Mesh Data Structures
136
2
6.6 Patch-Adaptive Multigrid
138
3
6.7 Conclusions
141
1
6.8 References
141
2
7 Finite Element Kernel with Metaobject Protocol
143
20
R. Chudoba
7.1 Introduction
143
2
7.2 Example Problems
145
1
7.3 Procedural Approach
146
3
7.4 Object-Oriented Approach
149
4
7.5 Algorithm-Oriented Approach
153
6
7.6 Conclusions
159
2
7.7 References
161
2
8 Efficient Management of Parallelism in Object-Oriented Numerical Software Libraries
163
40
S. Balay et al.
8.1 Introduction
163
4
8.2 The Message Passing Model for Programming Distributed-Memory Parallel Systems
167
5
8.3 Distributed Computational Objects
172
2
8.4 Six Guiding Principles
174
4
8.5 PETSc Design of Fundamental Objects
178
20
8.6 Sample Performance Results
198
2
8.7 Conclusion
200
1
8.8 References
201
2
9 Object-Oriented Construction of Parallel PDE Solvers
203
24
M. Thune et al.
9.1 Introduction
203
4
9.2 The Object-Oriented Approach
207
2
9.3 Overview of Cogito
209
2
9.4 Case Study 1: Application of Cogito/Grid
211
2
9.5 Case Study 2: Application of Cogito/Solver
213
2
9.6 Cogito for Implicit Methods
215
3
9.7 Validation of Cogito
218
6
9.8 Concluding Remarks
224
1
9.9 References
225
2
10 Modern Software Techniques in Computational Finance
227
20
K. N. Pantazopoulos
E. N. Houstis
10.1 Introduction
227
5
10.2 Option Computations
232
5
10.3 Software Design Issues in Option Valuation
237
3
10.4 FINANZIA Implementation and Examples
240
4
10.5 Future Extensions
244
1
10.6 Conclusions
245
1
10.7 References
246
1
11 Increasing the Efficiency and Reliability of Software Development for Systems of PDEs
247
22
A. M. Bruaset
E. J. Holm
H. P. Langtangen
11.1 Introduction
247
2
11.2 A Plastic Forming Process
249
3
11.3 The Basic Ideas
252
2
11.4 Diffpack
254
3
11.5 Systems of PDEs
257
4
11.6 Extensions of the Concept
261
2
11.7 Other Applications
263
1
11.8 Another Application of the Flexible Design
264
1
11.9 Concluding Remarks
265
2
11.10 References
267
2
Part II. Computational Geometry
269
40
12 Object Oriented Surface Design
271
18
R. Bartels
12.1 Overview
271
1
12.2 Geometrical Abstractions
272
5
12.3 Data Structures
277
1
12.4 Splines
278
2
12.5 Surfaces
280
1
12.6 Refiners
281
1
12.7 Applications
282
2
12.8 Development Environment
284
3
12.9 References
287
2
13 Object-Oriented Scattered Data Modelling with Siscat
289
20
E. Arge
O. Hjelle
13.1 Introduction
289
2
13.2 A Cartographic Model Problem
291
2
13.3 The Basic Surface Hierarchy in Siscat
293
2
13.4 Aspects of Basic Methods
295
6
13.5 Composite Methods
301
6
13.6 References
307
2
Part III. Software Development
309
64
14 Is the Quality of Numerical Subroutine Code Improving?
311
14
T. R. Hopkins
14.1 Introduction
311
1
14.2 Software Metrics
312
2
14.3 A Comparison of Freely Available Packages
314
5
14.4 CALGO Fortran Codes
319
2
14.5 Conclusion
321
1
14.6 References
322
3
15 Object-Oriented Redesign of a Real-World Fortran 77 Solver
325
14
M. Weidmann
15.1 Introduction
325
2
15.2 The SEMPA Project
327
1
15.3 The CFD Program
328
1
15.4 Analysis and Redesign of the Solver
329
4
15.5 Original and New Module Comparison
333
1
15.6 Discussion of the Approach
334
2
15.7 References
336
3
16 Automating the Debugging of Large Numerical Codes
339
14
F. Manne
S. O. Andersen
16.1 Introduction
339
2
16.2 Comparative Debugging
341
4
16.3 Examples of Use
345
1
16.4 The Wizard
346
3
16.5 Conclusion
349
1
16.6 References
350
3
17 The TAMPR Program Transformation System: Simplifying the Development of Numerical Software
353
20
J. M. Boyle
T. J. Harmer
V. L. Winter
17.1 Introduction
353
3
17.2 Some TAMPR Applications
356
5
17.3 The TAMPR Approach to Program Transformation
361
4
17.4 Example of the TAMPR Approach to Program Transformation
365
5
17.5 Conclusion
370
1
17.6 References
371
2
List of Contributors
373
4
Index
377