SysSimX Package#

syssimx - A Python framework for heterogeneous system co-simulation.

syssimx provides a unified interface for coupling heterogeneous simulation models including:

  • FMU Components: Functional Mock-up Units (FMI 2.0 Co-Simulation)

  • FEM Components: Finite Element Method solvers (NGSolve)

  • OpenSim Components: Musculoskeletal biomechanics models

Key Features:
  • Graph-based execution engine with automatic dependency analysis

  • Algebraic loop detection and iterative solving (IJCSA algorithm)

  • Hybrid co-simulation with event detection and superdense time

  • Multiple master algorithms: Jacobi, Gauss-Seidel, Hybrid

Example

>>> from syssimx import System, Connection
>>> from syssimx.components import FMUComponent
>>>
>>> # Create system and add components
>>> system = System(name="MySystem")
>>> pendulum = FMUComponent("Pendulum", fmu_path="Pendulum.fmu")
>>> system.add_component(pendulum)
>>>
>>> # Initialize and run
>>> system.initialize(t0=0.0)
>>> system.run(t0=0.0, tf=10.0, dt=0.01)

The top-level package re-exports the most commonly used classes for convenient imports. Detailed API documentation for those classes is available in the module-specific pages in this API reference.

Re-exported names#

The declarative loader (build_system(), run_from_config(), load_config(), ConfigError) is importable from syssimx.system; see System.

Command-Line Interface#

Command-line interface for SysSimX.

Provides the syssimx console script:

syssimx run system.yaml                    # run with the file's run settings
syssimx run system.yaml --tf 10 --dt 0.01  # override run settings
syssimx run system.yaml -o results.csv     # export results (long format)
syssimx describe system.yaml               # print the structural report
syssimx.cli._add_run_overrides(parser)[source]#
Parameters:

parser (ArgumentParser)

Return type:

None

syssimx.cli.main(argv=None)[source]#

Entry point for the syssimx console script.

Parameters:

argv (list[str] | None)

Return type:

int

syssimx.cli._cmd_run(args)[source]#
Parameters:

args (Namespace)

Return type:

int

syssimx.cli._cmd_describe(args)[source]#
Parameters:

args (Namespace)

Return type:

int