using Pkg
Pkg.add("IJulia")
This should install the IJulia package onto your system.
Once it installs, execute the following:
using IJulia
notebook()
This should open up a new window in your browser with the Jupyter interface.
Most, if not all the course material will be uploaded to the course's git repository.
To download it onto your computer, the easiest thing to do is download git and then run the following command:
git clone https://github.com/alanedelman/18.337_2018.git
This clones the git repository to your local computer. To run the notebooks, you can open up Julia, and execute these commands:
using IJulia
notebook(pwd = "/path/to/18.337/folder/")
where "/path/to/18.337/folder/"
is where you have cloned your git repository.
Try running the notebook titled "Multiple dispatch-Roman numerals & Functions.ipynb" and make sure everything works. Add something fun, or find something you don't yet understand and read the doc or experiment with it. If it's cool share on piazza.
Consider a matrix of the form M(v) = Diagonal(v) + vv'
, where v is a vector.
Create a special type called Custom(v)
which creates such a matrix.
Create a show method to print this matrix in dense format.
The largest eigenvalue of this matrix is the zero of
$$ f(\lambda) = 1 + \sum_{i=1}^{N} \frac{{v_i}^2}{v_i - \lambda} $$
that is bigger than the largest element of v
.
Try to construct an eigmax
routine for this Custom type. Consider Newton's method, bisection, or otherwise.
Use the Sherman-Morrison formula to create an inv
method for such matrices.