
A Short Course in Computational Science and Engineering
C++, Java and Octave Numerical Programming with Free Software Tools
David Yevick(Author)
Cambridge University Press
Published on 24. May 2012
Book
Hardback
280 pages
978-0-521-11681-7 (ISBN)
Description
Building on his highly successful textbook on C++, David Yevick provides a concise yet comprehensive one-stop course in three key programming languages, C++, Java and Octave (a freeware alternative to MATLAB). Employing only public-domain software, this book presents a unique overview of numerical and programming techniques, including object-oriented programming, elementary and advanced topics in numerical analysis, physical system modelling, scientific graphics, software engineering and performance issues. Compact, transparent code in all three programming languages is applied to the fundamental equations of quantum mechanics, electromagnetics, mechanics and statistical mechanics. Uncommented versions of the code that can be immediately modified and adapted are provided online for the more involved programs. This compact, practical text is an invaluable introduction for students in all undergraduate- and graduate-level courses in the physical sciences or engineering that require numerical modelling, and also a key reference for instructors and scientific programmers.
Reviews / Votes
'... a very valuable, comprehensive reference for users of public domain key programming languages. Undergraduate and graduate students in physical sciences and engineering and working scientists will benefit from this short course on computational science.' Axel Mainzer Koenig, Optics and Photonics News (osa-opn.org) 'I recommend this book as a fine all-in-one package of essentials for those who use computation in their scientific or engineering endeavors.' George Hacken, Computing ReviewsMore details
Language
English
Place of publication
Cambridge
United Kingdom
Target group
College/higher education
Illustrations
3 Halftones, unspecified; 2 Line drawings, unspecified
Dimensions
Height: 260 mm
Width: 183 mm
Thickness: 20 mm
Weight
727 gr
ISBN-13
978-0-521-11681-7 (9780521116817)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Classification
Other editions
Additional editions

David Yevick
A Short Course in Computational Science and Engineering
C++, Java and Octave Numerical Programming with Free Software Tools
E-Book
06/2012
1st Edition
Cambridge University Press
€39.99
Available for download

David Yevick
Short Course in Computational Science and Engineering
C++, Java and Octave Numerical Programming with Free Software Tools
E-Book
05/2012
Cambridge University Press
€34.49
Available for download
Person
David Yevick is a Professor of Physics at the University of Waterloo. He has been engaged for 30 years in scientific programming in various fields of optical communications and solid state physics at numerous university and industrial establishments, where he performed pioneering work on the numerical modelling of optical communication devices and systems. Dr Yevick is currently a Fellow of the American Physical Society, the Institute of Electrical and Electronics Engineers and the Optical Society of America as well as a registered Professional Engineer (Ontario). He has taught scientific and engineering programming for over 20 years and has authored or co-authored over 170 refereed journal articles.
Content
1. Introduction; 2. Octave programming; 3. Installing and running the Dev-C++ programming environment; 4. Introduction to computer and software architecture; 5. Fundamental concepts; 6. Procedural programming basics; 7. An introduction to object-oriented analysis; 8. C++ object-oriented programming syntax; 9. Arrays and matrices; 10. Input and output stream; 11. References; 12. Pointers and dynamic memory allocation; 13. Memory management; 14. The static keyword, multiple and virtual inheritance, templates and the STL library; 15. Creating a Java development environment; 16. Basic Java programming constructs; 17. Java classes and objects; 18. Advanced Java features; 19. Introductory numerical analysis; 20. Linear algebra; 21. Fourier transforms; 22. Differential equations; 23. Monte-Carlo methods; 24. Parabolic partial differential equation solvers; Index.