The purpose of this extra credit assignment, a tutorial


*.ipynb: down load file (might not work in Chrome or Firefox; it's fine in Internet Explorer)

open the file using the Jupyter notebook or

up load to the Google colab website, then upon saving the file to your google drive (you might have to open your (school) google account beforehand), in the future, you can open the file in google drive, which will open in Google colab.

read the *.ipynb file for the nature of the extra credit.

about the (FREE) Python computer programming language 1 and (FREE) Juypter notebook, an interactive development environment (IDE ), for Python (and other computer programming languages), is to introduce you to Python and a notebook interface, which you can use to prepare your lab report and is a potentially powerful tool in an education 2, research 3, and Business environment.

Using the Juypter notebook emulates three separate software (Word, Excel, and Mathematica), so its use can simplify the preparation of your lab report and could replace a calculator in solving tedious homework problems using its computer algebra package / library, sympy. For ease of reading, put the Python (or Mathematica) code in an appendix at the end of your lab report (and hide the code in the body of your lab report); there is no need to show the Markdown code in Juypter notebook.

Furthermore, the assignment may be of value to future STEM majors as you might use such tools in college 4 and you would develop your life-long learning skills as you use the internet to learn about using the below notebook interface (or IDE) and Python.

The below table briefly compares some of the features of potential notebook interfaces; you may use any of the below resources to prepare your lab report assignment.


Juypter notebook

google colab


cost FREE FREE not free
use web browser yes yes depends*
requires internet access no yes depends*
computer programming language Python; others Python mathematica
software location local drive cloud depends*
code assistant palette no no yes
equation editor for input no no yes
subjective: quality of online support /ease of use B C D
collaboration feature 5 C B C

*due to cloud versus desktop versions of the software.

The preceding *.ipynb file was developed with the Juypter notebook IDE and the instructions in the above assignment are based on the Juypter notebook IDE. While the Google 6 colab website has a similar user interface as the Juypter notebook and both use Python, there are some differences 7.

Mathematica 8 has a better user interface and is installed on the computers in the back of the classroom (pending on school server), but uses the Mathematica programming language (tutorial) and is not free; there's a limited / restricted access using the wolfram programming lab.

The Juypter notebook / Python (& some of its libraries) is installed on computers in the classroom. To use the Juypter notebook at home, recommend that you use Anaconda (system requirements), which includes Python and various Python packages / libraries.


tutoral answer.ipynb

partial template: kinetics.ipynb


1 python tutorials; e.g. scipy lecture notes; Python for scientific computing; Intro to scientific computing in Python

2 e.g. Bryn Mawr 2017; Caltech 2018; UCB 2017, 2018; UCLA 2018; Barba et al 2018; interactive CS; atmospheric science

3 e.g. Nature (2014; 2015; 2018) & Atlantic 2018

4 e.g. Juypter notebook; SageMathCell; Rstudio; mathematica (ucla; ucb; sjsu; sfsu; misc)

5 have no experience using collaboration tools for juypter notebook or mathematica or google colab, so it's just my impression

6 potential privacy issue ? e.g. Forbes 2017; NY Times 2017; EFF (electronic frontier foundation) 2017; 2018

7 e.g. (i) using the "solve" command from sympy, the output will be in LaTex, so select, copy, and paste into a "text" mode cell, then press "Run" to express your answer, (ii) embedded images in Juypter notebook can't be seen using Google colab, and (iii) the colab has a real-time collaboration feature

8 e.g. JCE (2014a; 2014b; 2015; 2017); Wolfram demonstration project