Skip to main content

gemseo-sysml

PyPI - License PyPI - Python Version PyPI Codecov branch

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

gemseo_sysml-0.0.1.tar.gz (482.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gemseo_sysml-0.0.1-py3-none-any.whl (140.6 kB view details)

Uploaded Python 3

File details

Details for the file gemseo_sysml-0.0.1.tar.gz.

File metadata

  • Download URL: gemseo_sysml-0.0.1.tar.gz
  • Upload date:
  • Size: 482.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.4 {"installer":{"name":"uv","version":"0.12.4","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

Hashes for gemseo_sysml-0.0.1.tar.gz
Algorithm Hash digest
SHA256 1738f75ee47f5019c5d96ca9fc6c67c13dc4ac131e001271469ae8e54a545a88
MD5 1a334137280985483c7bea1a8b18521b
BLAKE2b-256 b72084355097c6bbc0daaa3d57d1c6e6c68cb6470e8b0f8299d78aebe478cf17

See more details on using hashes here.

File details

Details for the file gemseo_sysml-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: gemseo_sysml-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 140.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.4 {"installer":{"name":"uv","version":"0.12.4","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

Hashes for gemseo_sysml-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8998393b44c1031f0527cbe40b9d0fa0e16259c3410f7eac5ac0c4231cfc81d2
MD5 bd234f4bd7dea54c069785c209484b02
BLAKE2b-256 fc9888c24c384db4033287ef32e8e55b86e60612502e0ed0cac4ed2c63c575f3

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.0

2 files

This release

0.0.1 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page