minireference/noBSLAnotebooks

No bullshit guide to linear algebra notebooks

Jupyter notebooks with exercises for the No bullshit guide to linear algebra.

Abstract

Linear algebra is the study of vectors and linear transformations. You may be familiar with vectors from learning about them in physics class, but in linear algebra vectors will play a central role so you'll get to know them very well, and also study the types of functions you can apply to vectors. In particular we'll study the linear transformations, which are functions that take vectors as inputs and produce vectors as outputs. Linear transformations can be represented by matrices, thus we can also say that linear algebra is the study of vectors and matrices.

Contents

Chapters overview

Video: https://www.youtube.com/watch?v=2G3PmEZI6n8
Notebook: Linear_algebra_chapters_overview.ipynb

Ch2: Definitions of vectors and matrices

Video: https://www.youtube.com/watch?v=5ohBydRZvIU
Notebook: chapter02_definitions.ipynb

Ch2: Linearity

Video: https://www.youtube.com/watch?v=WfrwVMTgrfc
Notebook: chapter02_linearity_intuition.ipynb

Ch3: Gauss-Jordan elimination and Reduced row echelon form

Video: https://www.youtube.com/watch?v=Lfz27_MK-5M
Notebook: chapter03_exercises.ipynb

Ch3: Problems

Notebook: chapter03_problems.ipynb

Ch4: Problems

Notebook: chapter04_problems.ipynb

Other stuff

cut_material/               Less interesting things lessons, and testing
   python_basics_zero_based_indexing.ipynb
   plotting_work.ipynb      example usage for plot_helpers
   Linear_algebra_overview_proj_example.ipynb   first draft of Overview notebook

extra/
   Determinants.ipynb                       Determinant formula from first principles
   Vector fields 2D.ipynb                   examples of vector fields (can be used for vector calc)
   jupyter widgets math demo.ipynb          example interactives in notebook
   python_basics_zero_based_indexing.ipynb  

requirements.txt            python packages required to tun these notebooks

util/                       Utility and support functions
   md_to_ipynb_helper.ipynb convert an outline (markdown list) to notebook cells
   notebook_helpers.py      used in above
   plot_helpers.py          functions for potting vectors, lines, and planes

Install

Create a virtual env and install the packages from requirements.txt:

virtualenv -p python3 venv
source venv/bin/activate
pip install -r requirements.txt

Running

Start the jupyter notebook server using

source pydev/bin/activate
jupyter notebook

then click on the link printed in the terminal to open access the notebook interface in your web browser.

minireference/noBSLAnotebooks
See more ...