This book is open access under a CC BY 4.0 license. This easy-to-read book introduces the basics of solving partial differential equations by means of finite difference methods. Unlike many of the traditional academic works on the topic, this book was written for practitioners. Accordingly, it especially addresses: the construction of finite difference schemes, formulation and implementation of algorithms, verification of implementations, analyses of physical behavior as implied by the numerical solutions, and how to apply the methods and software to solve problems in the fields of physics and biology.

This book presents computer programming as a key method for solving mathematical problems. There are two versions of the book, one for MATLAB and one for Python. The book was inspired by the Springer book TCSE 6: A Primer on Scientific Programming with Python (by Langtangen), but the style is more accessible and concise, in keeping with the needs of engineering students. The book outlines the shortest possible path from no previous experience with programming to a set of skills that allows the students to write simple programs for solving common mathematical problems with numerical methods in engineering and science courses. The emphasis is on generic algorithms, clean design of programs, use of functions, and automatic tests for verification.

This book presents computer programming as a key method for solving mathematical problems. There are two versions of the book, one for MATLAB and one for Python. The book was inspired by the Springer book TCSE 6: A Primer on Scientific Programming with Python (by Langtangen), but the style is more accessible and concise, in keeping with the needs of engineering students. The book outlines the shortest possible path from no previous experience with programming to a set of skills that allows the students to write simple programs for solving common mathematical problems with numerical methods in engineering and science courses. The emphasis is on generic algorithms, clean design of programs, use of functions, and automatic tests for verification.

This book is a concise presentation of the basic concepts used in evolving numerical methods with special emphasis on developing computational algorithms for solving problems in algebra and calculus on a computer. It is written for undergraduate science and engineering students who have taken a first course in differential and integral calculus. The approach is to ensure conceptual understanding of the numerical methods by relying on students geometric intuition. The book provides coverage of iterative methods for solving algebraic and transcendental equations, direct and iterative methods of solving simultaneous algebraic equations, numerical methods for differen-tiation and integration, and solution of ordinary differential equations with initial conditions. The formulation of algorithms is illustrated with a number of solved examples and an algorithmic language based on English (and similar to PASCAL) is used to express the logic of the numerical procedures. This approach is thus different from that used in most books which either use a programming language like FORTRAN or use flow charts to express algorithms. The solutions to selected problems have been provided at the end of the book.

This book offers a new approach to introductory scientific computing. It aims to make students comfortable using computers to do science, to provide them with the computational tools and knowledge they need throughout their college careers and into their professional careers, and to show how all the pieces can work together. Rubin Landau introduces the requisite mathematics and computer science in the course of realistic problems, from energy use to the building of skyscrapers to projectile motion with drag. He is attentive to how each discipline uses its own language to describe the same concepts and how computations are concrete instances of the abstract. Landau covers the basics of computation, numerical analysis, and programming from a computational science perspective. The first part of the printed book uses the problem-solving environment Maple as its context, with the same material covered on the accompanying CD as both Maple and Mathematica programs; the second part uses the compiled language Java, with equivalent materials in Fortran90 on the CD; and the final part presents an introduction to LaTeX replete with sample files. Providing the essentials of computing, with practical examples, A First Course in Scientific Computing adheres to the principle that science and engineering students learn computation best while sitting in front of a computer, book in hand, in trial-and-error mode. Not only is it an invaluable learning text and an essential reference for students of mathematics, engineering, physics, and other sciences, but it is also a consummate model for future textbooks in computational science and engineering courses. A broad spectrum of computing tools and examples that can be used throughout an academic career Practical computing aimed at solving realistic problems Both symbolic and numerical computations A multidisciplinary approach: science + math + computer science Maple and Java in the book itself; Mathematica, Fortran90, Maple and Java on the accompanying CD in an interactive workbook format

