MAST → IMAS IDS (imas-python + UDA) → NetCDF, versioned in object store (VirtualiZarr + icechunk)

Open
#44 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
32/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Active
Tech stack
python

Research direction

Start in the dedicated fds/mast-imas-ingestion repository, since the core FDS issue contains no implementation files or tests. Review how the repository handles the MAST-to-IMAS mapping, NetCDF generation, and VirtualiZarr/icechunk object-store stages. Done means a working end-to-end demonstration plus notes on viability, gaps, and production recommendations.

Written by the indexing model from the issue text.

Description

data-access fair-compliance feature infrastructure

Summary

Track the work led by Khalid (@ds2718) to demonstrate an end-to-end ingestion path for MAST data into IMAS IDSs and a chunked, versioned object-store representation.

Scope

  1. IDS mapping via UDA — use imas-python with the UDA backend to map MAST data into IMAS IDSs on the fly.
  2. NetCDF generation — produce NetCDF outputs of the mapped MAST data using Imas-python.
  3. Virtual, versioned storage — use VirtualiZarr + icechunk to provide chunked, versioned representations of these datasets in an object store.

Deliverables

  • A working demonstration of the pipeline (MAST → imas-python+UDA → IDS → NetCDF → VirtualiZarr/icechunk in object store).
  • Notes / findings on viability, gaps, and recommendations for productionising.

Code home

Implementation lives in the dedicated ingestion repo: fds/mast-imas-ingestion (https://git.ccfe.ac.uk/fds/mast-imas-ingestion).
This issue stays here in the core FDS repo for tracking for now.

Milestone

Targeted for v0.1 — Ingestion & IMAS (due 2026-09-30).


Migrated from the internal tracker, where it was #14, opened 2026-06-22.

Dominant language
Python
Stars
0
Forks
1
Avg merge
26m
Merged PRs (30d)
24

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ukaea/fds

All issues in ukaea/fds

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.