David YevickCambridge University Press, 5/24/2012EAN 9780521116817, ISBN10: 0521116813Hardcover, 280 pages, 24.6 x 19 x 1.8 cmLanguage: EnglishBuilding 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.1. Introduction2. Octave programming3. Installing and running the Dev-C++ programming environment4. Introduction to computer and software architecture5. Fundamental concepts6. Procedural programming basics7. An introduction to object-oriented analysis8. C++ object-oriented programming syntax9. Arrays and matrices10. Input and output stream11. References12. Pointers and dynamic memory allocation13. Memory management14. The static keyword, multiple and virtual inheritance, templates and the STL library15. Creating a Java development environment16. Basic Java programming constructs17. Java classes and objects18. Advanced Java features19. Introductory numerical analysis20. Linear algebra21. Fourier transforms22. Differential equations23. Monte-Carlo methods24. Parabolic partial differential equation solversIndex.'… 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 Reviews