Programming Projects in C for Students of Engineering, Science, and Mathematics


Book Description

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. 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.




A Ramble Through Probability


Book Description

Measure theory and measure-theoretic probability are fascinating subjects. Proofs describing profound ways to reason lead to results that are frequently startling, beautiful, and useful. Measure theory and probability also play roles in the development of pure and applied mathematics, statistics, engineering, physics, and finance. Indeed, it is difficult to overstate their importance in the quantitative disciplines. This book traces an eclectic path through the fundamentals of the topic to make the material accessible to a broad range of students. A Ramble through Probability: How I Learned to Stop Worrying and Love Measure Theory brings together the key elements and applications in a unified presentation aimed at developing intuition; contains an extensive collection of examples that illustrate, explain, and apply the theories; and is supplemented with videos containing commentary and explanations of select proofs on an ancillary website. This book is intended for graduate students in engineering, mathematics, science, and statistics. Researchers who need to use probability theory will also find it useful. It is appropriate for graduate-level courses on measure theory and/or probability theory.




A First Course in Numerical Methods


Book Description

Offers students a practical knowledge of modern techniques in scientific computing.




Mathematical Theory of Finite Elements


Book Description

This book discusses the foundations of the mathematical theory of finite element methods. The focus is on two subjects: the concept of discrete stability, and the theory of conforming elements forming the exact sequence. Both coercive and noncoercive problems are discussed.. Following the historical path of development, the author covers the Ritz and Galerkin methods to Mikhlin’s theory, followed by the Lax–Milgram theorem and Cea’s lemma to the Babuska theorem and Brezzi’s theory. He finishes with an introduction to the discontinuous Petrov–Galerkin (DPG) method with optimal test functions. Based on the author’s personal lecture notes for a popular version of his graduate course on mathematical theory of finite elements, the book includes a unique exposition of the concept of discrete stability and the means to guarantee it, a coherent presentation of finite elements forming the exact grad-curl-div sequence, and an introduction to the DPG method. Intended for graduate students in computational science, engineering, and mathematics programs, Mathematical Theory of Finite Elements is also appropriate for graduate mathematics and mathematically oriented engineering students. Instructors will find the book useful for courses in real analysis, functional analysis, energy (Sobolev) spaces, and Hilbert space methods for PDEs.




Mathematical Foundations of Finite Elements and Iterative Solvers


Book Description

“This book combines an updated look, at an advanced level, of the mathematical theory of the finite element method (including some important recent developments), and a presentation of many of the standard iterative methods for the numerical solution of the linear system of equations that results from finite element discretization, including saddle point problems arising from mixed finite element approximation. For the reader with some prior background in the subject, this text clarifies the importance of the essential ideas and provides a deeper understanding of how the basic concepts fit together.” — Richard S. Falk, Rutgers University “Students of applied mathematics, engineering, and science will welcome this insightful and carefully crafted introduction to the mathematics of finite elements and to algorithms for iterative solvers. Concise, descriptive, and entertaining, the text covers all of the key mathematical ideas and concepts dealing with finite element approximations of problems in mechanics and physics governed by partial differential equations while interweaving basic concepts on Sobolev spaces and basic theorems of functional analysis presented in an effective tutorial style.” — J. Tinsley Oden, The University of Texas at Austin This textbook describes the mathematical principles of the finite element method, a technique that turns a (linear) partial differential equation into a discrete linear system, often amenable to fast linear algebra. Reflecting the author’s decade of experience in the field, Mathematical Foundations of Finite Elements and Iterative Solvers examines the crucial interplay between analysis, discretization, and computations in modern numerical analysis; furthermore, it recounts historical developments leading to current state-of-the-art techniques. While self-contained, this textbook provides a clear and in-depth discussion of several topics, including elliptic problems, continuous Galerkin methods, iterative solvers, advection-diffusion problems, and saddle point problems. Accessible to readers with a beginning background in functional analysis and linear algebra, this text can be used in graduate-level courses on advanced numerical analysis, data science, numerical optimization, and approximation theory. Professionals in numerical analysis and finite element methods will also find the book of interest.




Vector Extrapolation Methods with Applications


Book Description

