The Waveform Editor is a Python tool for creating and managing 1D time-dependent data called waveforms. It utilizes a human-readable, text-based file format where waveforms are described using descriptive tendencies, such as sine waves or linear ramps. The Waveform Editor includes a GUI for interactive creation, editing, and organization of waveforms.
This project is currently under active development. While a functional prototype and core features are already implemented, additional features, usability improvements, and integrations are in progress. The following features are planned for the coming months:
- UI usability enhancements
- Derived waveform expressions: define waveforms from existing ones using expanded math operations and custom Python functions
- MUSCLE3 actor integration
- Drag-and-drop editing for piecewise linear tendencies
- Integration of Plasma Shape Editor: construct waveforms directly from equilibrium solver output
To install the waveform editor, run the following:
# On SDCC, ensure you have loaded the IMAS-Python module:
# module load IMAS-Python
python -m venv venv
source ./venv/bin/activate
pip install waveform-editor
More detailed instructions for installing can be found on Read the Docs.
The GUI can be launched using:
waveform-editor gui
Or the CLI can be launched using:
waveform-editor --help
The documentation is autogenerated from the source using Sphinx and can be found on Read the Docs.
Alternatively, you can generate the documentation yourself:
pip install .[docs]
make -C docs html