ThirdEye is a set of Eclipse plugins modeled in EMF. The simulator core is made up from the following set of EMF packages:

  • org.thirdeye.core.mesh

  • org.thirdeye.core.integrator

  • org.thirdeye.core.sequence

  • org.thirdeye.core.persistence

  • org.thirdeye.core.dependencies

Mesh

The mesh package provides the core classes of the ThirdEye simulator. The mesh is a container that holds nodes and edges. The simulator models are represented by the nodes. There are three kinds of nodes:

  • Models (These are the main simulator models);

  • Connections (These are simulator models that are representing connection between models that carry their own features or functionalities);

  • Providers (These are simulator models which provide transformation functions to Edges);

The edges are connecting the nodes with each other.

Below you will find the class diagram of the mesh package.

Mesh Package Class Diagram

Integrator

The integrator package provides the central integration facility of ThirdEye. It is compromised of the integrator class, an equation system and an ordinary differential equation edge class. These classes provide the capability of centrally integrating simulation model variables. There is a standard Runge-Kutta Class 4 integrator implementation provided with ThirdEye.

Below you will find the class diagram of the integrator package.

Integrator Package Class Diagram

Sequence

The sequence package provides the sequencer facility of ThirdEye. The sequence is responsible for calling the calculation function of each model in the right order and to propagate the simulation model variables between the models in the right order. There is a standard sequence provided with ThirdEye that is implementing the standard sequence needed to be used together with the aforementioned Runge-Kutta integrator.

Below you will find the class diagram of the sequence package.

Sequence Package Class Diagram

Persistence

The persistence package provides the persistence facility of ThirdEye. The persistence facility is responsible for providing storage of simulation models for later analysis of the simulation run and storage of simulator configurations (Mesh, sequence and integrator together with meta data). Furthermore it is responsible for loading the persisted simulator configurations and initializing them for running. There is a standard xmi persistence implementation provided with ThirdEye.

Below you will find the class diagram of the persistence package.

Persistence Package Class Diagram

Dependencies

The dependencies package provides miscellaneous EMF classes that are needed by other packages.

Below you will find the class diagram of the dependencies package.

Dependencies Package Class Diagram