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.94.tar.gz (21.2 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.94-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for yggsimlib-0.94.tar.gz
Algorithm Hash digest
SHA256 97d1dfaecdb5ac0054375149790c583b10b8b13f5e6a2bfb543d95f8dd062fd4
MD5 aaa90afeaa0fc451bbdc0e05d55402d2
BLAKE2b-256 74f10d12a41018ef90cbc32762075c6156478837fe20392783beb753a197f5d1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: yggsimlib-0.94-py3-none-any.whl
  • Upload date:
  • Size: 20.6 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.94-py3-none-any.whl
Algorithm Hash digest
SHA256 671e7126dcbcbecc21190fc390dda81c7f098a8ed0be33707ca4cc846a375a5c
MD5 f38efbacc9467be21c3fe77ee2a9dd70
BLAKE2b-256 3b300179c2eefc74f42237ac52ce5fc198274389e93e4be5908f896734708705

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