ert


Nameert JSON
Version 14.4.2 PyPI version JSON
download
home_pageNone
SummaryEnsemble based Reservoir Tool (ERT)
upload_time2025-07-09 18:32:02
maintainerNone
docs_urlNone
authorNone
requires_python<3.14,>=3.11
licenseGPL-3.0
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            <h1 align="center">
<img src="https://raw.githubusercontent.com/equinor/ert/main/src/ert/gui/resources/gui/img/ert_icon.svg" width="200">
</h1>

[![Build Status](https://github.com/equinor/ert/actions/workflows/build_and_test.yml/badge.svg)](https://github.com/equinor/ert/actions/workflows/build_and_test.yml)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/ert)](https://img.shields.io/pypi/pyversions/ert)
[![Code Style](https://github.com/equinor/ert/actions/workflows/style.yml/badge.svg)](https://github.com/equinor/ert/actions/workflows/style.yml)
[![Type checking](https://github.com/equinor/ert/actions/workflows/typing.yml/badge.svg)](https://github.com/equinor/ert/actions/workflows/typing.yml)
[![codecov](https://codecov.io/gh/equinor/ert/graph/badge.svg?token=keVAcWavZ1)](https://codecov.io/gh/equinor/ert)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)

ert - Ensemble based Reservoir Tool - is designed for running
ensembles of dynamical models such as reservoir models,
in order to do sensitivity analysis and data assimilation.
ert supports data assimilation using the Ensemble Smoother (ES) and
Ensemble Smoother with Multiple Data Assimilation (ES-MDA).

## Installation

```sh
pip install ert
ert --help
```

or, for the latest development version:

```sh
pip install git+https://github.com/equinor/ert.git@main
ert --help
```

For examples and help with configuration, see the [ert Documentation](https://ert.readthedocs.io/en/latest/getting_started/configuration/poly_new/guide.html#configuration-guide).

# Everestâ„¢

The primary goal of the Everest tool is to find *optimal* well
planning and production strategies by utilizing an ensemble of
reservoir models (e.g., an ensemble of geologically-consistent models).
This will enable robust decisions about drilling schedule and well
placement, in order to achieve results of significant practical value.

```sh
pip install ert[everest]
```

## Developing

We use uv to have one synchronized development environment for all packages.
See [installing uv](https://docs.astral.sh/uv/getting-started/installation/). We
recommend either installing uv using your systems package manager, or creating
a small virtual environment you intall base packages into (such as `uv` and `pre-commit`).

Once uv is installed, you can get a development environment by running:

```sh
git clone https://github.com/equinor/ert
cd ert
uv sync --all-extras
```

### Test setup

The tests can be ran with pytest directly, but this is very slow:

```sh
uv run pytest tests/
```

There are many kinds of tests in the `tests` directory, while iterating on your
code you can run a fast subset of the tests with by using the rapid checks from the
justfile:

```sh
uv run just rapid-tests
```

You can also run all of the checks in parallel with

```sh
uv run just check-all
```

[Git LFS](https://git-lfs.com/) must be installed to get all the files. This is
packaged as `git-lfs` on Ubuntu, Fedora or macOS Homebrew.  For Equinor TGX
users, it is preinstalled.

If you have not used git-lfs before, you might have to make changes to your global Git config for git-lfs to work properly.
```sh
git lfs install
```

test-data/ert/block_storage is a submodule and must be checked out.
```sh
git submodule update --init --recursive
```

If you checked out submodules without having git lfs installed, you can force git lfs to run in all submodules with:
```sh
git submodule foreach "git lfs pull"
```

### Build documentation

You can build the documentation after installation by running
```sh
uv run just build-docs
```
and then open the generated `./ert_docs/index.html` or
`./everest_docs/index.html` in a browser.

To automatically reload on changes you may use

```sh
uv run sphinx-autobuild docs docs/_build/html
```

### Style requirements

There are a set of style requirements, which are gathered in the `pre-commit`
configuration, to have it automatically run on each commit do:

```sh
pip install pre-commit
pre-commit install
```

There is also a pre-push hook configured in `pre-commit` to run a collection of
relatively fast tests, to install this hook:

```sh
pre-commit install --hook-type pre-push
```


### Trouble with setup

As a simple test of your `ert` installation, you may try to run one of the
examples, for instance:


```sh
uv run just poly
```
This opens up the ert graphical user interface with a simple example using
polynomials (see `./test-data/ert/poly_example`).

Finally, test ert by starting and successfully running the experiment.

### Notes

The default maximum number of open files is normally relatively low on MacOS
and some Linux distributions. This is likely to make tests crash with mysterious
error-messages. You can inspect the current limits in your shell by issuing the
command `ulimit -a`. In order to increase maximum number of open files, run
`ulimit -n 16384` (or some other large number) and put the command in your
`.profile` to make it persist.

### ert with a reservoir simulator
To actually get ert to work at your site you need to configure details about
your system; at the very least this means you must configure where your
reservoir simulator is installed. In addition you might want to configure e.g.
queue system in the `site-config` file, but that is not strictly necessary for
a basic test.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "ert",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.14,>=3.11",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "Equinor ASA <fg_sib-scout@equinor.com>",
    "download_url": null,
    "platform": "all",
    "description": "<h1 align=\"center\">\n<img src=\"https://raw.githubusercontent.com/equinor/ert/main/src/ert/gui/resources/gui/img/ert_icon.svg\" width=\"200\">\n</h1>\n\n[![Build Status](https://github.com/equinor/ert/actions/workflows/build_and_test.yml/badge.svg)](https://github.com/equinor/ert/actions/workflows/build_and_test.yml)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/ert)](https://img.shields.io/pypi/pyversions/ert)\n[![Code Style](https://github.com/equinor/ert/actions/workflows/style.yml/badge.svg)](https://github.com/equinor/ert/actions/workflows/style.yml)\n[![Type checking](https://github.com/equinor/ert/actions/workflows/typing.yml/badge.svg)](https://github.com/equinor/ert/actions/workflows/typing.yml)\n[![codecov](https://codecov.io/gh/equinor/ert/graph/badge.svg?token=keVAcWavZ1)](https://codecov.io/gh/equinor/ert)\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n\nert - Ensemble based Reservoir Tool - is designed for running\nensembles of dynamical models such as reservoir models,\nin order to do sensitivity analysis and data assimilation.\nert supports data assimilation using the Ensemble Smoother (ES) and\nEnsemble Smoother with Multiple Data Assimilation (ES-MDA).\n\n## Installation\n\n```sh\npip install ert\nert --help\n```\n\nor, for the latest development version:\n\n```sh\npip install git+https://github.com/equinor/ert.git@main\nert --help\n```\n\nFor examples and help with configuration, see the [ert Documentation](https://ert.readthedocs.io/en/latest/getting_started/configuration/poly_new/guide.html#configuration-guide).\n\n# Everest\u2122\n\nThe primary goal of the Everest tool is to find *optimal* well\nplanning and production strategies by utilizing an ensemble of\nreservoir models (e.g., an ensemble of geologically-consistent models).\nThis will enable robust decisions about drilling schedule and well\nplacement, in order to achieve results of significant practical value.\n\n```sh\npip install ert[everest]\n```\n\n## Developing\n\nWe use uv to have one synchronized development environment for all packages.\nSee [installing uv](https://docs.astral.sh/uv/getting-started/installation/). We\nrecommend either installing uv using your systems package manager, or creating\na small virtual environment you intall base packages into (such as `uv` and `pre-commit`).\n\nOnce uv is installed, you can get a development environment by running:\n\n```sh\ngit clone https://github.com/equinor/ert\ncd ert\nuv sync --all-extras\n```\n\n### Test setup\n\nThe tests can be ran with pytest directly, but this is very slow:\n\n```sh\nuv run pytest tests/\n```\n\nThere are many kinds of tests in the `tests` directory, while iterating on your\ncode you can run a fast subset of the tests with by using the rapid checks from the\njustfile:\n\n```sh\nuv run just rapid-tests\n```\n\nYou can also run all of the checks in parallel with\n\n```sh\nuv run just check-all\n```\n\n[Git LFS](https://git-lfs.com/) must be installed to get all the files. This is\npackaged as `git-lfs` on Ubuntu, Fedora or macOS Homebrew.  For Equinor TGX\nusers, it is preinstalled.\n\nIf you have not used git-lfs before, you might have to make changes to your global Git config for git-lfs to work properly.\n```sh\ngit lfs install\n```\n\ntest-data/ert/block_storage is a submodule and must be checked out.\n```sh\ngit submodule update --init --recursive\n```\n\nIf you checked out submodules without having git lfs installed, you can force git lfs to run in all submodules with:\n```sh\ngit submodule foreach \"git lfs pull\"\n```\n\n### Build documentation\n\nYou can build the documentation after installation by running\n```sh\nuv run just build-docs\n```\nand then open the generated `./ert_docs/index.html` or\n`./everest_docs/index.html` in a browser.\n\nTo automatically reload on changes you may use\n\n```sh\nuv run sphinx-autobuild docs docs/_build/html\n```\n\n### Style requirements\n\nThere are a set of style requirements, which are gathered in the `pre-commit`\nconfiguration, to have it automatically run on each commit do:\n\n```sh\npip install pre-commit\npre-commit install\n```\n\nThere is also a pre-push hook configured in `pre-commit` to run a collection of\nrelatively fast tests, to install this hook:\n\n```sh\npre-commit install --hook-type pre-push\n```\n\n\n### Trouble with setup\n\nAs a simple test of your `ert` installation, you may try to run one of the\nexamples, for instance:\n\n\n```sh\nuv run just poly\n```\nThis opens up the ert graphical user interface with a simple example using\npolynomials (see `./test-data/ert/poly_example`).\n\nFinally, test ert by starting and successfully running the experiment.\n\n### Notes\n\nThe default maximum number of open files is normally relatively low on MacOS\nand some Linux distributions. This is likely to make tests crash with mysterious\nerror-messages. You can inspect the current limits in your shell by issuing the\ncommand `ulimit -a`. In order to increase maximum number of open files, run\n`ulimit -n 16384` (or some other large number) and put the command in your\n`.profile` to make it persist.\n\n### ert with a reservoir simulator\nTo actually get ert to work at your site you need to configure details about\nyour system; at the very least this means you must configure where your\nreservoir simulator is installed. In addition you might want to configure e.g.\nqueue system in the `site-config` file, but that is not strictly necessary for\na basic test.\n",
    "bugtrack_url": null,
    "license": "GPL-3.0",
    "summary": "Ensemble based Reservoir Tool (ERT)",
    "version": "14.4.2",
    "project_urls": {
        "Repository": "https://github.com/equinor/ert"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e7bae04f75adf45d47a8f6f6e2486f1ebce8ad0e08204b6a95e932eceabc17ee",
                "md5": "324d645fedd882d38921784bf7f2366b",
                "sha256": "0994464a9fad02f82aebb7b6e546d484edafdd004b0360d13e64af77a3f8c2b4"
            },
            "downloads": -1,
            "filename": "ert-14.4.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "324d645fedd882d38921784bf7f2366b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.14,>=3.11",
            "size": 705691,
            "upload_time": "2025-07-09T18:32:02",
            "upload_time_iso_8601": "2025-07-09T18:32:02.730320Z",
            "url": "https://files.pythonhosted.org/packages/e7/ba/e04f75adf45d47a8f6f6e2486f1ebce8ad0e08204b6a95e932eceabc17ee/ert-14.4.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-09 18:32:02",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "equinor",
    "github_project": "ert",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "ert"
}
        
Elapsed time: 1.39803s