Skip to main content

IMAS Data Dictionaries converted to Python Dataclass used in the IMAS-GK/IDSPy parser

Project description

IDSPy_Dictionaries

IMAS Data Dictionaries converted to Python Dataclass used in the IDSPy suite.

Prerequisites

To use this script, you need to have Python 3.9 or later installed. You can download Python from https://www.python.org/downloads/. Please note that Python at least 3.10 is recommended.

Installation

To install the necessary packages, run the following command:

python -m pip install idspy_dictionaries

Usage

To load the desired IDS :

from idspy_dictionaries import ids_gyrokinetics_local # or any other available IDS
new_ids = ids_gyrokinetics_local.Gyrokinetics()

FAQ

Q: What is the minimum required version of Python to run this script?
A: The recommended version of Python is 3.10. It can be used with Python >= 3.9

but there is no support in that case.

Q: Can I add new members to the dataclasses?

A: This option is not possible to be sure that the dataclasses follow the IMAS conventions.

Q: Is the package compatible with pydantic and/or attrs?

A: Short answer, no ;)

Q: I would really like to use python <3.9 is it really impossible?
A: IDSPy_dictionaries used mainly python dataclasses and the slot property which had been added in python 3.10 only.

The main reason to use __slots__ is to avoid addition of members in the IDS and remains fully compliant with IMAS. A version of the package had been published “as it is” without the slots dependency but need at least python 3.9. The way dataclasses are generated with the associated fields, at the opposite, is not compatible at all with python 3.8.

Q: Can I load all the dictionaries at once?

A: For performances reasons, it’s not possible right now.

Project details


Download files

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

Source Distribution

idspy_dictionaries-40001.5.1.tar.gz (424.5 kB view details)

Uploaded Source

Built Distribution

idspy_dictionaries-40001.5.1-py3-none-any.whl (551.5 kB view details)

Uploaded Python 3

File details

Details for the file idspy_dictionaries-40001.5.1.tar.gz.

File metadata

  • Download URL: idspy_dictionaries-40001.5.1.tar.gz
  • Upload date:
  • Size: 424.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.10

File hashes

Hashes for idspy_dictionaries-40001.5.1.tar.gz
Algorithm Hash digest
SHA256 bdfcc6331324213d9f01c5ec760bb4b6744b147de9819abc1d446e9cb5bde177
MD5 3e2c1f038ace029e8947f523203c98f4
BLAKE2b-256 0b27318428367700d90ffc9a6eb9780b4b12ac797cc4e32b26d1a316ddbac72a

See more details on using hashes here.

File details

Details for the file idspy_dictionaries-40001.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for idspy_dictionaries-40001.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1c9a64f81de61d3bee4dd231a279cf6e0339f80d6a5acb4eafcc92317630825f
MD5 c97298bd9cfe9d89d00518a93dc567d4
BLAKE2b-256 e13f3332798d4d84ed84bd79e32a57193e633bf9905803f1018c5e544250494d

See more details on using hashes here.

Supported by

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