Skip to main content

A library for interfacing with the kspice API for the Yggdrasil project

Project description

YggSimLib

Introduction

YggSimLib is a wrapper library that simplifies working with K-Spice for the Yggdrasil Engineering Simulator.
It consists of two main functionalities

  • Wrapping object operations
  • Setting up sequences/scenarios that can be programmed to execute in a pre-set order

Object Wrapping

The Yggdrasil Engineering Simulator makes use of several object types to represent for instance on/off valves. Each object type can have different parameters that needs to be set in order to i.e. open the valve. The YggSimLib.On_Off_Valve object simplifies operations on valves, exposing a single open() method that behind the scenes sets the correct parameter on the K-Spice object.
The following types are implemented:

  • On_Off_Valve
    • Wraps MotorOperatedValve, BlockValve and LedaValve
  • Motor_Heater
    • Wraps ControlledAsynchronousMachine and ControlledElectricHeater
  • PID
    • Wraps PidController
  • Choke
    • Wraps ControlValve and LedaValve (acting as a choke)
  • Transmitter
    • Wraps AlarmTransmitter

Sequencing

Sequencing / Scenario building are supported through the classes Step, Sequence and Admin. The Step class lets the user define a set of actions to be performed. When the actions has been initiated, a set of transition conditions can be configured that will allow the step to complete within a maximum time limit (simulation clock). Each step is configured so it contains the name of the next step. A set of Steps can be collected in Sequence object. The Sequence object will execute the steps in the order configured by the steps themselves, and also allows a set of inhibit conditions to be set that will disalow the sequence from starting. Finally, a set of Sequence objects can be collected in an Admin object. Together with the Sequences, this class requires a set of relations between the sequences that dictates execution order, allowing for both parallell and serial execution of the sequences. These relations are configured as a set of edges connecting the sequence names.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yggsimlib-0.91.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

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

yggsimlib-0.91-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file yggsimlib-0.91.tar.gz.

File metadata

  • Download URL: yggsimlib-0.91.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for yggsimlib-0.91.tar.gz
Algorithm Hash digest
SHA256 6c1e5cd5de7a242ba500d3f5984ee90d282e7966161ddff9f821e0ee31729367
MD5 7972ca53dc7e69a48905da2f2850bb73
BLAKE2b-256 84a1a9a3d5e54e8d8e555715f13080442d6d5ede1b86fb89b3dcfada90475d65

See more details on using hashes here.

File details

Details for the file yggsimlib-0.91-py3-none-any.whl.

File metadata

  • Download URL: yggsimlib-0.91-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for yggsimlib-0.91-py3-none-any.whl
Algorithm Hash digest
SHA256 52afdca5f643712a42f1e31e713e8bfcb6cbf566a88ab1897d1d9305a132ec7c
MD5 8a34acf2f828ca214a0da3526043c1b4
BLAKE2b-256 314e508c37b0c94d4b0f6684542785b0a89a709d67c69b8290cd390f822c5d65

See more details on using hashes here.

Supported by

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