Explore real-world applications of selected mathematical theory,concepts, and methods Exploring related methods that can be utilized in various fieldsof practice from science and engineering to business, A FirstCourse in Applied Mathematics details how applied mathematicsinvolves predictions, interpretations, analysis, and mathematicalmodeling to solve real-world problems. Written at a level that is accessible to readers from a widerange of scientific and engineering fields, the book masterfullyblends standard topics with modern areas of application andprovides the needed foundation for transitioning to more advancedsubjects. The author utilizes MATLAB® to showcase thepresented theory and illustrate interesting real-world applicationsto Google's web page ranking algorithm, image compression,cryptography, chaos, and waste management systems. Additionaltopics covered include: Linear algebra Ranking web pages Matrix factorizations Least squares Image compression Ordinary differential equations Dynamical systems Mathematical models Throughout the book, theoretical and applications-orientedproblems and exercises allow readers to test their comprehension ofthe presented material. An accompanying website features relatedMATLAB® code and additional resources. A First Course in Applied Mathematics is an ideal book formathematics, computer science, and engineering courses at theupper-undergraduate level. The book also serves as a valuablereference for practitioners working with mathematical modeling,computational methods, and the applications of mathematics in theireveryday work.

This text introduces numerical methods and shows how to develop, analyze, and use them. Complete MATLAB programs are now available at www.cambridge.org/Moin, and more than 30 exercises have been added. This thorough and practical book is a first course in numerical analysis for new graduate students in engineering and physical science.

"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 describedin 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 modifiedand 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"--

The book endeavors to strike a balance between mathematical and numerical coverage of a wide range of topics in fi nite element analysis. It strives to provide an introduction, especially for undergraduates and graduates, to fi nite element analysis and its applications. Topics include advanced calculus, differential equations, vector analysis, calculus of variations, fi nite difference methods, fi nite element methods and time-stepping schemes. The book also emphasizes the application of important numerical methods with dozens of worked examples. The applied topics include elasticity, heat transfer, and pattern formation. A few self-explanatory Matlab programs provide a good start for readers to try some of the methods and to apply the methods and techniques to their own modelling problems with some modifi cations. The book will perfectly serve as a textbook in fi nite element analysis, computational mathematics, mathematical modelling, and engineering computations.

The book serves as a first introduction to computer programming of scientific applications, using the high-level Python language. The exposition is example and problem-oriented, where the applications are taken from mathematics, numerical calculus, statistics, physics, biology and finance. The book teaches "Matlab-style" and procedural programming as well as object-oriented programming. High school mathematics is a required background and it is advantageous to study classical and numerical one-variable calculus in parallel with reading this book. Besides learning how to program computers, the reader will also learn how to solve mathematical problems, arising in various branches of science and engineering, with the aid of numerical methods and programming. By blending programming, mathematics and scientific applications, the book lays a solid foundation for practicing computational science. From the reviews: Langtangen ... does an excellent job of introducing programming as a set of skills in problem solving. He guides the reader into thinking properly about producing program logic and data structures for modeling real-world problems using objects and functions and embracing the object-oriented paradigm. ... Summing Up: Highly recommended. F. H. Wild III, Choice, Vol. 47 (8), April 2010 Those of us who have learned scientific programming in Python ‘on the streets’ could be a little jealous of students who have the opportunity to take a course out of Langtangen’s Primer.” John D. Cook, The Mathematical Association of America, September 2011 This book goes through Python in particular, and programming in general, via tasks that scientists will likely perform. It contains valuable information for students new to scientific computing and would be the perfect bridge between an introduction to programming and an advanced course on numerical methods or computational science. Alex Small, IEEE, CiSE Vol. 14 (2), March /April 2012 “This fourth edition is a wonderful, inclusive textbook that covers pretty much everything one needs to know to go from zero to fairly sophisticated scientific programming in Python...” Joan Horvath, Computing Reviews, March 2015

