Skip to main content

Python bindings to the IMAS Access Layer core

Project description

IMAS-Core

Build Open Issues License: LGPL-3.0

IMAS-Core is a lowlevel library with Python bindings for reading and writing fusion experiment data in standard IMAS format.

It provides easy access to data stored in HDF5, MDSplus, and other formats, making it simple to work with fusion physics data across platforms (Linux, macOS, Windows).

This repository contains the Lowlevel components of the Access Layer:

  • C lowlevel interface used by the various High Level Interfaces
  • Python bindings to the lowlevel interface
  • Backends for reading and writing IMAS data
  • MDS+ model logic for creating the models required by the MDS+ backend

Quick Installation

Install IMAS-Core with a single command:

pip install imas-core
python -c "import imas_core"

That's it! No need to compile or configure anything.

Features

  • Easy to Install - Single pip install command
  • Multiple Formats - HDF5, MDSplus, UDA, in-memory, and more
  • Cross-Platform - Works on Linux, macOS, and Windows
  • IMAS Standard - Access standardized fusion data structures
  • Read & Write - Both data access and creation supported

Installation Options

For Python Users (Recommended)

# Simple install from PyPI for Python applications
pip install imas-core

# Verify installation
python -c "import imas; print(imas.__version__)"

For Developers

See Building from Source for detailed build instructions.

Using IMAS-Core with High-Level Languages

When IMAS-Core is built and installed via CMake, it creates a complete runtime environment with:

  • C/C++ Libraries (libal.so) with full headers
  • Python Bindings (imas_core Python package)
  • Fortran Support via pkg-config configuration
  • Java Support via imas.jar
  • MATLAB Support via MEX bindings
  • Models for MDSplus backend access

After installation, configure your environment:

export PATH="/path/to/install/bin:$PATH"
export LD_LIBRARY_PATH="/path/to/install/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="/path/to/install/lib/pkgconfig:$PKG_CONFIG_PATH"
export HDF5_USE_FILE_LOCKING=FALSE
export PYTHONPATH="/path/to/install/lib/pythonX.X/site-packages:$PYTHONPATH"

Then use IMAS-Core from your preferred language:

  • Python: import imas (see examples above)
  • C/C++: Link against libal.so with provided headers
  • Fortran: Use pkg-config to get compiler flags
  • Java: Use imas.jar in your classpath
  • MATLAB: Add MEX directory to MATLAB path

Documentation

System Requirements

  • Python: 3.8 or newer
  • OS: Linux, macOS, or Windows
  • pip: 19.0 or newer

Available Backends

IMAS-Core supports multiple data storage formats:

Backend Use Case Remote File-based
HDF5 Default, local storage No Yes
MDSplus ITER experiments Yes No
UDA Distributed access Yes No
Memory Testing, IPC No No
FlexBuffers Message passing No Yes
ASCII Debugging No Yes

Troubleshooting

Can't find file?

# Check file path
import os
print(os.path.exists('/path/to/file.h5'))

Need help?

What's Included?

IMAS-Core provides:

  • Python API - Full Python bindings with NumPy support
  • Multiple Backends - HDF5, MDSplus, UDA, and more
  • Data Creation - Create and populate IMAS IDS structures
  • Data Access - Read from multiple sources transparently
  • Standard Format - IMAS standardized data structures

For Developers

To build IMAS-Core from source:

git clone https://github.com/iterorganization/IMAS-Core.git
cd IMAS-Core
cmake -Bbuild -GNinja -DAL_PYTHON_BINDINGS=ON -DCMAKE_INSTALL_PREFIX="$(pwd)/test-install"
cmake --build build --target install

See Developer Guide for detailed instructions.

Links

License

IMAS-Core is released under the LGPL-3.0 License

Support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

imas_core-5.6.0-cp314-cp314-win_amd64.whl (6.0 MB view details)

Uploaded CPython 3.14Windows x86-64

imas_core-5.6.0-cp314-cp314-manylinux_2_28_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

imas_core-5.6.0-cp314-cp314-macosx_14_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

imas_core-5.6.0-cp313-cp313-win_amd64.whl (5.6 MB view details)

Uploaded CPython 3.13Windows x86-64

imas_core-5.6.0-cp313-cp313-manylinux_2_28_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

imas_core-5.6.0-cp313-cp313-macosx_14_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

imas_core-5.6.0-cp312-cp312-win_amd64.whl (5.7 MB view details)

Uploaded CPython 3.12Windows x86-64

imas_core-5.6.0-cp312-cp312-manylinux_2_28_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

imas_core-5.6.0-cp312-cp312-macosx_14_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

imas_core-5.6.0-cp311-cp311-win_amd64.whl (5.5 MB view details)

Uploaded CPython 3.11Windows x86-64

imas_core-5.6.0-cp311-cp311-manylinux_2_28_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

imas_core-5.6.0-cp311-cp311-macosx_14_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

imas_core-5.6.0-cp310-cp310-win_amd64.whl (5.1 MB view details)

Uploaded CPython 3.10Windows x86-64

imas_core-5.6.0-cp310-cp310-manylinux_2_28_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

