FAME-Io

The open Framework for distributed Agent-based Models of Energy systems.
https://gitlab.com/fame-framework/fame-io

Category: Energy Systems
Sub Category: Energy System Modeling Frameworks

Keywords

FAME

Keywords from Contributors

agent-based-modeling electricity market modelling energy transition

Last synced: about 9 hours ago
JSON representation

Repository metadata

Python package for input file creation for FAME models and digestion of FAME outputs. [Documentation](https://fame-framework.gitlab.io/fame-io/)

https://gitlab.com/fame-framework/fame-io/blob/dev/

          
# FAME-Io

## *Prepare input and digest output from simulation models*

[![License](https://img.shields.io/pypi/l/fameio.svg)](https://badge.fury.io/py/fameio)
[![General paper](https://img.shields.io/badge/general_paper-10.21105%2Fjoss.04958-blue)](https://doi.org/10.21105/joss.04958)
[![Metadata paper](https://img.shields.io/badge/metadata_paper-10.21105%2Fjoss.09541-blue)](https://doi.org/10.21105/joss.09541)
[![Pipeline](https://gitlab.com/fame-framework/fame-io/badges/main/pipeline.svg)](https://gitlab.com/fame-framework/fame-io/commits/main)
[![Code Coverage](https://gitlab.com/fame-framework/fame-io/badges/main/coverage.svg)](https://gitlab.com/fame-framework/fame-io/-/jobs)
![Last Commit](https://img.shields.io/gitlab/last-commit/fame-framework%2Ffame-io)

FAME-Io compiles input for FAME models and extracts model output to human-readable files. Model data is handled in the efficient protobuf format.
[FAME](https://gitlab.com/fame-framework/wiki/-/wikis/home) is the open **F**ramework for distributed **A**gent-based **M**odels of **E**nergy systems. Check out the full [FAME-Io documentation](https://fame-framework.gitlab.io/fame-io). ## What is FAME-Io? FAME-Io is the input-output toolkit for FAME-based simulation models. The relationship to other components can be seen below. FAME component workflow FAME-Io combines model data and user's agent configurations to create a simulation input file for computations with FAME-Core. Once these computations have finished, FAME-Io converts the simulation output file and returns its contents in a readable format. Additionally, users can fully annotate all modelling components, model instances, and model data with metadata. Thus, with FAME-Io you can: * Compile input binaries for simulation models built with FAME, * Extract output binaries to human-readable formats like CSV and JSON, * Edit large CSV files to enhance compilation speed, * Annotate simulations with metadata to improve their traceability and interoperability. ## Who is FAME-Io for? FAME-Io is a vital file-conversion component for FAME-based workflows. If your model is not built with [FAME](https://gitlab.com/fame-framework/wiki/-/wikis/home), you will probably not profit from FAME-Io. ## Applications FAME-Io is used with any model that is based on FAME. An example of its application is the electricity market model [AMIRIS](https://helmholtz.software/software/amiris). ## Installation FAME-Io requires Python 3.10 or higher. We recommend installing `fameio` using PyPI: `pip install fameio` ## Usage FAME-Io offers three command-line scripts: * [compile](https://fame-framework.gitlab.io/fame-io/usage/compile.html): compiles a protobuf file for FAME applications using YAML definition files and CSV files, * [extract](https://fame-framework.gitlab.io/fame-io/usage/extract.html): takes an output file in protobuf format of FAME-based applications and converts it into files in CSV / JSON format, * [transform](https://fame-framework.gitlab.io/fame-io/usage/transform.html): takes CSV time series files and reformats them into FAME time format to speed up the first command. ## Community FAME-Io is mainly developed by the German Aerospace Center, Institute of Networked Energy Systems. We provide support via the dedicated email address [fame@dlr.de](mailto:fame@dlr.de). **We welcome all contributions**: bug reports, feature requests, documentation enhancements, and code.
For substantial enhancements, we recommend that you contact us via [fame@dlr.de](mailto:fame@dlr.de) for working together on the code in common projects or towards common publications and thus further develop FAME-Io.
Please see our [Contribution Guidelines](https://fame-framework.gitlab.io/fame-io/contribute/contribute.html) and [Code of Conduct](https://fame-framework.gitlab.io/fame-io/contribute/conduct.html). ## Citing FAME-Io If you use FAME-Io in academic work, please cite [DOI 10.21105/joss.04958](https://doi.org/10.21105/joss.04958) ``` @article{fameio2023joss, author = {Nitsch, Felix and Schimeczek, Christoph and Frey, Ulrich and Fuchs, Benjamin}, title = {{FAME-Io}: Configuration tools for complex agent-based simulations}, journal = {Journal of Open Source Software}, publisher = {The Open Journal}, year = {2023}, volume = {8}, number = {84}, pages = {4958}, doi = {10.21105/joss.04958}, } ``` If your work also makes use of its metadata annotation functionality, please also cite [DOI 10.21105/joss.09541](https://doi.org/10.21105/joss.09541) ``` @article{fameiometadata2026joss, author = {Schimeczek, Christoph and Nitsch, Felix and Frey, Ulrich}, title = {Flexible Metadata Annotation for Agent-based Energy System Models}, journal = {Journal of Open Source Software}, publisher = {The Open Journal}, year = {2026}, volume = {11}, number = {124}, pages = {9541}, doi = {10.21105/joss.09541}, } ``` In all other contexts, please include a link to our [GitLab repository](https://gitlab.com/fame-framework/fame-io). ## Acknowledgements The development of FAME-Io was funded by the German Aerospace Center (DLR). We express our gratitude to all [contributors](CONTRIBUTING.md#list-of-contributors).

Committers metadata

Last synced: 2 days ago

Total Commits: 1,124
Total Committers: 15
Avg Commits per committer: 74.933
Development Distribution Score (DDS): 0.386

Commits in past year: 186
Committers in past year: 6
Avg Commits per committer in past year: 31.0
Development Distribution Score (DDS) in past year: 0.28

Name Email Commits
Christoph Schimeczek C****k@d****e 690
Felix Nitsch f****h@d****e 272
Christoph Schimeczek c****k@d****e 63
Felix Nitsch f****h@g****t 24
frey_ul u****y@d****e 17
dlr_fn 8****w 16
nits_fe n****e 14
Aurelien Regat-Barrel a****b@c****t 12
Felix Nitsch 5****n@u****m 4
Willeke l****e@d****e 4
schi_co s****o@T****e 3
Frey U****y@d****e 2
Andrea Cattaneo 2****a@u****m 1
Florian Maurer m****r@f****e 1
Johannes Kochems j****s@d****e 1

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago


Package metadata

pypi.org: fameio

Tools for input preparation and output digestion of FAME models

  • Homepage: https://helmholtz.software/software/fame
  • Documentation: https://fameio.readthedocs.io/
  • Licenses: Apache-2.0
  • Latest release: 4.0.1 (published about 1 month ago)
  • Last Synced: 2026-08-29T02:32:15.918Z (1 day ago)
  • Versions: 38
  • Dependent Packages: 2
  • Dependent Repositories: 3
  • Downloads: 448 Last month
  • Rankings:
    • Dependent packages count: 3.132%
    • Dependent repos count: 8.995%
    • Forks count: 13.295%
    • Average: 14.016%
    • Downloads: 19.648%
    • Stargazers count: 25.013%
  • Maintainers (1)

Dependencies

setup.py pypi
  • fameprotobuf >=1.2,<1.3
  • pandas *
  • pyyaml *

Score: 12.291883301943285