Designed for non-expert students and researchers, this text provides an accessible introduction to scientific numerical computation and its applications. It assumes no prior knowledge beyond undergraduate calculus and elementary computer programming. Fundamental and practical issues are discussed in a unified manner with a generous, but not excessive, dose of numerical analysis. The topics are introduced on a need to know basis in order to concisely illustrate the practical implementation of a variety of algorithms and to demystify seemingly esoteric numerical methods. Algorithms that can be explained without too much elaboration and implemented within a few dozen lines of computer code are discussed in detail; those whose underlying theories require long, elaborate explanations are discussed at the level of first principles, and references for further information are given. The book uses schematic illustrations to demonstrate concepts and facilitate understanding by providing readers with a helpful interplay between ideas and visual images. Real-world examples, drawn from various branches of science and engineering, are presented in those cases where it would be difficult for readers to produce their own. The text is further enhanced by an accompanying library of FORTRAN programs, freely available on the World Wide Web at http: //www-ames.ucsd.edu/research/pozrikidis/ncse. Drawing a direct connection between numerical analysis and numerical computation, Numerical Computation in Science and Engineering serves as an ideal text for courses in numerical methods and as a supplement in any course involving numerical computation, including fluid mechanics, solid mechanics, control theory, and thermodynamics.

In this book we describe the basic elements of present computational technologies that use the algorithmic languages C/C++. The emphasis is on GNU compilers and libraries, FOSS for the solution of computational mathematics problems and visualization of the obtained data. Many examples illustrate the basic features of computational technologies.

Numerical Methods, Software, and Analysis, Second Edition introduces science and engineering students to the methods, tools, and ideas of numerical computation. Introductory courses in numerical methods face a fundamental problem-there is too little time to learn too much. This text solves that problem by using high-quality mathematical software. In fact, the objective of the text is to present scientific problem solving using standard mathematical software. This book discusses numerous programs and software packages focusing on the IMSL library (including the PROTRAN system) and ACM Algorithms. The book is organized into three parts. Part I presents the background material. Part II presents the principal methods and ideas of numerical computation. Part III contains material about software engineering and performance evaluation. A uniform approach is used in each area of numerical computation. First, an intuitive development is made of the problems and the basic methods for their solution. Then, relevant mathematical software is reviewed and its use outlined. Many areas provide extensive examples and case studies. Finally, a deeper analysis of the methods is presented as in traditional numerical analysis texts. Emphasizes the use of high-quality mathematical software for numerical computation Extensive use of IMSL routines Features extensive examples and case studies

Designed for the many applied mathematicians and engineers who wish to explore computerized numerical methods, this text explores the power of C++ as a tool for work in numerical methods. This revision of the successful first edition includes for the first time information on programming in Windows-based environments. In addition it includes new topics and methods throughout the text that clarify and enhance the treatment of the subject.

This book presents a modern introduction to analytical and numerical techniques for solving ordinary differential equations (ODEs). Contrary to the traditional format—the theorem-and-proof format—the book is focusing on analytical and numerical methods. The book supplies a variety of problems and examples, ranging from the elementary to the advanced level, to introduce and study the mathematics of ODEs. The analytical part of the book deals with solution techniques for scalar first-order and second-order linear ODEs, and systems of linear ODEs—with a special focus on the Laplace transform, operator techniques and power series solutions. In the numerical part, theoretical and practical aspects of Runge-Kutta methods for solving initial-value problems and shooting methods for linear two-point boundary-value problems are considered. The book is intended as a primary text for courses on the theory of ODEs and numerical treatment of ODEs for advanced undergraduate and early graduate students. It is assumed that the reader has a basic grasp of elementary calculus, in particular methods of integration, and of numerical analysis. Physicists, chemists, biologists, computer scientists and engineers whose work involves solving ODEs will also find the book useful as a reference work and tool for independent study. The book has been prepared within the framework of a German–Iranian research project on mathematical methods for ODEs, which was started in early 2012.