Intro to data assimilation (DA) and the EnKF
An interactive (Jupyter notebook) tutorial. Jump right in (no installation!) by clicking the button of one of these cloud computing providers:
Prerequisites: basics of calculus, matrices (e.g. inverses), random variables, Python (numpy).
Instructions for working locally
If you prefer, you can also run these notebooks on your own (Linux/Windows/Mac) computer. This is a bit snappier than running them online.
-
Prerequisite: Python 3.12.
If you're an expert, setup a python environment however you like. Otherwise: Install Anaconda, then open the Anaconda terminal and run the following commands:conda create --yes --name my-env python=3.12
conda activate my-env
python --versionEnsure the printed version is 3.12.
Keep using the same terminal for the commands below. -
Install:
- Download and unzip (or
git clone) this repository (see the green button up top) - Move the resulting folder wherever you like
cdinto the folder- Install requirements:
pip install -r path/to/requirements.txt
- Download and unzip (or
-
Launch the Jupyter notebooks:
- Launch the "notebook server" by executing:
jupyter-notebook
This will open up a page in your web browser that is a file navigator. - Enter the folder
DA-tutorials/notebooks, and click on a tutorial (T1... .ipynb).
- Launch the "notebook server" by executing:
Developer notes
Please don't hesitate to submit issues or pull requests!
Why nb_mirrors/ dir?
- Easier to read git diffs
- Enable importing from notebook (script mirrors)
Target audience
Students in their 3rd year or above in university.
Prerequisites: some experience with of numpy (Python) as well as 1st-year, university-level statistics and linear algebra.
Citing
Please cite as
author = {Raanes, Patrick N.},
title = {Improvements to Ensemble Methods for Data Assimilation in the Geosciences},
school = {University of Oxford},
year = {2016},
month = {January}
}