FREE DOWNLOAD OPEN BOOKS

Annotated Algorithms in Python

Annotated Algorithms in Python

With applications in Physics, Biology, and Finance

by Massimo Di Pierro


DOWNLOAD EBOOK READ ONLINE SHARE BOOK QR CODE

Book Description

This book is assembled from lectures given by the author over a period of 10 years at the School of Computing of DePaul University. The lectures cover multiple classes, including Analysis and Design of Algorithms, Scientific Computing, Monte Carlo Simulations, and Parallel Algorithms. These lectures teach the core knowledge required by any scientist interested in numerical algorithms and by students interested in computational finance.

The algorithms you will learn can be applied to different disciplines. Throughout history, it is not uncommon that an algorithm invented by a physicist would find application in, for example, biology or finance.

This open book is licensed under a Creative Commons License (CC BY-NC-ND). You can download Annotated Algorithms in Python ebook for free in PDF format (4.6 MB).

Report an issue

Table of Contents

Chapter 1
Introduction
Main Ideas
About Python
Book Structure
Book Software
Chapter 2
Overview of the Python Language
About Python
Types of variables
Python control flow statements
Classes
File input/output
How to import modules
Chapter 3
Theory of Algorithms
Order of growth of algorithms
Recurrence relations
Types of algorithms
Timing algorithms
Data structures
Tree algorithms
Graph algorithms
Greedy algorithms
Artificial intelligence and machine learning
Long and infinite loops
Chapter 4
Numerical Algorithms
Well-posed and stable problems
Approximations and error analysis
Standard strategies
Linear algebra
Sparse matrix inversion
Solvers for nonlinear equations
Optimization in one dimension
Functions of many variables
Nonlinear fitting
Integration
Fourier transforms
Differential equations
Chapter 5
Probability and Statistics
Probability
Combinatorics and discrete random variables
Chapter 6
Random Numbers and Distributions
Randomness, determinism, chaos and order
Real randomness
Entropy generators
Pseudo-randomness
Parallel generators and independent sequences
Generating random numbers from a given distribution
Probability distributions for continuous random variables
Resampling
Binning
Chapter 7
Monte Carlo Simulations
Introduction
Error analysis and the bootstrap method
A general purpose Monte Carlo engine
Monte Carlo integration
Stochastic, Markov, Wiener, and processes
Option pricing
Markov chain Monte Carlo (MCMC) and Metropolis
Simulated annealing
Chapter 8
Parallel Algorithms
Parallel architectures
Parallel metrics
Message passing
mpi4py
Master-Worker and Map-Reduce
pyOpenCL
Appendix A
Math Review and Notation

Book Details

Subject
Computer Science
Publisher
Experts4Solutions
Published
2013
Pages
388
Edition
2
Language
English
ISBN13 Digital
9780991160402
ISBN10 Digital
0991160401
PDF Size
4.6 MB
License
CC BY-NC-ND

Related Books

How To Code in Python 3
How To Code in Python 3

by Lisa Tagliaferri

Extremely versatile and popular among developers, Python is a good general-purpose language that can be used in a variety of applications. For those with an understanding of English, Python is a very humanreadable programming language, allowing for quick comprehension. Because Python supports multiple styles including scripting and object-oriented ...

Invent Your Own Computer Games with Python
Invent Your Own Computer Games with Python

by Al Sweigart

Invent Your Own Computer Games with Python teaches you how to program in the Python language. Each chapter gives you the complete source code for a new game, and then teaches the programming concepts from the examples. Games include Guess the Number, Hangman, Tic Tac Toe, and Reversi. This book also has an introduction to making games with 2D graph...

Graph Algorithms
Graph Algorithms

by Mark Needham, Amy Hodler

Learn how graph algorithms can help you leverage relationships within your data to develop intelligent solutions and enhance your machine learning models. With this practical guide, developers and data scientists will discover how graph analytics deliver value, whether they're used for building dynamic network models or forecasting real-world behav...

Solving PDEs in Python
Solving PDEs in Python

by Hans Petter Langtangen, Anders Logg

This book offers a concise and gentle introduction to finite element programming in Python based on the popular FEniCS software library. Using a series of examples, including the Poisson equation, the equations of linear elasticity, the incompressible Navier - Stokes equations, and systems of nonlinear advection - diffusion - reaction equations, it...

Modeling and Simulation in Python
Modeling and Simulation in Python

by Allen Downey

Modeling and Simulation in Python is an introduction to physical modeling using a computational approach. It is organized in three parts: - The first part presents discrete models, including a bikeshare system and world population growth. - The second part introduces first-order systems, including models of infectious disease, thermal systems, an...

Programming for Computations - Python
Programming for Computations - Python

by Svein Linge, Hans Petter Langtangen

This book presents computer programming as a key method for solving mathematical problems. This second edition of the well-received book has been extensively revised: All code is now written in Python version 3.6 (no longer version 2.7). In addition, the two first chapters of the previous edition have been extended and split up into five new chapte...