Projects in Scientific Computation

Projects in Scientific Computation
Author: Richard E. Crandall
Publisher: Springer Science & Business Media
Total Pages: 500
Release: 2000-06-22
Genre: Computers
ISBN: 9780387950099

This interdisciplinary book provides a compendium of projects, plus numerous example programs for readers to study and explore. Designed for advanced undergraduates or graduates of science, mathematics and engineering who will deal with scientific computation in their future studies and research, it also contains new and useful reference materials for researchers. The problem sets range from the tutorial to exploratory and, at times, to "the impossible". The projects were collected from research results and computational dilemmas during the authors tenure as Chief Scientist at NeXT Computer, and from his lectures at Reed College. The content assumes familiarity with such college topics as calculus, differential equations, and at least elementary programming. Each project focuses on computation, theory, graphics, or a combination of these, and is designed with an estimated level of difficulty. The support code for each takes the form of either C or Mathematica, and is included in the appendix and on the bundled diskette. The algorithms are clearly laid out within the projects, such that the book may be used with other symbolic numerical and algebraic manipulation products

Scientific Computation

Scientific Computation
Author: Gaston H. Gonnet
Publisher: Cambridge University Press
Total Pages: 251
Release: 2009-11-05
Genre: Business & Economics
ISBN: 0521849896

Using real-life applications, this graduate-level textbook introduces different mathematical methods of scientific computation to solve minimization problems using examples ranging from locating an aircraft, finding the best time to replace a computer, analyzing developments on the stock market, and constructing phylogenetic trees. The textbook focuses on several methods, including nonlinear least squares with confidence analysis, singular value decomposition, best basis, dynamic programming, linear programming, and various optimization procedures. Each chapter solves several realistic problems, introducing the modeling optimization techniques and simulation as required. This allows readers to see how the methods are put to use, making it easier to grasp the basic ideas. There are also worked examples, practical notes, and background materials to help the reader understand the topics covered. Interactive exercises are available at www.cambridge.org/9780521849890.

Data-Driven Modeling & Scientific Computation

Data-Driven Modeling & Scientific Computation
Author: Jose Nathan Kutz
Publisher:
Total Pages: 657
Release: 2013-08-08
Genre: Computers
ISBN: 0199660336

Combining scientific computing methods and algorithms with modern data analysis techniques, including basic applications of compressive sensing and machine learning, this book develops techniques that allow for the integration of the dynamics of complex systems and big data. MATLAB is used throughout for mathematical solution strategies.

An Introduction to High-performance Scientific Computing

An Introduction to High-performance Scientific Computing
Author: Lloyd Dudley Fosdick
Publisher: MIT Press
Total Pages: 838
Release: 1996
Genre: Computers
ISBN: 9780262061810

Designed for undergraduates, An Introduction to High-Performance Scientific Computing assumes a basic knowledge of numerical computation and proficiency in Fortran or C programming and can be used in any science, computer science, applied mathematics, or engineering department or by practicing scientists and engineers, especially those associated with one of the national laboratories or supercomputer centers. This text evolved from a new curriculum in scientific computing that was developed to teach undergraduate science and engineering majors how to use high-performance computing systems (supercomputers) in scientific and engineering applications. Designed for undergraduates, An Introduction to High-Performance Scientific Computing assumes a basic knowledge of numerical computation and proficiency in Fortran or C programming and can be used in any science, computer science, applied mathematics, or engineering department or by practicing scientists and engineers, especially those associated with one of the national laboratories or supercomputer centers. The authors begin with a survey of scientific computing and then provide a review of background (numerical analysis, IEEE arithmetic, Unix, Fortran) and tools (elements of MATLAB, IDL, AVS). Next, full coverage is given to scientific visualization and to the architectures (scientific workstations and vector and parallel supercomputers) and performance evaluation needed to solve large-scale problems. The concluding section on applications includes three problems (molecular dynamics, advection, and computerized tomography) that illustrate the challenge of solving problems on a variety of computer architectures as well as the suitability of a particular architecture to solving a particular problem. Finally, since this can only be a hands-on course with extensive programming and experimentation with a variety of architectures and programming paradigms, the authors have provided a laboratory manual and supporting software via anonymous ftp. Scientific and Engineering Computation series

Programming Models for Parallel Computing

Programming Models for Parallel Computing
Author: Pavan Balaji
Publisher: MIT Press
Total Pages: 488
Release: 2015-11-06
Genre: Computers
ISBN: 0262528819

An overview of the most prominent contemporary parallel processing programming models, written in a unique tutorial style. With the coming of the parallel computing era, computer scientists have turned their attention to designing programming models that are suited for high-performance parallel computing and supercomputing systems. Programming parallel systems is complicated by the fact that multiple processing units are simultaneously computing and moving data. This book offers an overview of some of the most prominent parallel programming models used in high-performance computing and supercomputing systems today. The chapters describe the programming models in a unique tutorial style rather than using the formal approach taken in the research literature. The aim is to cover a wide range of parallel programming models, enabling the reader to understand what each has to offer. The book begins with a description of the Message Passing Interface (MPI), the most common parallel programming model for distributed memory computing. It goes on to cover one-sided communication models, ranging from low-level runtime libraries (GASNet, OpenSHMEM) to high-level programming models (UPC, GA, Chapel); task-oriented programming models (Charm++, ADLB, Scioto, Swift, CnC) that allow users to describe their computation and data units as tasks so that the runtime system can manage computation and data movement as necessary; and parallel programming models intended for on-node parallelism in the context of multicore architecture or attached accelerators (OpenMP, Cilk Plus, TBB, CUDA, OpenCL). The book will be a valuable resource for graduate students, researchers, and any scientist who works with data sets and large computations. Contributors Timothy Armstrong, Michael G. Burke, Ralph Butler, Bradford L. Chamberlain, Sunita Chandrasekaran, Barbara Chapman, Jeff Daily, James Dinan, Deepak Eachempati, Ian T. Foster, William D. Gropp, Paul Hargrove, Wen-mei Hwu, Nikhil Jain, Laxmikant Kale, David Kirk, Kath Knobe, Ariram Krishnamoorthy, Jeffery A. Kuehn, Alexey Kukanov, Charles E. Leiserson, Jonathan Lifflander, Ewing Lusk, Tim Mattson, Bruce Palmer, Steven C. Pieper, Stephen W. Poole, Arch D. Robison, Frank Schlimbach, Rajeev Thakur, Abhinav Vishnu, Justin M. Wozniak, Michael Wilde, Kathy Yelick, Yili Zheng

