Simulation#

Schema against which LEMS based on these should be valid: LEMS_v0.7.6.xsd. Generated on 18/06/24 from this commit. Please file any issues or questions at the issue tracker here.


Simulation#

records

Record

eventRecords

EventRecord

runs

Run

dataDisplays

DataDisplay

dataWriters

DataWriter

eventWriters

EventWriter

<xs:complexType name="Simulation">
  <xs:sequence>
    <xs:element name="DataDisplay" type="DataDisplay" minOccurs="0" maxOccurs="unbounded"/>
    <xs:element name="Record" type="Record" minOccurs="0" maxOccurs="unbounded"/>
    <xs:element name="EventRecord" type="EventRecord" minOccurs="0" maxOccurs="unbounded"/>
    <xs:element name="Run" type="Run" minOccurs="0" maxOccurs="unbounded"/>
    <xs:element name="DataWriter" type="DataWriter" minOccurs="0" maxOccurs="unbounded"/>
    <xs:element name="EventWriter" type="EventWriter" minOccurs="0" maxOccurs="unbounded"/>
    <xs:element name="Meta" type="Meta" minOccurs="0" maxOccurs="unbounded"/>
  </xs:sequence>
</xs:complexType>
<Simulation>
    <DataDisplay title="title" dataRegion="xmin,xmax,ymin,ymax"/>
</Simulation>
<Simulation>
    <Record quantity="quantity" timeScale="timeScale" scale="scale" color="color"/>
</Simulation>
<Simulation>
    <DataWriter path="path" fileName="fileName"/>
</Simulation>
<Simulation>
    <Record quantity="quantity"/>
</Simulation>
<Simulation>
    <Run component="target" variable="t" increment="step" total="length"/>
</Simulation>

Record#

quantity

String

path to the parameter that will contain the path to the quantity to be recorded

scale

String

path to the element that defines the scale for rendering the quantity dimensionless

color

String

hex format color suggestion for how the data should be displayed

<xs:complexType name="Record">
  <xs:attribute name="quantity" type="xs:string" use="required"/>
  <xs:attribute name="timeScale" type="xs:string" use="optional"/>
  <xs:attribute name="scale" type="xs:string" use="optional"/>
  <xs:attribute name="color" type="xs:string" use="optional"/>
</xs:complexType>
<Record quantity="quantity" timeScale="timeScale" scale="scale" color="color"/>
<Record quantity="quantity"/>
<Record quantity="quantity" timeScale="timeScale" scale="scale" color="color"/>

EventRecord#

quantity

String

path for the component which will emit spikes to be recorded

eventPort

String

event port for the component which will emit spikes

<xs:complexType name="EventRecord">
  <xs:attribute name="quantity" type="xs:string" use="required"/>
  <xs:attribute name="eventPort" type="xs:string" use="required"/>
</xs:complexType>

DataDisplay#

<xs:complexType name="DataDisplay">
  <xs:attribute name="title" type="xs:string" use="required"/>
  <xs:attribute name="dataRegion" type="xs:string" use="required"/>
</xs:complexType>
<DataDisplay title="title" dataRegion="xmin,xmax,ymin,ymax"/>
<DataDisplay title="title" dataRegion="xmin,xmax,ymin,ymax"/>

DataWriter#

<xs:complexType name="DataWriter">
  <xs:attribute name="path" type="xs:string" use="required"/>
  <xs:attribute name="fileName" type="xs:string" use="required"/>
</xs:complexType>
<DataWriter path="path" fileName="fileName"/>

EventWriter#

<xs:complexType name="EventWriter">
  <xs:attribute name="path" type="xs:string" use="required"/>
  <xs:attribute name="fileName" type="xs:string" use="required"/>
  <xs:attribute name="format" type="xs:string" use="required"/>
</xs:complexType>

Run#

The run element provides a way to make a model runnable. It should point to the parameters that set the step size etc. The target parameters have to be dimensionally consistent.

component

String

name of the component reference that will set the component to be run

variable

String

increment

String

path to the parameter that sets the step size

total

String

path to the parameter that sets the total span of the independent variable to be run

<xs:complexType name="Run">
  <xs:attribute name="component" type="xs:string" use="required"/>
  <xs:attribute name="variable" type="xs:string" use="required"/>
  <xs:attribute name="increment" type="xs:string" use="required"/>
  <xs:attribute name="total" type="xs:string" use="required"/>
</xs:complexType>
<Run component="target" variable="t" increment="step" total="length"/>
<Run component="target" variable="t" increment="step" total="length"/>