_images/logo.svg

SimulationSimpleDatabase

The SSD project provides Python3 tools allowing users to easily develop data storage and visualization strategies for their numerical simulations with a minimal lines of code.

This project is divided in two main objectives:

Storage

Easy storage management system for any data from a numerical simulation.

Rendering

Easy storage & rendering management systems for visual data from a numerical simulation.

The SSD project is mainly using the Peewee Python3 library and was mostly designed to fit the DeepPhysX and SOFA frameworks.

Features

The SSD project provides the following packages:

SSD.Core.Storage
  • Automatic management of Database file for any data;

  • Creation of highly customizable Tables in the Database;

  • Easy writing and reading user interface;

  • Event management system;

  • Tools such as merging and exporting data in other formats.

SSD.Core.Rendering
  • Automatic management of Database file for visualization data;

  • Live rendering of numerical simulations;

  • Replay of stored numerical simulation steps;

  • Various object types and highly customizable rendering styles;

  • Several Python libraries available: Vedo, Open3D.

The SSD project also provides a compatible layer with SOFA framework:

SSD.SOFA.Storage
  • Same features as Core Storage package;

  • Compatible layer with SOFA Python bindings.

  • Callbacks to automatically record any Data field of SOFA objects.

  • Recording can be done whether the simulation is running with runSofa or with a python interpreter.

SSD.SOFA.Rendering
  • Same features as Core Rendering package;

  • Compatible layer with SOFA Python bindings.

  • Callbacks to automatically record visual Data fields of SOFA objects.

  • Recording can be done whether the simulation is running with runSofa or with a python interpreter.

  • Rendering is available when a simulation is driven with a python interpreter.