MDSplus Overview

MDSplus is a data acquisition, storage, and management system originally developed to support large magnetic fusion experiments and has since been adopted by a wide range of laboratory and facility-scale scientific programs. Conceptually, MDSplus organizes experimental data into *trees*, where each tree corresponds to an experiment, diagnostic system, or logical grouping of signals. Within a tree, data are stored in a hierarchical structure of *nodes* that can represent raw signals, processed data, metadata, expressions, or references to external data. This design allows data producers to capture both the numerical values and the contextual information needed to interpret them, while enabling users to navigate complex diagnostic systems in a consistent way. A key feature of MDSplus is that data are typically indexed by a shot number (or pulse number), which uniquely identifies an experimental discharge and provides a natural unit of organization for time-dependent experiments. The system supports lazy evaluation of expressions, transparent access to local or remote data, and multiple data types and dimensionalities, making it well suited for experiments with heterogeneous diagnostics and long operational histories.

Operationally, MDSplus follows a client-server model. Data are written to disk by acquisition systems or post-processing jobs, while users access the data through libraries that communicate with an MDSplus server. When a client opens a tree for a given shot, the server resolves node paths, retrieves data from disk (or evaluates expressions if needed), and returns arrays along with associated metadata such as units and descriptions. This architecture allows users to work with data stored on centralized servers without needing direct filesystem access, and it supports concurrent access by many users and applications. Trees are often split by function—for example, separate trees for magnetics, spectroscopy, equilibrium reconstruction, or engineering systems—while maintaining consistent shot numbering across trees.

For more information, visit the MDSplus website.

NSTX/NSTX-U MDSplus Installation

MDSplus is the primary data system for the NSTX-U experiment. Standard trees include both physics diagnostics and engineering systems, as well as derived data products such as equilibrium reconstructions. A list of all NSTX-U MDSplus trees can be reviewed here and a fairly comprehensive list of labels can be found here.

Utilities available for working with MDSplus data include:

Specialized Languages

Example programming interfaces for accessing NSTX-U MDSplus data include: