Skip to main content
Back to top
Ctrl
+
K
Data and Computing for Engineers
Python Programming
1. Python Primer
1.1. Welcome to Jupyter Notebooks and Vocareum
1.2. Python Basics I: Variables, Strings, and Bugs
1.3. Python Basics II: Loopy Logic
1.4. Python Basics III: Lists, Dictionaries, and Enumeration
1.5. Functions and Scope
1.6. Recursion
1.7. Pseudocode
1.8. High/Low Guess My Number Game
1.9. Modules and Files
1.10. Linear Algebra with Numpy and Scipy
1.11. Visualization with matplotlib
1.12. Manipulating Data with Pandas
1.13. Functions as Arguments
1.14. Testing and Debugging in Python
1.15. Preparing Publication Quality Figures in Python
2. Advanced Python
Numerical Methods
3. Linear Algebra Primer
3.1. Chapter 1: Math Fundamentals
3.2. Chapter 2: Intro to Linear Algebra
3.3. Chapter 3: Computational linear algebra
3.4. Chapter 4: Geometric Aspects of Linear Algebra
3.5. Chapter 5: Linear Transformations
3.6. Chapter 6: Theoretical Linear Algebra
4. Applied Linear Algebra
4.1. Modeling Systems of Linear Equations
4.2. Gaussian Elimination
4.3. Invertible Matrix Theorem and Gaussian Elimination Example
4.4. LU Decomposition
4.5. Errors in Linear Systems
4.6. Example: Mass Balances and Linear Algebra
4.7. Linear Algebra Review and SciPy Basics
5. Algorithm Building Blocks
5.1. Taylor Series Approximations
5.2. Finite Difference Derivative Approximations
5.3. Example: Heating a Metal Slab
6. Nonlinear Systems of Equations
6.1. Modeling Systems of Nonlinear Equations: Flash Calculation Example
6.2. Newton-Raphson Method in One Dimension
6.3. More Newton-Type Methods
6.4. Convergence Analysis for Newton-Raphson Methods
6.5. Newton-Raphson Methods for Systems of Equations
6.6. Newton Methods in Scipy
7. Numeric Integration
7.1. Introduction and Newton-Cotes
7.2. Gauss Quadrature
7.3. Scipy Library: Adaptive Methods for Newton-Cotes and Gauss Quadrature
7.4. Application: Inertial Navigation Systems
7.5. Forward and Backward Euler Methods
7.6. Crank-Nicolson (Trapezoid Rule)
7.7. Stability Analysis
7.8. Explicit Range Kutta Method
7.9. Systems of Differential Equations and Scipy
7.10. Example: Reaction Rates
8. Continuous Optimization
8.1. Pyomo Basics
8.2. Electricity Market Optimization
8.3. Flash Calculations in Pyomo
Data Analysis
9. Descriptive Statistics and Visualization
9.1. Sampling
9.2. Summary Statistics
9.3. Visualizing Data
10. Probability Theory
10.1. Basic Ideas of Probability
10.2. Random Variables
10.3. Jointly Distributed Random Variables
10.4. Jointly Continuous Random Variables
10.5. Practice Problems
11. Common Probability Distributions
11.1. Bernoulli Probability Distribution
11.2. Binomial Probability Distributions
11.3. Poisson Probability Distributions
11.4. Normal Probability Distributions
11.5. Summary
12. Uncertainty and Error Propagation
12.1. Measurement Error
12.2. Error Propagation
12.3. Measuring Flowrate Example
12.4. Car and Incline Example
12.5. Simulation
12.6. Monte Carlo Error Propagation
12.7. Practice Problems
13. Statistical Inference
13.1. Central Limit Theorem
13.2. Standard Normal Distribution
13.3. Confidence Intervals
13.4. Student’s t-Distribution
13.5. Hypothesis Testing Basics
13.6. Flavors of Hypothesis Testing
13.7. Type I and Type II Errors
13.8. Statistical Power Basics
13.9. Statistical Power in Python
13.10. Statistical Power Practice Problems
13.11. Bootstrap Confidence Intervals
14. Multivariate Linear Regression
14.1. Correlation, Covariance, and Independence
14.2. Simple Least Squares
14.3. Ordinary Least Squares Linear Regression
14.4. Residual Analysis
14.5. Regression Assumption Examples
14.6. Uncertainty Analysis and Statistical Inference
14.7. Multivariate Linear Regression
14.8. Linear Regression Practice Problems
15. Nonlinear Regression
15.1. Transformations and Linear Regression
15.2. Weighted Linear Regression
15.3. Nonlinear Regression
15.4. Nonlinear Regression Practice Problem
15.5. Monte Carlo Uncertainty Analysis for Nonlinear Regression
15.6. Nonlinear Regression Case Study: Adsorptive Nanoporous Membranes
16. Design of Experiments
16.1. Model-Based Design of Experiments
Extra Information
Fall 2022
Syllabus
Fall 2022 Schedule
Project 1: Computating for Problem Solving (Fall 2022)
Project 2: Data Analysis (Fall 2022)
Fall 2023
Syllabus
Schedule
Semester Project
Problem Set 1
Problem Set 2
Problem Set 3
Problem Set 4
Problem Set 5
Problem Set 6
Contributed Examples
Estimating the Entrance Length of Channel Flow
Non-Isothermal Packed Bed Reactor
Solving Fick’s Second Law Using Numeric Integration
Stochastic Simulation of Chemical Reactions
Spaghettification of the Magic School Bus
Alcohol Pharmacokinetics and Blood Alcohol Content % Modeling
Plotting McCabe-Thiele diagram through computational methods
Example of Mass Balance Problem in Wastewater Treatment Units
Filtration of a Yeast Suspension
Calculating Fraction of Molecular Collisions
Repository
Open issue
Index