- Numerical linear algebra is the basis for all modern computations
- Matrices and their decompositions are the key
- The tools are different for small-scale and large-scale problems
- The idea is to give the basis for other IT courses in Comp. math. track
- Python ecosystem will be used in a consistent manner for lectures and homeworks

- Solve medium-scale numerical linear algebra problems (solve linear systems, compute eigenvalues and eigenvectors) using matrix factorizations
- Iterative methods for sparse/structured systems
- Find which methods are the most appropriate for the particular problem
- Find appropriate software

```
In [1]:
```%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 30, 128)
plt.plot(x, np.sin(2 * x))

```
Out[1]:
```

**Week 1:**Python crash course + some games with matrices**Week 2:**Matrices, vectors, norms, ranks**Week 3:**Linear systems, eigenvectors, eigenvalues**Week 4:**Matrix decompositions (LU, QR, SVD) + test**Week 5:**Sparse matrices and structured matrices**Week 6:**Iterative methods / preconditioners / matrix functions**Week 7:**Ping-pong + written test**Week 8:**Application period

- 6 problem sets
- Each friday (starting from the
**week 2**) will be the deadline - Everybody has a resource of
**5 days**to postpone problem sets deadlines

- 2 written tests (
**week 4**and**week 7**) - Ping-pong test (
**week 7**)

Now let us go to Python intro

```
In [1]:
```from IPython.core.display import HTML
def css_styling():
styles = open("./styles/custom.css", "r").read()
return HTML(styles)
css_styling()

```
Out[1]:
```

```
In [ ]:
```