gemseo-sysml
Overview
gemseo-sysml is a GEMSEO connector to SysML v2.
It parses a set of ODE4HERA SysML v2 models,
based on the ODE4HERA ontology,
and enables to set up a GEMSEO MDO problem from a SysML v2 MDAO model.
Currently, the following features can be extracted from the MDAO model:
- the disciplines
- the design space
- the objective function
- the constraints
Also, the plugin enables to update the input model with the optimization results. It also enables to check the requirement coverage, based on the constraint results.
Scope and limitations
Version 0.0.1 is a preliminary release: the API, the SysML v2 constructs that are read and the output that is written may all change in later versions, with no backward compatibility guaranteed yet.
gemseo-sysml is not a general-purpose SysML v2 connector.
It is tightly coupled to the ODE4HERA ontology:
the reader and the writer look for the specific parts, actions, attributes and
metadata tags defined by the ODE4HERA metamodels,
and identify them through those metamodels' semantic prefixes
(#discipline, #designSpace, #contX, #evalOut, …).
A SysML v2 model that does not specialize these metamodels cannot be read,
even if it is otherwise valid SysML v2.
As a consequence, the plugin is currently usable in a limited context:
- only models built on version 1.0 of the ODE4HERA ontology;
- only a subset of MDAO problems — a single objective, continuous design variables only, and the MDF, IDF and BiLevel formulations.
The exact list of what is read, ignored and rejected is given on the Supported SysML v2 constructs page. The role of the ontology is described on the ODE4HERA ontology page.
Requirements
Syside Automator, being distributed as a compiled extension module, constrains the platforms and the Python versions on which the plugin can run. The plugin is supported on Windows and Linux, each with a minimum version:
| Requirement | |
|---|---|
| Syside Automator | from 0.8 up to 0.10.3 (>=0.8,<=0.10.3) — that is the newest version tested, later ones are not supported yet |
| Windows | 10 or later, x64 or arm64 (earlier versions need the Windows UCRT installed) |
| Linux | x64 with GNU C Library glibc >= 2.31 (Alpine and Chimera are not supported, as they do not provide glibc) |
| Python | 3.12 minimum, 64-bit — this plugin supports 3.12 and 3.13 |
Installing the plugin with pip pulls in a compatible Syside version,
but an environment that already has one outside that range may fail.
The Python floor of 3.12 comes from Syside, not from GEMSEO, which itself supports Python 3.10 and later.
Syside imposes further constraints of its own, in particular on licensing (offline licenses are available for networks from which the Sensmetry licensing servers cannot be reached). Refer to the Sensmetry documentation for the authoritative and up-to-date details: installation and system requirements and licensing.
Installation
Install the latest version with pip install gemseo-sysml.
See pip for more information.
The plugin relies on Syside Automator from Sensmetry, to read/write data from/to textual SysML v2 models, for which a license is required.
The required SysML v2 metamodels from ODE4HERA project are available
on the Sysand package index: Simulation and Analysis,
SPDM, Architecture Design and Requirements Management.
The plugin is compatible with version 1.0 of the ODE4HERA ontology only.
These packages can be downloaded using the sysand command-line tool,
which requires a Sysand account and an API token
(see the related section of the ODE4HERA Ontology page).
Bugs and questions
Please use the gitlab issue tracker to submit bugs or questions.
You can also contact the authors using our Discourse channel.
Contributing
See the contributing section of GEMSEO.
Contributors
- Jean-Christophe Giret (IRT Saint Exupéry)
- Jean-Marie Gauthier (IRT Saint Exupéry)
- Sylvain Béchet (IRT Saint Exupéry)
The funding comes from European Union Clean Aviation project ODE4HERA, co-funded by the European Union under GA no. 101140510.
Metadata
Release files for gemseo-sysml 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gemseo_sysml-0.1.0.tar.gz | 474.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gemseo_sysml-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 593.8 kB
Release files / gemseo_sysml-0.1.0.tar.gz
| Download URL | gemseo_sysml-0.1.0.tar.gz |
|---|---|
| Size | 474.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f68ff81287decf1a0a8f1c7762c9bc841d40fcd19266d77c208f18fab003265c
|
|
BLAKE2b-256 checksum How to use checksums |
fe49091c792450acf0afc71a782c94bbc3f6418e1182349db9d0da99e31b9292
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Alpine Linux","version":"3.22.1","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / gemseo_sysml-0.1.0-py3-none-any.whl
| Download URL | gemseo_sysml-0.1.0-py3-none-any.whl |
|---|---|
| Size | 119.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bf96530691e18ad0240ad0a23c3259a182b0dcd21318b5d30f1dd96f1e8d0588
|
|
BLAKE2b-256 checksum How to use checksums |
d93d395ef136610a2f6fca62b09955fb8e3f6c26561cd672c24c75432d7bce68
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Alpine Linux","version":"3.22.1","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|