Python based collection of data analysis and visualization tools written in IMAS framework
Project description
IDStools - IMAS IDS Python Tools
A comprehensive Python toolset for working with IMAS (Integrated Modelling and Analysis Suite) Interface Data Structures (IDS) in fusion research.
Overview
IDStools provides a collection of command-line utilities and Python libraries for:
- Database Operations: List, copy, compare, and manipulate IDS data entries
- Data Analysis: Extract, validate, and analyze fusion plasma data
- Visualization: Plot equilibrium, profiles, and other physics quantities
- Format Conversion: Convert GEQDSK files to IDS equilibrium format
Key Features
Database Tools
idslist- List available IDSs and their time slicesidscp- Copy IDSs between data entriesidsdiff- Compare IDSs and highlight differencesidsperf- Profile IDS access performancedblist- List database entries and pulses
Analysis Tools
eqdsk2ids- Convert GEQDSK equilibrium files to IDS formatidsprint- Print IDS data values and structuresidsresample- Resample IDS data in timeplotequilibrium- Plot equilibrium dataplotkineticprofiles- Visualize kinetic profiles
Data Validation
- Built-in COCOS (Coordinate Conventions) validation
- IDS structure and physics consistency checks
- Data quality assessment tools
Installation
From PyPI
pip install imas-idstools
From Source
git clone https://github.com/iter-organization/IDStools.git
cd IDStools
pip install .
Quick Start
List IDSs in a pulse
idslist --uri "imas:mdsplus?user=public;pulse=134174;run=117;database=ITER;version=3"
Plot equilibrium
plotequilibrium --uri "imas:mdsplus?user=public;pulse=134174;run=117;database=ITER;version=3"
Requirements
- Python ≥ 3.8
- IMAS Python Access Layer (
imas-python) - NumPy, Matplotlib, Pandas
- Rich (for enhanced terminal output)
Documentation
Full documentation is available at the project repository. Each tool includes built-in help:
<tool-name> --help
Contributing
We welcome contributions from the fusion community! Please see CONTRIBUTING.md for guidelines.
License
This project is licensed under the terms specified in LICENSE.md.
Support
For questions and support, contact: imas-support@iter.org
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file imas_idstools-2.4.0.tar.gz.
File metadata
- Download URL: imas_idstools-2.4.0.tar.gz
- Upload date:
- Size: 7.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae65aef879c9f88e93f15338af45b39468ba31437accc52dbed1de38aa638cb0
|
|
| MD5 |
fa4c61397e8512f50a9fe5bd96db79d6
|
|
| BLAKE2b-256 |
9699fbcbc220fa0d460f220fd8cbfa60e42ffa28fea14ca001f45c514b105b2e
|
Provenance
The following attestation bundles were made for imas_idstools-2.4.0.tar.gz:
Publisher:
publish.yml on iterorganization/IDStools
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imas_idstools-2.4.0.tar.gz -
Subject digest:
ae65aef879c9f88e93f15338af45b39468ba31437accc52dbed1de38aa638cb0 - Sigstore transparency entry: 761924669
- Sigstore integration time:
-
Permalink:
iterorganization/IDStools@265bc824de65d46b4b1de4cc4992ae11e4e5c68e -
Branch / Tag:
refs/tags/2.4.0 - Owner: https://github.com/iterorganization
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@265bc824de65d46b4b1de4cc4992ae11e4e5c68e -
Trigger Event:
push
-
Statement type:
File details
Details for the file imas_idstools-2.4.0-py3-none-any.whl.
File metadata
- Download URL: imas_idstools-2.4.0-py3-none-any.whl
- Upload date:
- Size: 470.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6d95b336c5ea52f7bf24a6e6984876ec886bcf48a09d059e7d67752cb787addb
|
|
| MD5 |
c5225d0081237a223c26fa20548171c1
|
|
| BLAKE2b-256 |
7ff22244c5695a2a129e2a085ae58b12bc0d998107bf548620f4d36defee2420
|
Provenance
The following attestation bundles were made for imas_idstools-2.4.0-py3-none-any.whl:
Publisher:
publish.yml on iterorganization/IDStools
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imas_idstools-2.4.0-py3-none-any.whl -
Subject digest:
6d95b336c5ea52f7bf24a6e6984876ec886bcf48a09d059e7d67752cb787addb - Sigstore transparency entry: 761924674
- Sigstore integration time:
-
Permalink:
iterorganization/IDStools@265bc824de65d46b4b1de4cc4992ae11e4e5c68e -
Branch / Tag:
refs/tags/2.4.0 - Owner: https://github.com/iterorganization
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@265bc824de65d46b4b1de4cc4992ae11e4e5c68e -
Trigger Event:
push
-
Statement type: