Skip to content

iterorganization/Waveform-Editor

Repository files navigation

Waveform Editor

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.

Development Status

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

Install

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.

Usage

The GUI can be launched using:

waveform-editor gui 

Or the CLI can be launched using:

waveform-editor --help

Docs

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

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages