skillfed

resdata

Package for reading and writing the fortran result files from reservoir simulators

resdata v6.3.3 105.7K downloads/30d#12,684 on PyPI128
Copyleft license GPL-3.0 Active released

What it is and what it does

ResData is a Python library that bridges the gap between Fortran-based reservoir simulation software and Python data analysis workflows. It provides read and write access to the binary result files produced by reservoir simulators—RESTART, INIT, RFT, Summary, and GRID files—in both unified and non-unified, formatted and unformatted variants. The package wraps a C++ implementation using cwrap, giving it performance-critical file I/O while maintaining a Python-friendly interface.

Originally developed as part of the Equinor ERT project, ResData is actively maintained and officially supports Linux and macOS. It depends on numpy, pandas, natsort, typing_extensions, cwrap, and resfo-utilities for its core functionality. The package is suitable for reservoir engineering workflows, simulation result analysis, and data integration pipelines where direct access to simulator output files is needed.

Use it for:

  • Extract and analyze pressure, saturation, or other properties from RESTART files for reservoir engineering studies
  • Convert simulator output files into pandas DataFrames for statistical analysis or visualization
  • Automate batch processing of multiple simulation result sets in production workflows
  • Integrate reservoir simulation data into Python-based decision-support or history-matching systems
  • Read GRID and INIT files to validate reservoir model geometry and initial conditions

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

ResData reads and writes result files from reservoir simulators, including RESTART, INIT, RFT, Summary, and GRID files in both unified and non-unified, formatted and unformatted variants.

Yes, with conditions. Install if you work with Fortran-based reservoir simulator output and need programmatic Python access to those files. The active maintenance, recent release, and lack of known vulnerabilities are strong signals. However, the C++ build dependency and GPLv3 copyleft license require upfront consideration—ensure your build environment has a compatible compiler and that the license terms align with your project's constraints.

Install

resdata on PyPI

pip

pip install resdata

uv

uv add resdata

poetry

poetry add resdata

Installing resdata

Before you install

Medium install friction due to C++ extension layer requiring a C++17-compatible compiler (GCC 8+ or Clang 11+) and CMake/Conan build tooling. Active maintenance with release 1 day old and recent commits indicate solid upkeep.

License in practice

GPLv3 copyleft license means any derivative work or linked application must also be open-source under GPLv3 terms. Suitable for open research and internal tools but requires careful review before use in proprietary products.

Quickstart

pip install resdata

import resdata
# Load a RESTART file
restart = resdata.RestartFile('path/to/file.UNRST')

Requires a C++17-compatible compiler (GCC 8+ or Clang 11+), CMake, and Conan 2 for building from source. Pre-built wheels available for Python 3.11–3.14 on Linux, macOS (ARM64), and Windows.

Verify before relying

  • Whether pre-built wheels fully eliminate the need for a C++ compiler on target systems
  • Specific performance characteristics when handling large RESTART or GRID files
  • Compatibility with non-Equinor reservoir simulators beyond those mentioned

Package facts

License GPL-3.0 (copyleft)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies 6 — cwrap, numpy, pandas, natsort, typing_extensions, resfo-utilities
Maintenance actively maintained — 1 days since the last release
Last repo commit
First released
Downloads 105,733/month — #12,684 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: resdata-6.3.3-cp311-cp311-macosx_11_0_arm64.whl; resdata-6.3.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; resdata-6.3.3-cp311-cp311-win_amd64.whl; resdata-6.3.3-cp312-cp312-macosx_11_0_arm64.whl; resdata-6.3.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; resdata-6.3.3-cp312-cp312-win_amd64.whl; resdata-6.3.3-cp313-cp313-macosx_11_0_arm64.whl; resdata-6.3.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; resdata-6.3.3-cp313-cp313-win_amd64.whl; resdata-6.3.3-cp314-cp314-macosx_11_0_arm64.whl; resdata-6.3.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; resdata-6.3.3-cp314-cp314-win_amd64.whl

Development Status :: 5 - Production/StableEnvironment :: Other EnvironmentIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: GNU General Public License v3 (GPLv3)Natural Language :: EnglishProgramming Language :: PythonProgramming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/EngineeringTopic :: Scientific/Engineering :: PhysicsTopic :: Software Development :: LibrariesTopic :: Utilities

Tags

reservoir simulator file readerfortran result file parsingRESTART INIT GRID file handlerreservoir simulation data I/Osimulator output file processingfortran binary file readerreservoir engineering data tools
reservoir-engineeringfortran-interopscientific-data

More Libraries packages