Datafeeds, Datasheets & Properties: Overview
Each Library, Project and Scenario can have one or more Datafeeds, Datasheets and System Properties.
Datafeeds & Datasheets
The inputs and outputs contained within a SyncroSim Library are organized into Datafeeds. When a SyncroSim Package is created, the designer of the Package decides how all of the inputs and outputs for the Package will be organized into Datafeeds; each Datafeed is then broken down into one or more tables of data, called Datasheets, before being stored in a SyncroSim Library.
It's important to distinguish between Datafeeds and Datasheets in SyncroSim. Datasheets are tables of data (analagous to a table in a database or spreadsheet, or a dataframe in R), with predefined columns and unlimited number of rows. A special type of Datasheet is one with only a single row of data. Datafeeds, on the other hand, are simply collections of Datasheets that belong together; most often, however, a Datafeed consists of only a single Datasheet.
Every SyncroSim Library automatically stores all of the Datasheets associated with:
- The Base Package that was used to create the Library; and
- Any Add-On Packages that are enabled for the Library.
When configuring a Package, the Package developer defines the Scope of each Datafeed as one of: Library, Project or Scenario.
A Datafeed with a Library Scope is specified only once for the entire Library, and thus it is shared across the entire Library. Library Datafeeds can be viewed and edited by selecting the Library name (in the Library Explorer) and then selecting Library Properties from the File menu. There are several Library Datafeeds that are considered System Datafeeds - i.e, they are implemented as part of the SyncroSim Core.
A Datafeed with a Project Scope is specified once for each Project; its values are thus shared across all the Scenarios within a particular Project. Project Datafeeds can be viewed and edited by selecting the Project name (in the Library Explorer) and then selecting Project Properties from the File menu. New Projects can be created using the New Project option on the Edit menu.
Typically Project Datafeeds are definitions for the model - that is, values that do not change between model runs, and must be consistent across Scenarios in order for Scenarios to be meaningfully compared. The figure below shows an example of a Project Datafeed.
Finally, a Datafeed with a Scenario Scope is specified once for each Scenario; its values are thus unique to the particular Scenario. Scenario Datafeeds can be viewed and edited by selecting the Scenario name (in the Library Explorer) and then selecting Scenario Properties from the File menu. New Scenarios can be created using the New option on the Scenario menu.
Input vs Output Datafeeds
There are two types of Datafeeds recognized by SyncroSim: Input Datafeeds and Output Datafeeds. Input Datafeeds refer to data that is specified as input to a Transformer, whereas Output Datafeeds refer to data that is generated as output based on a Transformer's calculations. In general only Input Datafeeds are specified directly by the user; Output Datafeeds, because they are generated by the model, are thus generally read-only. In addition, Output Datafeeds always have a Scenario scope. Note that in a model with multiple linked Transformers, an Output Datafeed from one Transformer can be an input Datafeed for a second Transformer.
In addition to Datafeeds and Datasheets, there are a small number of additional System Properties - including Summary information and details regarding Add-On Packages - that can be set for Libraries, Projects and Scenarios.