Like a pianist who practices from a book of études, readers of Programming Projects in C for Students of Engineering, Science, and Mathematics will learn by doing.
Written as a tutorial on how to think about, organize, and implement programs in scientific computing, this book achieves its goal through an eclectic and wide-ranging collection of projects. Each project presents a problem and an algorithm for solving it, and the reader is guided through implementing the algorithm in C and compiling and testing the results. It is not necessary to carry out the projects in sequential order. The projects contain suggested algorithms and partially completed programs for implementing them to enable the reader to exercise and develop skills in scientific computing; require only a working knowledge of undergraduate multivariable calculus, differential equations, and linear algebra; and are written in platform-independent standard C. The Unix command-line is used to illustrate compilation and execution.
Sprache
Verlagsort
Zielgruppe
Für höhere Schule und Studium
Für Beruf und Forschung
Produkt-Hinweis
Broschur/Paperback
Klebebindung
Maße
Höhe: 247 mm
Breite: 174 mm
Dicke: 21 mm
Gewicht
ISBN-13
978-1-61197-349-5 (9781611973495)
Schweitzer Klassifikation
Rouben Rostamian is a Professor of Mathematics at University of Maryland, Baltimore County (UMBC), where he has been since 1985. Over the years he has served as Department Chair at UMBC and as Program Director of the Applied Mathematics Program at the National Science Foundation. He has published numerous articles on the analysis of linear and nonlinear partial differential equations with applications to homogenization, flow in porous media, elasticity, and computational mathematics.
Chapter interdependencies; Preface; Part I. A Common Background: 1. Introduction; 2. File organization; 3. Streams and the Unix shell; 4. Pointers and arrays; 5. From strings to numbers; 6. Make; Part II. Projects: 7. Allocating memory: xmalloc(); 8. Dynamic memory allocation for vectors and matrices: array.h; 9. Reading lines: fetch_lines(); 10. Generating random numbers; 11. Storing sparse matrices; 12. Sparse systems: the UMFPACK library; 13. Haar wavelets; 14. Image I/O; 15. Image analysis; 16. Linked lists; 17. The evolution of species; 18. The Nelder-Mead downhill simplex; 19. Trusses; 20. Finite difference schemes for the heat equation in one dimension; 21. The porous medium equation; 22. Gaussian quadrature; 23. Triangulation with the Triangle library; 24. Integration on triangles; 25. Finite elements; 26. Finite elements: nonzero boundary data; A. Barycentric coordinates; Bibliography; Index.