Introduction to the Tools of Scientific Computing

Introduction to the Tools of Scientific Computing
Author: Einar Smith
Publisher: Springer Nature
Total Pages: 344
Release: 2020-12-02
Genre: Mathematics
ISBN: 3030608085

The book provides an introduction to common programming tools and methods in numerical mathematics and scientific computing. Unlike widely used standard approaches, it does not focus on any particular language but aims to explain the key underlying concepts. In general, new concepts are first introduced in the particularly user-friendly Python language and then transferred and expanded in various scientific programming environments from C / C ++, Julia and MATLAB to Maple. This includes different approaches to distributed computing. The fact that different languages are studied and compared also makes the book useful for mathematicians and practitioners trying to decide which programming language to use for which purposes.

Scientific Computing

Scientific Computing
Author: Michael T. Heath
Publisher: SIAM
Total Pages: 587
Release: 2018-11-14
Genre: Science
ISBN: 1611975573

This book differs from traditional numerical analysis texts in that it focuses on the motivation and ideas behind the algorithms presented rather than on detailed analyses of them. It presents a broad overview of methods and software for solving mathematical problems arising in computational modeling and data analysis, including proper problem formulation, selection of effective solution algorithms, and interpretation of results.? In the 20 years since its original publication, the modern, fundamental perspective of this book has aged well, and it continues to be used in the classroom. This Classics edition has been updated to include pointers to Python software and the Chebfun package, expansions on barycentric formulation for Lagrange polynomial interpretation and stochastic methods, and the availability of about 100 interactive educational modules that dynamically illustrate the concepts and algorithms in the book. Scientific Computing: An Introductory Survey, Second Edition is intended as both a textbook and a reference for computationally oriented disciplines that need to solve mathematical problems.

Numerical Analysis and Scientific Computation

Numerical Analysis and Scientific Computation
Author: Jeffery J. Leader
Publisher: Addison-Wesley Longman
Total Pages: 0
Release: 2004
Genre: Numerical analysis
ISBN: 9780201734997

This text is intended for a first course in Numerical Analysis taken by students majoring in mathematics, engineering, computer science, and the sciences. This text emphasizes the mathematical ideas behind the methods and the idea of mixing methods for robustness. The optional use of MATLAB is incorporated throughout the text.

Scientific Programming and Computer Architecture

Scientific Programming and Computer Architecture
Author: Divakar Viswanath
Publisher: MIT Press
Total Pages: 625
Release: 2017-07-28
Genre: Computers
ISBN: 0262036290

A variety of programming models relevant to scientists explained, with an emphasis on how programming constructs map to parts of the computer. What makes computer programs fast or slow? To answer this question, we have to get behind the abstractions of programming languages and look at how a computer really works. This book examines and explains a variety of scientific programming models (programming models relevant to scientists) with an emphasis on how programming constructs map to different parts of the computer's architecture. Two themes emerge: program speed and program modularity. Throughout this book, the premise is to "get under the hood," and the discussion is tied to specific programs. The book digs into linkers, compilers, operating systems, and computer architecture to understand how the different parts of the computer interact with programs. It begins with a review of C/C++ and explanations of how libraries, linkers, and Makefiles work. Programming models covered include Pthreads, OpenMP, MPI, TCP/IP, and CUDA.The emphasis on how computers work leads the reader into computer architecture and occasionally into the operating system kernel. The operating system studied is Linux, the preferred platform for scientific computing. Linux is also open source, which allows users to peer into its inner workings. A brief appendix provides a useful table of machines used to time programs. The book's website (https://github.com/divakarvi/bk-spca) has all the programs described in the book as well as a link to the html text.

Parallel Scientific Computing in C++ and MPI

Parallel Scientific Computing in C++ and MPI
Author: George Em Karniadakis
Publisher: Cambridge University Press
Total Pages: 640
Release: 2003-06-16
Genre: Computers
ISBN: 110749477X

Numerical algorithms, modern programming techniques, and parallel computing are often taught serially across different courses and different textbooks. The need to integrate concepts and tools usually comes only in employment or in research - after the courses are concluded - forcing the student to synthesise what is perceived to be three independent subfields into one. This book provides a seamless approach to stimulate the student simultaneously through the eyes of multiple disciplines, leading to enhanced understanding of scientific computing as a whole. The book includes both basic as well as advanced topics and places equal emphasis on the discretization of partial differential equations and on solvers. Some of the advanced topics include wavelets, high-order methods, non-symmetric systems, and parallelization of sparse systems. The material covered is suited to students from engineering, computer science, physics and mathematics.