This repository contains helper actors for working with IMAS data in MUSCLE3. It contains:
- Data source: Load and send timeslices from a DBEntry on the
O_I
port. - Data sink: Save timeslices to a DBEntry on the
F_INIT
port. - Data sink_source: Load and send a timeslice from a DBEntry on the
O_F
port based on an incoming timeslice on theF_INIT
port. - Accumulator (buffer) actors: Gather messages on
S
port and send out the combination onO_F
. - IMAS-Validator actor: Perform validation checks on data on the
F_INIT
port, generate reports.
Documentation is autogenerated from the source using Sphinx.
The documentation can be manually generated by installing sphinx and running:
make -C docs html
Important: IMAS-Core is needed for IMAS-MUSCLE3 to work (which is not publicly available yet). As a user, simply install IMAS-MUSCLE3 with pip:
pip install imas-muscle3
Quick developer installation guide
git clone git@github.com:iterorganization/IMAS-MUSCLE3.git
cd IMAS-MUSCLE3
python3 -m venv ./venv
. venv/bin/activate
pip install -e .[all]
pytest
To add an actor to your MUSCLE3 workflow, add the following to the implementations in your ymmsl file:
implementations:
*component_name*:
executable: python
args: -u -m imas_muscle3.actors.*component_name*
Check the actor specific documentation pages to find the relevant ports, settings, etc.