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.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gemseo_sysml-0.1.0.tar.gz.
File metadata
- Download URL: gemseo_sysml-0.1.0.tar.gz
- Upload date:
- Size: 474.5 kB
- Tags: Source
- Uploaded using 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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f68ff81287decf1a0a8f1c7762c9bc841d40fcd19266d77c208f18fab003265c
|
|
| MD5 |
8a8086d9bf992d3cfab2ed946255ab87
|
|
| BLAKE2b-256 |
fe49091c792450acf0afc71a782c94bbc3f6418e1182349db9d0da99e31b9292
|
File details
Details for the file gemseo_sysml-0.1.0-py3-none-any.whl.
File metadata
- Download URL: gemseo_sysml-0.1.0-py3-none-any.whl
- Upload date:
- Size: 119.3 kB
- Tags: Python 3
- Uploaded using 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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf96530691e18ad0240ad0a23c3259a182b0dcd21318b5d30f1dd96f1e8d0588
|
|
| MD5 |
58b284f40099ad5c1af248c9df69d07d
|
|
| BLAKE2b-256 |
d93d395ef136610a2f6fca62b09955fb8e3f6c26561cd672c24c75432d7bce68
|