# Tutorial

These tutorials are the best place to learn about the basic features and the algorithms in `hIPPYlib`

.
For the complete API reference click here.

- FEniCS101 notebook illustrates the use of FEniCS for the solution of a linear boundary value problem.
- Poisson Deterministic notebook illustrates how to compute gradient/Hessian information and solve a non-linear parameter inversion for the Poisson equation in a deterministic setting.
- Subsurface Bayesian notebook illustrates how to solve a non-linear parameter inversion for the Poisson equation in a Bayesian setting.
- Advection-Diffusion Bayesian notebook illustrates how to solve a time-dependent linear inverse problem in a Bayesian setting.
- Hessian Spectrum notebook illustrates the spectral property of the Hessian operator for a linear source inversion problem.

The interactive ipython notebooks are located in the `tutorial`

folder of the `hIPPYlib`

release.

To run the notebooks follow these instructions.

- Open a FEniCS terminal and type

```
$ cd tutorial
$ jupyter notebook
```

- A new tab will open in your web-brower showing the notebooks.
- Click on the notebook you would like to use.
- To run all the code in the notebook simply click on Cell --> Run All.

For more information on installing ipython and using notebooks see here.

## Additional resources

For additional resources and tutorials please see the teaching material for the
*2018 Gene Golub SIAM Summer School* on *Inverse Problems: Systematic Integration of Data with Models under Uncertainty* available here.

## Tutorial for `hIPPYlib`

1.x

For `hIPPYlib`

version 1.6.0 see here