A short course in computational science and engineering : C++ Java and Octave numerical programming with free software tools 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 to ensure straightforward implementation for all readers this book presents a unique overview of numerical and programming techniques relevant to scientific programming including object oriented programming elementary and advanced topics in numerical analysis physical system modeling scientific graphics software engineering and performance issues. Relevant features of each programming language are illustrated with short incisive examples and the installation and application of the software is described in detail. 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 modeling and also a key reference for instructors and scientific programmers