Skip to main content

Numerous - an object-oriented modelling and simulation engine.

Project description

CircleCI

Numerous — an object-oriented modelling and simulation engine

Reasons for developing a python-based object-oriented simulation engine

The arguments for a python simulation engine are numerous:

  • In order to take advantage of cloud based computing power a run-anywhere solution is preferred
  • Open-source to eliminate the need of complex licenses for deploying thousands of simulations
  • Direct connection with machine-learning and artificial intelligence libraries through the most popular programming language for data science
  • Leveraging packages from the vast community seamlessly

Philosophy and Motivation for Object-Oriented Modelling

As systems becomes complex the number of equations and variables grow fast and the overview is lost for the model developer. The idea behind this engine is to allow the model developer focus on one familiar object at a time and setup simulations for validation – and then combine these objects together to form complex interacting systems in a simple way where all the general tedious work is handled by the engine.

Quick start

To install using pip use pip install numerous-engine

You can get started quickly here with a simple example:

from numerous.engine import model, simulation
from numerous.examples.dampened_oscillator.dampened_oscillator import OscillatorSystem
#Define simulation
s = simulation.Simulation(
     model.Model(OscillatorSystem('system')),
    t_start=0, t_stop=10, num=100, num_inner=100, max_step=0.1
)
#Solve
s.solve()
simulation_result = s.model.historian_df

Or follow one of our comprehensive tutorials:

  • Bouncing_Ball a model of a ball dropping from a certain height and bouncing off the ground, until it finally comes to rest
  • Two_Tanks_System two tanks are placed on top of each other and connected by a valve.

Documentation can be found on readthedocs.

Or you can get familiar with the concepts we have used to abstract away building complex interacting systems right inside python.

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

numerous-engine-0.2.1.tar.gz (82.1 kB view details)

Uploaded Source

Built Distribution

numerous_engine-0.2.1-py3-none-any.whl (112.0 kB view details)

Uploaded Python 3

File details

Details for the file numerous-engine-0.2.1.tar.gz.

File metadata

  • Download URL: numerous-engine-0.2.1.tar.gz
  • Upload date:
  • Size: 82.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for numerous-engine-0.2.1.tar.gz
Algorithm Hash digest
SHA256 976a24e4ad0c7d11d07f30c3aba5344fe8bf44eb4e20fe6a24b5a78cfbb28780
MD5 e5fb1dba747c47b928c8db09f200db80
BLAKE2b-256 5452218c90488d9ebe3d57c7507f783f11265f6ab44ec7fa2cd2fab7484fe128

See more details on using hashes here.

File details

Details for the file numerous_engine-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: numerous_engine-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 112.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for numerous_engine-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1a6ecad0464c6bd3fac1ee11c209b2863805313c6c81bd91fa34be635435340d
MD5 1a71d4065eb747b11f5d4f276637496f
BLAKE2b-256 21b838c559f04e552b117ea96ab5f0b2d00029a78d14a77acbd3e88fdb3c8c77

See more details on using hashes here.

Supported by

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