ETHOS.PeNALPS

ETHOS.PeNALPS: A Tool for the Load Profile Simulation of Industrial Processes Based on a Material Flow Simulation - Published in JOSS (2024)

https://github.com/fzj-iek3-vsa/ethos_penalps

Science Score: 98.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in JOSS metadata
  • Academic publication links
  • Committers with academic emails
    1 of 5 committers (20.0%) from academic institutions
  • Institutional organization owner
    Organization fzj-iek3-vsa has institutional domain (www.fz-juelich.de)
  • JOSS paper metadata
    Published in Journal of Open Source Software

Scientific Fields

Engineering Computer Science - 31% confidence
Last synced: 6 months ago · JSON representation

Repository

Petri Net Agent based Load Profile Simulator

Basic Info
Statistics
  • Stars: 2
  • Watchers: 3
  • Forks: 0
  • Open Issues: 1
  • Releases: 6
Created over 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License

README.md

| Name | Version | Platforms | Daily Tests | |---|---|---|---| |Conda Recipe|Conda Version|Conda Platforms |example workflow

Forschungszentrum Juelich Logo

ETHOS.PeNALPS

ETHOS.PeNALPS (Petri Net Agent based Load Profile Simulator) is a Python library for the simulation of load profiles of industrial manufacturing processes. It is part of ETHOS (Energy Transformation Pathway Optimization Suite). Load profiles are energy demand time series. Processes that can be simulated using ETHOS.PeNALPS include, for example, steel, paper, and industrial food production. One or multiple product orders are passed to the model which starts the simulation and eventually creates the desired load profiles.

Working Principle

The figure below shows the main conceptual objects of ETHOS.PeNALPS which are:

  • Generic model objects
  • Material flow simulations
  • Production plans
  • Result load profiles

The model of the material flow simulation is created by users based on generic simulation objects. After the material flow simulation is completed, a set of production orders is passed to the model to start the simulation. The simulation generates a production plan that tracks the activity of each node to fulfill the requested set of orders. Based on the activity in the production plan, the load profiles are created for each node in therein.

Main Component Overview Depiction of the main components and workflow of ETHOS.PeNALPS

The HTML documentation provides a tutorial for ETHOS.PeNALPS. The executable files for the tutorial are located in the example section of this repository. Also two examples for a toffee production process and a b-pillar production process are available.

Installation

Requirements

The installation process uses a Conda-based Python package manager. We highly recommend using Mamba instead of Anaconda. The recommended way to use Mamba on your system is to install the Miniforge distribution. They offer installers for Windows, Linux and OS X. Have a look at the Mamba installation guide for further details. If you prefer to stick to Anaconda you should install the libmamba solver which is a lot faster than the classic conda solver. Otherwise the installation of ETHOS.PeNALPS might take very long or does not succeed at all.

conda install -n base conda-libmamba-solver conda config --set solver libmamba

Please note that the installation time of the solver can be very long if you have installed a lot of other packages into you conda base environment. In the following the commands mamba and conda are exchangeable if you prefer to use conda.

Installation via conda-forge

The simplest way ist to install ETHOS.PeNALPS into a fresh environment from conda-forge with:

Create a new environment python mamba create -n penalps_env

Activate the environment python mamba activate penalps_env

Install ETHOS.PeNALPS from conda forge python mamba install -c conda-forge ethos_penalps

Installation from Github for Development

First the repository must be cloned from Github

python git clone https://github.com/FZJ-IEK3-VSA/ETHOS_PeNALPS.git Then change the directory to the root folder of the repository. python cd ETHOS_PeNALPS

Create a new environment from the environment.yml file with all required dependencies. python mamba env create --file=environment.yml

Activate the new environment. python mamba activate ethos_penalps

Install ethos_penalps locally in editable to mode for development. python pip install -e .

Tests

The library can be tested by running pytest with the following command from the root folder.

python pytest

Documentation

A ReadTheDocs Documentation can be found here.

Contributing

Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.

You can contribute in many ways:

Types of Contributions

Report Bugs

Report bugs at https://github.com/FZJ-IEK3-VSA/ETHOS_PeNALPS/issues.

If you are reporting a bug, please include:

  • Your operating system name and version.
  • Any details about your local setup that might be helpful in troubleshooting.
  • Detailed steps to reproduce the bug.

Fix Bugs

Look through the GitHub issues for bugs. Anything tagged with "bug" and "help wanted" is open to whoever wants to implement it.

Implement Features

Look through the GitHub issues for features. Anything tagged with "enhancement" and "help wanted" is open to whoever wants to implement it.

Write Documentation

ETHOS.PeNALPS could always use more documentation, whether as part of the official ETHOS.PeNALPS docs, in docstrings, or even on the web in blog posts, articles, and such.

Submit Feedback

The best way to send feedback is to file an issue at https://github.com/FZJ-IEK3-VSA/ETHOS_PeNALPS/issues.

If you are proposing a feature:

  • Explain in detail how it would work.
  • Keep the scope as narrow as possible, to make it easier to implement.
  • Remember that this is a volunteer-driven project, and that contributions are welcome :)

Owner

  • Name: Forschungszentrum Jülich - Jülich Systems Analysis
  • Login: FZJ-IEK3-VSA
  • Kind: organization
  • Location: Forschungszentrum Jülich

Institute of Climate and Energy Systems (ICE)

JOSS Publication

ETHOS.PeNALPS: A Tool for the Load Profile Simulation of Industrial Processes Based on a Material Flow Simulation
Published
May 02, 2024
Volume 9, Issue 97, Page 6358
Authors
Julian Belina ORCID
Jülich Aachen Research Alliance, JARA-Energy, Jülich, Aachen, Germany, Forschungszentrum Jülich GmbH, Institute of Energy and Climate Research – Techno-economic Systems Analysis (IEK-3), 52425 Jülich, Germany
Noah Pflugradt ORCID
Jülich Aachen Research Alliance, JARA-Energy, Jülich, Aachen, Germany, Forschungszentrum Jülich GmbH, Institute of Energy and Climate Research – Techno-economic Systems Analysis (IEK-3), 52425 Jülich, Germany
Detlef Stolten ORCID
Jülich Aachen Research Alliance, JARA-Energy, Jülich, Aachen, Germany, Forschungszentrum Jülich GmbH, Institute of Energy and Climate Research – Techno-economic Systems Analysis (IEK-3), 52425 Jülich, Germany, RWTH Aachen University, Chair for Fuel Cells, Faculty of Mechanical Engineering, 52062 Aachen, Germany
Editor
Sarath Menon ORCID
Tags
Load Profile Industry Manufacturing Energy Simulation Industrial Production Materials Processing

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 96
  • Total Committers: 5
  • Avg Commits per committer: 19.2
  • Development Distribution Score (DDS): 0.052
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
j.belina j****a@f****e 91
Julian Belina j****a@i****e 2
julian-belina 5****a 1
Sarath Menon m****l@s****e 1
Kyle Niemeyer k****r@f****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 6
  • Total pull requests: 4
  • Average time to close issues: 25 days
  • Average time to close pull requests: 41 minutes
  • Total issue authors: 2
  • Total pull request authors: 3
  • Average comments per issue: 2.17
  • Average comments per pull request: 0.0
  • Merged pull requests: 4
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • julian-belina (4)
  • stoldtjo (2)
Pull Request Authors
  • julian-belina (4)
  • kyleniemeyer (2)
  • srmnitc (2)
Top Labels
Issue Labels
Pull Request Labels