This repository organizes the course materials I am teaching at Northwestern University (Fall 2024). The course is designed for Engineering first-year undergraduate students to learn about linear algebra and its applications (Honor Level). Please note the materials are revised by myself with an emphasis on Python (Anaconda Distribution), so they are not exactly the same as the original course materials (The course is taught with an emphasis on MATLAB implementation).
-
Python_basics Folder
- Python_JupyterNotebook: this tutorial notebook provides a quick overview to Python programming. If you're new to programming, this is the perfect starting point.
- NumPy_Matrix: this tutorial notebook covers essential concepts from Linear Algebra (Chapter 1-4 from Linear Algebra and its Applications (5th Edition)) and demonstrates the implementation using NumPy.
- NumPy_Vector: this tutorial notebook covers essential concepts from Vector Analysis (Chapter 6 from Linear Algebra and its Applications (5th Edition)) and demonstrates the implementation using NumPy.
-
Case_studies Folder
- Graph_PageRank: this notebook covers basics about graph powered by NetworkX and PageRank Algorithm (Case Study 1 & Week 1).
- Random_Graph: this notebook covers degree distributions of graphs and different types of random graphs (Week 2).
- Iterative_methods: this notebook covers two common iterative algorithms (Week 3).
- Complex_dynamics: this notebook covers an overview of complex numbers and complex dynamics (fractals) (Week 4).
-
Further_reading Folder: this folder contains a markdown file that primarily lists journal publications in the relevant research areas related to the topics in Case Studies.
Thanks for valuable feedback from Professor Randy Freeman