How we did it:
For any feedback, any questions, any notes or just for chat - feel free to follow us on social networks
William H. Press
Do you want easy access to the latest methods in scientific computing? This greatly expanded third edition of Numerical Recipes has it, with wider coverage than ever before, many new, expanded and updated sections, and two completely new chapters. The executable C++ code, now printed in colour for easy reading, adopts an object-oriented style particularly suited to scientific applications. Co-authored by four leading scientists from academia and industry, Numerical Recipes starts with basic mathematics and computer science and proceeds to complete, working routines. The whole book is presented in the informal, easy-to-read style that made earlier editions so popular. Highlights of the new material include: a new chapter on classification and inference, Gaussian mixture models, HMMs, hierarchical clustering, and SVMs; a new chapter on computational geometry, covering KD trees, quad- and octrees, Delaunay triangulation, and algorithms for lines, polygons, triangles, and spheres; interior point methods for linear programming; MCMC; an expanded treatment of ODEs with completely new routines; and many new statistical distributions. For support, or to subscribe to an online version, please visit www.nr.com.
William H. Press
The product of a unique collaboration among four leading scientists in academic research and industry, Numerical Recipes is a complete text and reference book on scientific computing. In a self-contained manner it proceeds from mathematical and theoretical considerations to actual practical computer routines. With over 100 new routines bringing the total to well over 300, plus upgraded versions of the original routines, the new edition remains the most practical, comprehensive handbook of scientific computing available today.
Jason Sanders, Edward Kandrot
The complete guide to developing high-performance applications with CUDA - written by CUDA development team members, and supported by NVIDIA * *Breakthrough techniques for using the power of graphics processors to create highperformance general purpose applications. *Packed with realistic, C-based examples -- from basic to advanced. *Covers one of today's most highly-anticipated new technologies for software development wherever performance is crucial: finance, design automation, science, simulation, graphics, and beyond. NVIDIA graphics processors have immense computational power. With NVIDIA's breakthrough CUDA software platform, that power can be put to work in virtually any type of software development that requires exceptionally high performance, from finance to physics. Now, for the first time, two of NVIDIA's senior CUDA developers thoroughly introduce the platform, and show developers exactly how to make the most of it. CUDA C by Example is the first book on CUDA development for professional programmers - and the only book created with NVIDIA's direct involvement. Concise and practical, it focuses on presenting proven techniques and concrete example code for building high-performance parallelized CUDA programs with C. Programmers familiar with C will need no other skills or experience to get started - making high-performance programming more accessible than it's ever been before.
John J. Barton, Lee R. Nackman
Highlights: builds on knowledge of both FORTRAN and C, the languages most familiar to scientists and engineers; systematically treats object-oriented programming, templates, and the C++ type system; relates the C++ programming process to expressing commonality in the design and implementation of programs; describes how to use existing FORTRAN and C subroutine libraries to implement C++ classes; introduces advanced techniques coordinating templates, inheritance, virtual function interfaces, and exceptions in substantive examples; provides examples, including an extensive family of array classes, smart pointers, class wrappers for LAPACK, classes for abstract algebra and dimensional analysis, function objects, exploiting existing C and FORTRAN libraries, automatic differentiation, and data analysis via nonlinear least squares using the singular value decomposition; and references key sources of new programming ideas and C++ programming techniques.
Richard W. Hamming, Richard Wesley Hamming
This inexpensive paperback edition of a groundbreaking text stresses frequency approach in coverage of algorithms, polynomial approximation, Fourier approximation, exponential approximation, and other topics. Revised and enlarged 2nd edition.
Stephen J. Chapman
Chapman's Fortran for Scientists and Engineers is intended for both first year engineering students and practicing engineers. It simultaneously teaches the Fortran 95/2003 programming language, structured programming techniques, and good programming practice. Among its strengths are its concise, clear explanations of Fortran syntax and programming procedures, the inclusion of a wealth of examples and exercises to help students grasp difficult concepts, and its explanations about how to understand code written for older versions of Fortran. We are the most current Fortran book in the market.
Michael Jay Quinn
This volume gives a high-level overview of parallel architectures, including processor arrays, centralized multi-processors, distributed multi-processors, commercial multi-computers and commodity clusters. A six-chapter tutorial introduces 25 MPI functions by developing parallel programs to solve a series of increasingly difficult problems. Each program is taken from problem description through design and analysis to implementation and benchmarking on an actual commodity cluster, providing the reader with a wealth of examples.
Classical FORTRAN is a college text, self-study guide, and reference about computer programming for numerical calculations. The book features a conversational, classroom-proven style that is easy to read and contains numerous case studies and examples. The author provides practical advice on program design, documentation, and coding style and unusually detailed coverage of floating-point arithmetic. He thoroughly discusses performance measurement and optimization and introduces parallel processing using MPI, FORTRAN-90, High Performance FORTRAN, and vector processing. The author also gives expert advice on dealing with troublesome legacy codes.
Learn how to write technical applications in a modern object-oriented approach, using Fortran 90 or 95. This book will teach you how to stop focusing on the traditional procedural abilities of Fortran and to employ the principles of object-oriented programming to produce clear, highly efficient executable codes. In addition to covering the OOP methodologies the book also covers the basic foundation of the language and good programming skills. The author highlights common themes by using comparisons with Matlab and C++ and uses numerous cross-referenced examples to convey all concepts quickly and clearly. Complete code for the examples is included on the book's web site.
Neil A. Gershenfeld
This book first covers exact and approximate analytical techniques (ordinary differential and difference equations, partial differential equations, variational principles, stochastic processes); numerical methods (finite differences for ODE's and PDE's, finite elements, cellular automata); model inference based on observations (function fitting, data transforms, network architectures, search techniques, density estimation); as well as the special role of time in modeling (filtering and state estimation, hidden Markov processes, linear and nonlinear time series). Each of the topics in the book would be the worthy subject of a dedicated text, but only by presenting the material in this way is it possible to make so much material accessible to so many people. Each chapter presents a concise summary of the core results in an area, providing an orientation to what they can (and cannot) do, enough background to use them to solve typical problems, and pointers to access the literature for particular applications.
Michael Metcalf, John Ker Reid, Malcolm Cohen
Fortran remains one of the principal languages used in scientific, numerical, and engineering programming, and a series of revisions to the standard versions of the language have progressively enhanced its power. The latest standard - Fortran 2003 - greatly extends the power of the language, by introducing object-oriented concepts, interoperability with C, better integration with operating systems and many other enhancements. This text details all these new features. Fortran 95/2003 Explained, significantly expands on the second edition of Fortran 90/95 Explained (also published by Oxford University Press): the opening chapters contain a complete description of the Fortran 95 language and are followed by descriptions of three formally approved extensions; six completely new chapters describe in detail the features that are new in Fortran 2003, but the distinction between the various language levels is kept clear throughout. Authored by three leading experts in the development of the language, this is a complete and authoritative description of the two languages (Fortran 95 and Fortran 2003). It is intended for new and existing users of Fortran, and for all those involved in scientific and numerical computing. It is suitable as textbook for teaching and, with its extensive index, as a handy reference for practitioners.
Damian Rouson, Jim Xia, Xiaofeng Xu
This book concerns software design. Although many current discussions of scientific programming focus on scalable performance, this book focuses on scalable design. The authors analyze how the structure of a package determines its developmental complexity according to such measures as bug search times and documentation information content. The work presents arguments for why these issues impact solution cost and time more than does scalable performance. The final chapter explores the question of scalable execution and shows how scalable design relates to scalable execution. The book's focus is on program organization, which has received considerable attention in the broader software engineering community, where graphical description standards for modeling software structure and behavior have been developed by computer scientists. These discussions might be enriched by engineers who write scientific codes. This book aims to bring such scientific programmers into discussion with computer scientists. The authors do so by introducing object-oriented software design patterns in the context of scientific simulation.
Compaq Visual Fortran: A Guide to Creating Windows Applications is the only book that shows developers how to create Windows applications using Visual Fortran software. It complements Digital Press's successful reference, the Digital Visual Fortran Programmer's Guide. Lawrence details development methods and techniques for creating Fortran applications for Windows, the platform upon which developers can use Compaq Visual Fortran (CVF; to be Intel Visual Fortran in the future) to create applications. The book teaches CVF programming progressively, beginning with simple tasks and building up to writing professional-level Win32 applications. Readers will learn about the powerful new CVF graphical user interface, as well as the intricacies of Windows development from a CVF perspective. They can master QuickWin, the Win32 APIs including multiple document interfaces, and Open GL with 3D and interactive graphics. Provides practical, step-by-step instructions for developing Visual Fortran applications Only tutorial text for Compaq Visual Fortran (CVF) Doesn't require the programmer to learn C or C++
Brian D. Hahn
The introduction of the Fortran 90 standard is the first significant change in the Fortran language in over 20 years. this book is designed for anyone wanting to learn Fortran for the first time or or a programmer who needs to upgrade from Fortran 77 to Fortran 90. Employing a practical, problem-based approach this book provides a comprehensive introduction to the language. More experienced programmers will find it a useful update to the new standard and will benefit from the emphasis on science and engineering applications.