Simulator Plug-In

Modules

 Random Variables
 
 Simulation Condition Attributes
 
 
 Simulation Event Attributes
 
 

Classes

class  faudes::DeviceExecutor
 
class  faudes::Executor
 
class  faudes::LoggingExecutor
 
class  faudes::ParallelExecutor
 
class  faudes::ProposingExecutor
 

Detailed Description

This plug-in provides classes to support the simulation of faudes generators. It is organized in a hierarchical fashion to introduce the following features:

  • the faudes::Executor is a timed generator that tracks its current state and indicates which events are currently enabled and/or how much time may pass
  • the faudes::ParallelExecutor is a vector of Executors with synchronized shared events and provides the same interface as the Executor regarding enabled events
  • the faudes::LoggingExecutor is a ParallelExecutor that logs state and event data for statistical analysis
  • the faudes::ProposingExecutor is a LoggingExecutor that proposes which event to execute based on stochastic event properties or priorities
  • the faudes::DeviceExecutor is a ProposingExecutor that synchronizes with physical time and invokes callbacks for hardware-in-the-loop simulation (IO Device plugin required)

The tutorial simfaudes.cpp demonstrates the use of the ProposingExecutor in a simple interactive simulator for the synchronous product of faudes generators.

License

The current implementation of the simulator plugin is a re-design based on Ruediger Berndt's and Christoph Doerr's student projects. It is distributed with libFAUDES and under the terms of the LGPL.




Copyright (c) 2008, Thomas Moor.

libFAUDES 2.33c --- 2025.05.15 --- c++ api documentaion by doxygen