imas_core-5.6.0-cp310-cp310-macosx_14_0_arm64.whl (5.9 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

File details

Details for the file imas_core-5.6.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: imas_core-5.6.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imas_core-5.6.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 fbbfde24fee479b8a0bb4895f8d7a7e350bc262bae394b70aab702c90e64d330
MD5 400848a01889c500f7aacb1bf3dc2568
BLAKE2b-256 638e29968fc6f699216ec9ebaf1a5dfa56400f903b38be96a6ec5f3212f0a7b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp314-cp314-win_amd64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 df278e0ba1810d39183e9bf4646bdfe76967585cd69f6b8c6194e6c7a90a7894
MD5 17b24b30f44a751da213486ef061e212
BLAKE2b-256 ea897b1a3b9f62c31ccfd78aaf7df8600b670b78d03162fd304f2d2c720e9e58

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp314-cp314-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 7b1d07d5ce173abf8f577a017f08ceb9c14b1e9a158ce49ab4ae220205ca29b1
MD5 dcad6336f7d5359c89365bcbfbd8dab9
BLAKE2b-256 3d89a7bd6d7691fa311f1e7532bf50bcd78bc21b80e6cd1c24efe1711c9b45b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp314-cp314-macosx_14_0_arm64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: imas_core-5.6.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imas_core-5.6.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ef1bc4d9da0b421c219cb7de0cfb844d5f38d24ff9ad5292f82dccb063e99863
MD5 1b2b06106db7ad9b97d0fefcb352a3da
BLAKE2b-256 5f62894b02450df6af0291e5bcdabf90557bc10573bebc14a4f5ece5444f1fcd

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 de4395a637e6bea5b76d781fa0b925108accd052fbc8abf7f9e7a2b82de3a9c1
MD5 8b08930faa0ca6853c60428a873b8d53
BLAKE2b-256 84fed9bf1bf8720fdc3c89cc28134c96fbe93385db5ffdb23fad8e6c255f03a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 bbfdc8e86fb38672a84d6faf24571f9ce88092b5e9890681123e1df706735abb
MD5 ac136cfdffd9b15ae38f9b791c99a5eb
BLAKE2b-256 538035195b44ebd51ad7895eee798fdd56246daf8b776e57161b56e132f97183

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp313-cp313-macosx_14_0_arm64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: imas_core-5.6.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.7 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imas_core-5.6.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 78ecff07bd256cf91a983b158161ebd70cad84774ffb6e1d708a9a207df165fd
MD5 52400d00277da93b935feafeee5e8710
BLAKE2b-256 5bd1df6854a50ba0dc16157528bfd953ed4278149f4b4bddf6f9a235ebf1ddd4

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 810e4876a3faf2ead9355a6225c6417fa4d269bfd56aac68c17c8834effebdab
MD5 88c3c35cb7d40012be54963d4ae33129
BLAKE2b-256 34dbf2da8ce17f112582079114fef00ac610834a40fd1b525c752b2d12ac2afa

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 2954879f97a9bf99609519fd08f07f286f5c3f80b8767cc933dd3a870674cca2
MD5 e6fc398266fab4aeb2eebdce2bf2bf7c
BLAKE2b-256 5d787f52bd24399e2a7778f1169331637f2ef88bd285a0e99ca6dd4d2ee7f707

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp312-cp312-macosx_14_0_arm64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: imas_core-5.6.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imas_core-5.6.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b890716f69c81d3af4122ee71877b02f3b55793ca52e22e270140b16fdc207ce
MD5 afebb2a8532910dbd274abc07e11b92b
BLAKE2b-256 82a7e30db8a3162700f4b99124213b3ec0581d5106b1938909e764a824de461e

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 91ba98e39e2fcf2aaf5e4e4cb0a0973891402cf490dee8c0e7eec7b21b4402dd
MD5 da714b3fae11dce488bc590e2c9e78b0
BLAKE2b-256 09c4b8834465d6876f09b0d0ad13282dbd4cbefbabfa28524e079b75ab3db571

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 f2c206d46064863f289bf600b601d80974d63b3376d54769af7ec818f6d7d99c
MD5 aef2f4a3c87a7f8505ca6ac5986f0162
BLAKE2b-256 b610e883b6cc378cc02d1000a4f9723fcef3e7fdf4c1671acb7ad5e08bb76be7

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: imas_core-5.6.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for imas_core-5.6.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 4aedaa2cfbff4165bf666a9560066f967195caa249ac20e0cb107c48cb2e9ff1
MD5 0dac75718ba5c638aa77cf40fa6e8c64
BLAKE2b-256 bbecfb3d0a9f7bd03c6f3b6cb3900d252a690cfb3dc0169d43e94d8716dff00d

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 21a6a877877b6dad28f38dc984847a60eeb643c5b21ae8370090115b7b0d7d88
MD5 ab20e7df41cf7ff8e926a4c8bf22e0e1
BLAKE2b-256 89798a971124d0377ecc7ab2f5c4f9c820cbdb55160f4472b320ead4b4a3fa58

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imas_core-5.6.0-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for imas_core-5.6.0-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 f6bcce866b51b5b5dfd8c8ba38817cc60d420e22268e8e6f7e1d9cb55bf7c882
MD5 f921a03680af443e08e80728499d27c8
BLAKE2b-256 7bed90428a82ba548980146bf4a29baa18c006a390c661194fb1c53140393d49

See more details on using hashes here.

Provenance

The following attestation bundles were made for imas_core-5.6.0-cp310-cp310-macosx_14_0_arm64.whl:

Publisher: wheels.yml on iterorganization/IMAS-Core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page