https://github.com/patnr/HistoryMatching
Notebooks on production optimisation and history matching
https://github.com/patnr/HistoryMatching
data-assimilation history-matching optimization pde-constrained-optimization reservoir-characterization
Last synced: over 1 year ago
JSON representation
Notebooks on production optimisation and history matching
- Host: GitHub
- URL: https://github.com/patnr/HistoryMatching
- Owner: patnr
- License: mit
- Created: 2020-06-14T19:02:16.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-02-12T10:12:50.000Z (over 2 years ago)
- Last Synced: 2024-05-16T10:08:20.606Z (about 2 years ago)
- Topics: data-assimilation, history-matching, optimization, pde-constrained-optimization, reservoir-characterization
- Language: Jupyter Notebook
- Homepage:
- Size: 1.7 MB
- Stars: 20
- Watchers: 2
- Forks: 12
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# History matching tutorial

## Run in the cloud (no installation required)
- on Colab (requires Google login):
[](http://colab.research.google.com/github/patnr/HistoryMatching)
- on a NORCE server (not generally available):
[](https://jupyterhub.fredagsmorgen.no/hub?next=%2Fuser-redirect%2Fgit-pull?repo%3Dhttps%253A%252F%252Fgithub.com%252Fpatricknraanes%252FHistoryMatching%26branch%3Dmaster)
## OR: install
Use this option for development, or if you simply want faster computations
(your typical laptop is 10x faster than Google's free offering).
#### Prerequisite: Python>=3.10
If you're an expert, setup a python environment however you like.
Otherwise:
Install [Anaconda](https://www.anaconda.com/download), then
open the [Anaconda terminal](https://docs.conda.io/projects/conda/en/latest/user-guide/getting-started.html#starting-conda)
and run the following commands:
```bash
conda create --yes --name my-env python=3.10
conda activate my-env
python --version
```
Ensure the printed version is 3.10 or higher.
*Keep using the same terminal for the commands below.*
#### Install
- `git clone` this repository (see the green button up top).
*You could instead download & unzip, but then you will
have to manually download any later updates.*
- Move the resulting folder wherever you like
- `cd` into the folder
- Install requirements:
`pip install -r [path/to/]requirements-dev.txt`
#### Launch
- Launch the "notebook server" by executing:
`jupyter notebook`
This will open up a page in your web browser that is a file navigator.
- Click on `HistoryMatch.ipynb`.
## Developer guide
I prefer to develop mostly in the format of standard python script,
which is why each notebook corresponds to a `.py` file synced via [jupytext](https://jupytext.readthedocs.io/en/latest/).
The synchronization is done whenever the notebook is saved.
Also, if you run `pre-commit install`,
then the notebooks will get synced with the `.py` files before committing.
Linting (which is, as of now, just a suggestion) can be run with
`ruff check --output-format=grouped`.
## Contributors
This work has been developed by *Patrick N. Raanes*, researcher at *NORCE*.
The project has been funded by *DIGIRES*,
a project sponsored by industry partners
and the *PETROMAKS2* programme of the *Research Council of Norway*.