Supports creation of OSP <https://opensimulationplatform.com/> (co-)simulation files.
Project description
ospx
ospx is an extension package to farn supporting the creation of OSP (co-)simulation cases using functional mockup units (FMUs).
ospx supports
- building of case-specific OSP (co-)simulation configuration files
- watching the progress of cosim, and saving final simulation results as a pandas dataframe.
Installation
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ ospx
ospx requires the following (sub-)package:
- dictIO: foundation package, enabling ospx to handle configuration files in dictIO dict file format.
However, dictIO gets installed automatically with ospx.
Usage Example
ospx provides both an API for use inside Python as well as a CLI for shell execution of core functions.
Reading a caseDict file and building the case-specific OSP (co-)simulation configuration files:
from ospx.ospCaseBuilder import OspCaseBuilder
OspCaseBuilder.build('caseDict')
The above task can also be invoked from the command line, using the 'ospCaseBuilder' command line script installed with ospx:
ospCaseBuilder caseDict
For more examples and usage, please refer to ospx's documentation on GitHub Pages.
File Format
A caseDict is a file in dictIO dict file format used with farn.
For a documentation of the caseDict file format, see File Format in ospx's documentation on GitHub Pages.
For a detailed documentation of the dictIO dict file format used by farn, see dictIO's documentation on GitHub Pages.
Development Setup
-
Install Python 3.9
-
git clone the farn repository into your local development directory:
git clone git://github.com/dnv-opensource/ospx.git path/to/your/dev/ospx
- In the ospx root folder:
Create a Python virtual environment:
python -m venv .venv
Activate the virtual environment:
.venv\Scripts\activate
Update pip and setuptools:
python -m pip install --upgrade pip setuptools
Install farn's dependencies:
pip install -r requirements.txt
Release History
- 0.1.0
- First release
Meta
Copyright (c) 2022 DNV open source
Frank Lumpitzsch – @LinkedIn – frank.lumpitzsch@dnv.com
Claas Rostock – @LinkedIn – claas.rostock@dnv.com
Seunghyeon Yoo – @LinkedIn – seunghyeon.yoo@dnv.com
Distributed under the MIT license. See LICENSE for more information.
https://github.com/dnv-opensource/ospx
Contributing
- Fork it (https://github.com/dnv-opensource/ospx/fork)
- Create your branch (
git checkout -b fooBar
) - Commit your changes (
git commit -am 'Add some fooBar'
) - Push to the branch (
git push origin fooBar
) - Create a new Pull Request
For your contribution, please make sure you follow the STYLEGUIDE before creating the Pull Request.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.