Author(s): Qingkai Kong, Timmy Siauw, Alexandre M. Bayen
Publisher: Elsevier, Year: 2021
ISBN: 9780128195499
Table of contents :
Contents
Figures
Preface
PURPOSE
PREREQUISITES
ORGANIZATION
HOW TO READ THIS BOOK?
WHY PYTHON?
PYTHON AND PACKAGE VERSIONS
PYTHON BASICS
GETTING STARTED WITH PYTHON
PYTHON AS A CALCULATOR
MANAGING PACKAGES
INTRODUCTION TO JUPYTER NOTEBOOK
LOGICAL EXPRESSIONS AND OPERATORS
SUMMARY AND PROBLEMS
VARIABLES & BASIC DATA STRUCTURES
CONTENTS
VARIABLES AND ASSIGNMENT
DATA STRUCTURE – STRING
DATA STRUCTURE – LIST
DATA STRUCTURE – TUPLE
DATA STRUCTURE – SET
DATA STRUCTURE – DICTIONARY
INTRODUCING
ARRAYS
SUMMARY AND PROBLEMS
FUNCTIONS
CONTENTS
FUNCTION BASICS
LOCAL VARIABLES AND GLOBAL VARIABLES
NESTED FUNCTIONS
LAMBDA FUNCTIONS
FUNCTIONS AS ARGUMENTS TO FUNCTIONS
SUMMARY AND PROBLEMS
BRANCHING STATEMENTS
CONTENTS
IF-ELSE STATEMENTS
TERNARY OPERATORS
SUMMARY AND PROBLEMS
ITERATION
CONTENTS
FOR-LOOPS
WHILE LOOPS
COMPREHENSIONS
SUMMARY AND PROBLEMS
RECURSION
CONTENTS
RECURSIVE FUNCTIONS
DIVIDE-AND-CONQUER
SUMMARY AND PROBLEMS
OOP
CONTENTS
INTRODUCTION TO OOP
CLASS AND OBJECT
INHERITANCE, ENCAPSULATION, AND POLYMORPHISM
SUMMARY AND PROBLEMS
COMPLEXITY
CONTENTS
COMPLEXITY AND BIG-O NOTATION
COMPLEXITY MATTERS
THE PROFILER
SUMMARY AND PROBLEMS
REPRESENTATION of NUMBERS
CONTENTS
BASE-N AND BINARY
FLOATING POINT NUMBERS
ROUND-OFF ERRORS
SUMMARY AND PROBLEMS
ERRORS, GOOD PROGRAMMING PRACTICES & DEBUGGING
CONTENTS
ERROR TYPES
AVOIDING ERRORS
TRY/EXCEPT
TYPE CHECKING
DEBUGGING
SUMMARY AND PROBLEMS
READING & WRITING DATA
CONTENTS
TXT FILES
CSV FILES
PICKLE FILES
JSON FILES
HDF5 FILES
SUMMARY AND PROBLEMS
VISUALIZATION & PLOTTING
CONTENTS
D PLOTTING
WORKING WITH MAPS
ANIMATIONS AND MOVIES
SUMMARY AND PROBLEMS
PARALLELIZE PYTHON
CONTENTS
PARALLEL COMPUTING BASICS
MULTIPROCESSING
USING JOBLIB
SUMMARY AND PROBLEMS
LINEAR ALGEBRA & SYSTEMS OF LINEAR EQUATIONS
CONTENTS
BASICS OF LINEAR ALGEBRA
LINEAR TRANSFORMATIONS
SYSTEMS OF LINEAR EQUATIONS
SOLUTIONS TO SYSTEMS OF LINEAR EQUATIONS
SOLVING SYSTEMS OF LINEAR EQUATIONS IN PYTHON
MATRIX INVERSION
SUMMARY AND PROBLEMS
EIGENVALUES & EIGENVECTORS
CONTENTS
EIGENVALUES AND EIGENVECTORS PROBLEM STATEMENT
THE POWER METHOD
THE QR METHOD
EIGENVALUES AND EIGENVECTORS IN PYTHON
SUMMARY AND PROBLEMS
LEAST SQUARES REGRESSION
CONTENTS
LEAST SQUARES REGRESSION PROBLEM STATEMENT
LEAST SQUARES REGRESSION DERIVATION (LINEAR ALGEBRA)
LEAST SQUARES REGRESSION DERIVATION (MULTIVARIATE CALCULUS)
LEAST SQUARES REGRESSION IN PYTHON
LEAST SQUARES REGRESSION FOR NONLINEAR FUNCTIONS
SUMMARY AND PROBLEMS
INTERPOLATION
CONTENTS
INTERPOLATION PROBLEM STATEMENT
LINEAR INTERPOLATION
CUBIC SPLINE INTERPOLATION
LAGRANGE POLYNOMIAL INTERPOLATION
NEWTON’S POLYNOMIAL INTERPOLATION
SUMMARY AND PROBLEMS
TAYLOR SERIES
CONTENTS
EXPRESSING FUNCTIONS USING A TAYLOR SERIES
APPROXIMATIONS USING TAYLOR SERIES
DISCUSSION ABOUT ERRORS
SUMMARY AND PROBLEMS
ROOT FINDING
CONTENTS
ROOT FINDING PROBLEM STATEMENT
TOLERANCE
BISECTION METHOD
NEWTON–RAPHSON METHOD
ROOT FINDING IN PYTHON
SUMMARY AND PROBLEMS
NUMERICAL DIFFERENTIATION
CONTENTS
NUMERICAL DIFFERENTIATION PROBLEM STATEMENT
USING FINITE DIFFERENCE TO APPROXIMATE DERIVATIVES
APPROXIMATING OF HIGHER ORDER DERIVATIVES
NUMERICAL DIFFERENTIATION WITH NOISE
SUMMARY AND PROBLEMS
NUMERICAL INTEGRATION
CONTENTS
NUMERICAL INTEGRATION PROBLEM STATEMENT
RIEMANN INTEGRAL
TRAPEZOID RULE
SIMPSON’S RULE
COMPUTING INTEGRALS IN PYTHON
SUMMARY AND PROBLEMS
ODEs INITIAL-VALUE PROBLEMS
CONTENTS
ODE INITIAL VALUE PROBLEM STATEMENT
REDUCTION OF ORDER
THE EULER METHOD
NUMERICAL ERROR AND INSTABILITY
PREDICTOR–CORRECTOR AND RUNGE–KUTTA METHODS
PYTHON ODE SOLVERS
ADVANCED TOPICS
SUMMARY AND PROBLEMS
BOUNDARY-VALUE PROBLEMS for ODEs
CONTENTS
ODE BOUNDARY VALUE PROBLEM STATEMENT
THE SHOOTING METHOD
THE FINITE DIFFERENCE METHOD
NUMERICAL ERROR AND INSTABILITY
SUMMARY AND PROBLEMS
FOURIER TRANSFORM
CONTENTS
THE BASICS OF WAVES
DISCRETE FOURIER TRANSFORM (DFT)
FAST FOURIER TRANSFORM (FFT)
FFT IN PYTHON
SUMMARY AND PROBLEMS
Python in Windows
A.1 GETTING STARTED WITH PYTHON IN WINDOWS
Index