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
Release history Release notifications | RSS feed
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 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97d1dfaecdb5ac0054375149790c583b10b8b13f5e6a2bfb543d95f8dd062fd4
|
|
| MD5 |
aaa90afeaa0fc451bbdc0e05d55402d2
|
|
| BLAKE2b-256 |
74f10d12a41018ef90cbc32762075c6156478837fe20392783beb753a197f5d1
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
671e7126dcbcbecc21190fc390dda81c7f098a8ed0be33707ca4cc846a375a5c
|
|
| MD5 |
f38efbacc9467be21c3fe77ee2a9dd70
|
|
| BLAKE2b-256 |
3b300179c2eefc74f42237ac52ce5fc198274389e93e4be5908f896734708705
|