An important problem that arises in different disciplines of science and engineering is that of computing limits of sequences of vectors of very large dimension. Such sequences arise, for example, in the numerical solution of systems of linear and nonlinear equations by fixed-point iterative methods, and their limits are simply the required solutions to these systems. The convergence of these sequences, which is very slow in many cases, can be accelerated successfully by using suitable vector extrapolation methods. Vector Extrapolation Methods with Applications is the first book fully dedicated to the subject of vector extrapolation methods. It is a self-contained, up-to-date, and state-of-the-art reference on the theory and practice of the most useful methods. It covers all aspects of the subject, including development of the methods, their convergence study, numerically stable algorithms for their implementation, and their various applications. It also provides complete proofs in most places. As an interesting application, the author shows how these methods give rise to rational approximation procedures for vector-valued functions in the complex plane, a subject of importance in model reduction problems among others. This book is intended for numerical analysts, applied mathematicians, and computational scientists and engineers in fields such as computational fluid dynamics, structures, and mechanical and electrical engineering, to name a few. Since it provides complete proofs in most places, it can also serve as a textbook in courses on acceleration of convergence of iterative vector processes, for example.




Model Reduction and Approximation


Book Description

Many physical, chemical, biomedical, and technical processes can be described by partial differential equations or dynamical systems. In spite of increasing computational capacities, many problems are of such high complexity that they are solvable only with severe simplifications, and the design of efficient numerical schemes remains a central research challenge. This book presents a tutorial introduction to recent developments in mathematical methods for model reduction and approximation of complex systems. Model Reduction and Approximation: Theory and Algorithms contains three parts that cover (I) sampling-based methods, such as the reduced basis method and proper orthogonal decomposition, (II) approximation of high-dimensional problems by low-rank tensor techniques, and (III) system-theoretic methods, such as balanced truncation, interpolatory methods, and the Loewner framework. It is tutorial in nature, giving an accessible introduction to state-of-the-art model reduction and approximation methods. It also covers a wide range of methods drawn from typically distinct communities (sampling based, tensor based, system-theoretic).?? This book is intended for researchers interested in model reduction and approximation, particularly graduate students and young researchers.




Methods in Computational Science


Book Description

Computational methods are an integral part of most scientific disciplines, and a rudimentary understanding of their potential and limitations is essential for any scientist or engineer. This textbook introduces computational science through a set of methods and algorithms, with the aim of familiarizing the reader with the field’s theoretical foundations and providing the practical skills to use and develop computational methods. Centered around a set of fundamental algorithms presented in the form of pseudocode, this self-contained textbook extends the classical syllabus with new material, including high performance computing, adjoint methods, machine learning, randomized algorithms, and quantum computing. It presents theoretical material alongside several examples and exercises and provides Python implementations of many key algorithms. Methods in Computational Science is for advanced undergraduate and graduate-level students studying computer science and data science. It can also be used to support continuous learning for practicing mathematicians, data scientists, computer scientists, and engineers in the field of computational science. It is appropriate for courses in advanced numerical analysis, data science, numerical optimization, and approximation theory.




An Introduction to Compressed Sensing


Book Description

Compressed sensing is a relatively recent area of research that refers to the recovery of high-dimensional but low-complexity objects from a limited number of measurements. The topic has applications to signal/image processing and computer algorithms, and it draws from a variety of mathematical techniques such as graph theory, probability theory, linear algebra, and optimization. The author presents significant concepts never before discussed as well as new advances in the theory, providing an in-depth initiation to the field of compressed sensing. An Introduction to Compressed Sensing contains substantial material on graph theory and the design of binary measurement matrices, which is missing in recent texts despite being poised to play a key role in the future of compressed sensing theory. It also covers several new developments in the field and is the only book to thoroughly study the problem of matrix recovery. The book supplies relevant results alongside their proofs in a compact and streamlined presentation that is easy to navigate. The core audience for this book is engineers, computer scientists, and statisticians who are interested in compressed sensing. Professionals working in image processing, speech processing, or seismic signal processing will also find the book of interest.




Finite Element Methods for Computational Fluid Dynamics


Book Description

This informal introduction to computational fluid dynamics and practical guide to numerical simulation of transport phenomena covers the derivation of the governing equations, construction of finite element approximations, and qualitative properties of numerical solutions, among other topics. To make the book accessible to readers with diverse interests and backgrounds, the authors begin at a basic level and advance to numerical tools for increasingly difficult flow problems, emphasizing practical implementation rather than mathematical theory. Finite Element Methods for Computational Fluid Dynamics: A Practical Guide explains the basics of the finite element method (FEM) in the context of simple model problems, illustrated by numerical examples. It comprehensively reviews stabilization techniques for convection-dominated transport problems, introducing the reader to streamline diffusion methods, Petrov?Galerkin approximations, Taylor?Galerkin schemes, flux-corrected transport algorithms, and other nonlinear high-resolution schemes, and covers Petrov?Galerkin stabilization, classical projection schemes, Schur complement solvers, and the implementation of the k-epsilon turbulence model in its presentation of the FEM for incompressible flow problem. The book also describes the open-source finite element library ELMER, which is recommended as a software development kit for advanced applications in an online component.