.. _bibi-specification: BIBI Model Specification ======================== .. todo:: Add author/responsible Schema Document Properties -------------------------- :Target Namespace: http://schemas.humanbrainproject.eu/SP10/2014/BIBI :Element Qualifiers: By default, local element declarations belong to this schema's target namespace. :Attribute Qualifiers: By default, local attribute declarations have no namespace. Declared Namespaces ------------------- +-------------------+---------------------------------------------------------------------------------------------------------+ | Prefix | Namespace | +===================+=========================================================================================================+ | (default) | http://schemas.humanbrainproject.eu/SP10/2014/BIBI | +-------------------+---------------------------------------------------------------------------------------------------------+ | xml | http://www.w3.org/XML/1998/namespace | +-------------------+---------------------------------------------------------------------------------------------------------+ | xs | http://www.w3.org/2001/XMLSchema | +-------------------+---------------------------------------------------------------------------------------------------------+ | xsd | http://www.w3.org/2001/XMLSchema | +-------------------+---------------------------------------------------------------------------------------------------------+ Global Declarations ------------------- Element: bibi ^^^^^^^^^^^^^ :Name: bibi :Type: BIBIConfiguration :Multiplicity: [1] :Nillable: no :Abstract: no XML Instance Representation """"""""""""""""""""""""""" .. code:: xml TimeStep [0..1] BrainModel [1] SDFFilename [1] ScriptFilename [0..1] ConfFile [0..*] NeuronConnector [0..*] SynapseDynamics [0..*] TransferFunction [0..*] Global Definitions ------------------ Complex Type: Add ^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Operator (by extension) < Add (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Add :Abstract: no :Documentation: The sum of all operands Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> FlowExpression [2..*] Complex Type: AllToAllConnector ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronConnector < AllToAllConnector (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: AllToAllConnector :Abstract: no :Documentation: This connector type is obsolete. Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... weights="double [0..1]" delays="double [0..1]" name="string [0..1]"/> Complex Type: Argument ^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Argument :Abstract: no :Documentation: A named argument Properties """""""""" Element value ~~~~~~~~~~~~~ :Name: value :Type: FlowExpression :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The value passed for this argument Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] :Documentation: The name of this argument XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]"> FlowExpression [1] Complex Type: ArgumentReference ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < ArgumentReference (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: ArgumentReference :Abstract: no :Documentation: A reference to an argument, either a device or a local variable Properties """""""""" Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] :Documentation: The name of the device or local variable Attribute property ~~~~~~~~~~~~~~~~~~ :Name: property :Type: string :Multiplicity: [0..1] :Documentation: If specified, only a property of the local variable is referenced. Otherwise, the value itself (or the default property of a device) is selected. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]" property="string [0..1]"/> Complex Type: BIBIConfiguration ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: BIBIConfiguration :Abstract: no :Documentation: This class represents the root of the BIBI configuration. Properties """""""""" Element timestep ~~~~~~~~~~~~~~~~ :Name: timestep :Type: TimeStep :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: If specified, the CLE uses a different timestep than the default timestep of 20ms. The timestep is specified in milliseconds and depicts the time between two successive loops of the CLE in simulation time. Element brainModel ~~~~~~~~~~~~~~~~~~ :Name: brainModel :Type: BrainModel :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The brain model depicts a path to the neural network model. Element bodyModel ~~~~~~~~~~~~~~~~~ :Name: bodyModel :Type: SDFFilename :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The path to the robot model that should be used. This can either be a path to an SDF model or a path to a zip file containing all required assets for a robot. This zip file must have a file model.sdf at the root of the archive. Element extRobotController ~~~~~~~~~~~~~~~~~~~~~~~~~~ :Name: extRobotController :Type: ScriptFilename :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: A path to an external robot controller. If specified, the robot controller is started when the simulation begins and stopped when the simulation is over. Therefore, the path must be a path to a shell script that offers a function start and a function stop. Element configuration ~~~~~~~~~~~~~~~~~~~~~ :Name: configuration :Type: ConfFile :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: The configuration entries of an experiment depict additional files required for the simulation of experiments using this BIBI configuration. Element connectors ~~~~~~~~~~~~~~~~~~ :Name: connectors :Type: NeuronConnector :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: A list of connectors. This can be useful when specifying transfer functions Element synapseDynamics ~~~~~~~~~~~~~~~~~~~~~~~ :Name: synapseDynamics :Type: SynapseDynamics :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: A list of synapse dynamics. Such a synapse dynamic can be referenced later on in neural network devices. Element transferFunction ~~~~~~~~~~~~~~~~~~~~~~~~ :Name: transferFunction :Type: TransferFunction :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: The transfer functions that are used to couple a neural network to robot XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> TimeStep [0..1] BrainModel [1] SDFFilename [1] ScriptFilename [0..1] ConfFile [0..*] NeuronConnector [0..*] SynapseDynamics [0..*] TransferFunction [0..*] Complex Type: BIBITransferFunction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | TransferFunction < BIBITransferFunction (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - Robot2Neuron (by extension) | | | - Neuron2Monitor (by restriction) | | | - Neuron2Robot (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: BIBITransferFunction :Abstract: yes :Documentation: This type denotes the abstract base type of Transfer Functions specified entirely in the BIBI model, in XML Properties """""""""" Element local ~~~~~~~~~~~~~ :Name: local :Type: Local :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: This denotes the local variables of this transfer function. Element device ~~~~~~~~~~~~~~ :Name: device :Type: DeviceChannel :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: This denotes device channels, connections of the transfer function to the neural network using exactly one device. Element deviceGroup ~~~~~~~~~~~~~~~~~~~ :Name: deviceGroup :Type: DeviceGroupChannel :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: This denotes the device group channels, connections of transfer functions to the neural network using a one-dimensional array of devices. Element topic ~~~~~~~~~~~~~ :Name: topic :Type: TopicChannel :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: This denotes the connections of the transfer function to robot control channels. Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] :Documentation: The name of the transfer function. This is used to identify the transfer function in order to update or delete it in a running simulation. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]"> Local [0..*] DeviceChannel [1] DeviceGroupChannel [1] TopicChannel [0..*] Complex Type: BrainModel ^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: BrainModel :Abstract: no :Documentation: A neural network description as used in the CLE Properties """""""""" Element file ~~~~~~~~~~~~ :Name: file :Type: BrainFilename :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: A path to the neural network file. Element populations ~~~~~~~~~~~~~~~~~~~ :Name: populations :Type: MultiNeuronSelector :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: The populations in this field are the explicitly defined populations. Each of this population is defined as a view of an assumed 'circuit' population. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> BrainFilename [1] MultiNeuronSelector [0..*] Complex Type: Call ^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Call (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Call :Abstract: no :Documentation: A call to a static method Properties """""""""" Element argument ~~~~~~~~~~~~~~~~ :Name: argument :Type: Argument :Multiplicity: [1..*] :Nillable: no :Abstract: no :Documentation: Named arguments that are passed to the selected method Attribute type ~~~~~~~~~~~~~~ :Name: type :Type: string :Multiplicity: [1] :Documentation: A reference to the static method. This is specified as a full path of a Python function, including both the path of the module and the name of the function. For this to work, the function must be static, i.e. a global function on that module or a static class function. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... type="string [1]"> Argument [1..*] Complex Type: ChainSelector ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronGroupSelector < ChainSelector (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: ChainSelector :Abstract: no :Documentation: A chain of neurons or neuron groups Properties """""""""" Element neurons ~~~~~~~~~~~~~~~ :Name: neurons :Type: NeuronSelector :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: Single neuron connections such as single neurons Element connectors ~~~~~~~~~~~~~~~~~~ :Name: connectors :Type: NeuronGroupSelector :Multiplicity: [0..*] :Nillable: no :Abstract: no :Documentation: Existing groups of neurons XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> NeuronSelector [0..*] NeuronGroupSelector [0..*] Complex Type: ConfFile ^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: ConfFile :Abstract: no :Documentation: This type denotes an additional configuration entry that consists of a file and a purpose. Properties """""""""" Attribute src ~~~~~~~~~~~~~ :Name: src :Type: string :Multiplicity: [1] :Documentation: The source of a configuration entry is a path to a file that contains the necessary information. The path is relative to the BIBI model. Attribute type ~~~~~~~~~~~~~~ :Name: type :Type: ConfType :Multiplicity: [1] :Documentation: The type of a configuration entry denotes the purpose how this entry is used. This is used to decouple the purpose of a configuration entry from the file name. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... src="string [1]" type="ConfType [1]"/> Complex Type: Constant ^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Constant (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Constant :Abstract: no :Documentation: A constant as a flow element Properties """""""""" Attribute value ~~~~~~~~~~~~~~~ :Name: value :Type: double :Multiplicity: [1] :Documentation: The value for this constant XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... value="double [1]"/> Complex Type: ConstantString ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < ConstantString (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: ConstantString :Abstract: no :Documentation: A constant string Properties """""""""" Attribute value ~~~~~~~~~~~~~~~ :Name: value :Type: string :Multiplicity: [1] :Documentation: The value of this string constant XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... value="string [1]"/> Complex Type: DeviceChannel ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: DeviceChannel :Abstract: no :Documentation: This type denotes a connection of a transfer function to a neural network Properties """""""""" Element neurons ~~~~~~~~~~~~~~~ :Name: neurons :Type: NeuronSelector :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: This specifies the neurons that should be connected to this neural connector device Element connector ~~~~~~~~~~~~~~~~~ :Name: connector :Type: NeuronConnector :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: Additional information on the connection to the neurons Element connectorRef ~~~~~~~~~~~~~~~~~~~~ :Name: connectorRef :Type: NeuronConnectorRef :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: A reference to a reusable connector Element synapseDynamics ~~~~~~~~~~~~~~~~~~~~~~~ :Name: synapseDynamics :Type: SynapseDynamics :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: Additional information on the dynamics of the connection of this device to the neural network Element synapseDynamicsRef ~~~~~~~~~~~~~~~~~~~~~~~~~~ :Name: synapseDynamicsRef :Type: SynapseDynamicsRef :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: A reference to a reusable synapse dynamics Element target ~~~~~~~~~~~~~~ :Name: target :Type: NeuronTarget :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: The target of this connection. This configuration is useful in particular for spike source devices such as Poisson generators. By default, these devices are excitatory but they can be configured to inhibit connected neurons. Element body ~~~~~~~~~~~~ :Name: body :Type: FlowExpression :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: This element is only meaningful for spike sources. It depicts the value to which the device should be configured. Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] :Documentation: The name of this device channel Attribute type ~~~~~~~~~~~~~~ :Name: type :Type: DeviceType :Multiplicity: [1] :Documentation: The type of the neural network connection specified with this device channel XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]" type="DeviceType [1]"> NeuronSelector [1] NeuronConnector [1] NeuronConnectorRef [1] SynapseDynamics [1] SynapseDynamicsRef [1] NeuronTarget [0..1] FlowExpression [0..1] Complex Type: DeviceGroupChannel ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: DeviceGroupChannel :Abstract: no :Documentation: This type denotes a connection of a transfer function to a neural network using an array of devices Properties """""""""" Element neurons ~~~~~~~~~~~~~~~ :Name: neurons :Type: NeuronGroupSelector :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: This specifies the neurons that should be connected to this neural connector device Element connector ~~~~~~~~~~~~~~~~~ :Name: connector :Type: NeuronConnector :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: Additional information on the connection to the neurons Element connectorRef ~~~~~~~~~~~~~~~~~~~~ :Name: connectorRef :Type: NeuronConnectorRef :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: A reference to a reusable connector Element synapseDynamics ~~~~~~~~~~~~~~~~~~~~~~~ :Name: synapseDynamics :Type: SynapseDynamics :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: Additional information on the dynamics of the connection of this device to the neural network Element synapseDynamicsRef ~~~~~~~~~~~~~~~~~~~~~~~~~~ :Name: synapseDynamicsRef :Type: SynapseDynamicsRef :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: A reference to a reusable synapse dynamics Element target ~~~~~~~~~~~~~~ :Name: target :Type: NeuronTarget :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: The target of this connection. This configuration is useful in particular for spike source devices such as Poisson generators. By default, these devices are excitatory but they can be configured to inhibit connected neurons. Element body ~~~~~~~~~~~~ :Name: body :Type: FlowExpression :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: This element is only meaningful for spike sources. It depicts the value to which the device should be configured. Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] :Documentation: The name of this device group channel Attribute type ~~~~~~~~~~~~~~ :Name: type :Type: DeviceType :Multiplicity: [1] :Documentation: The type of the neural network connection specified with this device group channel XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]" type="DeviceType [1]"> NeuronGroupSelector [1] NeuronConnector [1] NeuronConnectorRef [1] SynapseDynamics [1] SynapseDynamicsRef [1] NeuronTarget [0..1] FlowExpression [0..1] Complex Type: Divide ^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Operator (by extension) < Divide (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Divide :Abstract: no :Documentation: The quotient of two operands Properties """""""""" Element operand ~~~~~~~~~~~~~~~ :Name: operand :Type: FlowExpression :Multiplicity: [2..2] :Nillable: no :Abstract: no :Documentation: The arguments of the operator expression XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> FlowExpression [2..2] Complex Type: FixedNumberPreConnector ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronConnector < FixedNumberPreConnector (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: FixedNumberPreConnector :Abstract: no :Documentation: This connector type is obsolete. Properties """""""""" Attribute count ~~~~~~~~~~~~~~~ :Name: count :Type: positiveInteger :Multiplicity: [1] XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... weights="double [0..1]" delays="double [0..1]" name="string [0..1]" count="positiveInteger [1]"/> Complex Type: FlowExpression ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+--------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+--------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - Scale (by extension) | | | - Call (by extension) | | | - Operator (by extension) | | | - Add (by extension) | | | - Subtract (by restriction) | | | - Multiply (by extension) | | | - Divide (by restriction) | | | - Min (by extension) | | | - Max (by extension) | | | - SimulationStep (by extension) | | | - ArgumentReference (by extension) | | | - Constant (by extension) | | | - ConstantString (by extension) | +-------------+--------------------------------------------------------------------------------------------------------+ :Name: FlowExpression :Abstract: yes :Documentation: The abstract base class for an information flow expression. In the scope of the Transfer functions, an information flow is an expression without any control flow. Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <.../> Complex Type: Index ^^^^^^^^^^^^^^^^^^^ +-------------+--------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelector < Index (by extension) | +-------------+--------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+--------------------------------------------------------------------------------------------------------+ :Name: Index :Abstract: no :Documentation: Selection of exactly one neuron using an index of a base population Properties """""""""" Attribute index ~~~~~~~~~~~~~~~ :Name: index :Type: nonNegativeInteger :Multiplicity: [1] :Documentation: The index of the selected neuron within its population XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... population="string [1]" index="nonNegativeInteger [1]"/> Complex Type: IndexTemplate ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+--------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelectorTemplate < IndexTemplate (by extension) | +-------------+--------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+--------------------------------------------------------------------------------------------------------+ :Name: IndexTemplate :Abstract: no :Documentation: A template for an index-based neuron selection Properties """""""""" Attribute index ~~~~~~~~~~~~~~~ :Name: index :Type: TemplatePattern :Multiplicity: [1] :Documentation: The template for the index to access the neurons XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... index="TemplatePattern [1]"/> Complex Type: List ^^^^^^^^^^^^^^^^^^ +-------------+--------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelector < MultiNeuronSelector (by extension) < List (by extension) | +-------------+--------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+--------------------------------------------------------------------------------------------------------+ :Name: List :Abstract: no :Documentation: Selection of a list of neurons using their indices Properties """""""""" Element element ~~~~~~~~~~~~~~~ :Name: element :Type: nonNegativeInteger :Multiplicity: [1..*] :Nillable: no :Abstract: no :Documentation: The indices of selected neurons XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... population="string [1]"> nonNegativeInteger [1..*] Complex Type: ListTemplate ^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+--------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelectorTemplate < ListTemplate (by extension) | +-------------+--------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+--------------------------------------------------------------------------------------------------------+ :Name: ListTemplate :Abstract: no :Documentation: A template for a list-based neuron selection Properties """""""""" Element element ~~~~~~~~~~~~~~~ :Name: element :Type: TemplatePattern :Multiplicity: [1..*] :Nillable: no :Abstract: no :Documentation: Templates for the indices of selected neurons XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> TemplatePattern [1..*] Complex Type: Local ^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Local :Abstract: no :Documentation: A local variable Properties """""""""" Element body ~~~~~~~~~~~~ :Name: body :Type: FlowExpression :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The initial value for this local variable Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] :Documentation: The name of the local variable XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]"> FlowExpression [1] Complex Type: MapSelector ^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+--------------------------------------------------------------------------------------------------------+ | Super-types | NeuronGroupSelector < MapSelector (by extension) | +-------------+--------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+--------------------------------------------------------------------------------------------------------+ :Name: MapSelector :Abstract: no :Documentation: An indexed mapping of neurons to neuron groups. As index, either a number or a population may be used. In the latter case, the size of the given population is used as count. Properties """""""""" Element count ~~~~~~~~~~~~~ :Name: count :Type: positiveInteger :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The number of neural network connections contained in this indexed mapping Element source ~~~~~~~~~~~~~~ :Name: source :Type: MultiNeuronSelector :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The source population. If possibility is used, the indexed group consists of one neuron selection per neuron in the source group Element pattern ~~~~~~~~~~~~~~~ :Name: pattern :Type: NeuronSelectorTemplate :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The pattern that shall be used to select neurons XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> positiveInteger [1] MultiNeuronSelector [1] NeuronSelectorTemplate [1] Complex Type: Max ^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Operator (by extension) < Max (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Max :Abstract: no :Documentation: The maximum of the provided values Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> FlowExpression [2..*] Complex Type: Min ^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Operator (by extension) < Min (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Min :Abstract: no :Documentation: The minimum of the provided values Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> FlowExpression [2..*] Complex Type: MultiNeuronSelector ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelector < MultiNeuronSelector (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - Range (by extension) | | | - List (by extension) | | | - Population (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: MultiNeuronSelector :Abstract: yes :Documentation: The abstract base class of selections of multiple neurons Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... population="string [1]"/> Complex Type: Multiply ^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Operator (by extension) < Multiply (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Multiply :Abstract: no :Documentation: The product of all operands Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> FlowExpression [2..*] Complex Type: Neuron2Monitor ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | TransferFunction < BIBITransferFunction (by extension) < Neuron2Monitor (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Neuron2Monitor :Abstract: no :Documentation: A NeuronMonitor is a special class of transfer functions that monitors neural network populations. Connections to robot control topics or device groups are not allowed. Properties """""""""" Element local ~~~~~~~~~~~~~ :Name: local :Type: Local :Multiplicity: [0..*] :Nillable: no :Abstract: no Element device ~~~~~~~~~~~~~~ :Name: device :Type: DeviceChannel :Multiplicity: [1] :Nillable: no :Abstract: no Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]"> Local [0..*] DeviceChannel [1] Complex Type: Neuron2Robot ^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | TransferFunction < BIBITransferFunction (by extension) < Neuron2Robot (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Neuron2Robot :Abstract: no :Documentation: A Neuron2Robot transfer function is a transfer function whose primary purpose is to extract information from the neural network and use this information to control the robot using robot control messages Properties """""""""" Element returnValue ~~~~~~~~~~~~~~~~~~~ :Name: returnValue :Type: TopicChannel :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: The return value topic channel of a Neuron2Robot transfer function is the channel to which control messages the return value of the Python function are sent XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]"> Local [0..*] DeviceChannel [1] DeviceGroupChannel [1] TopicChannel [0..*] TopicChannel [0..1] Complex Type: NeuronConnector ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - OneToOneConnector (by extension) | | | - AllToAllConnector (by extension) | | | - FixedNumberPreConnector (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: NeuronConnector :Abstract: yes :Documentation: This type denotes a connector to other populations Properties """""""""" Attribute weights ~~~~~~~~~~~~~~~~~ :Name: weights :Type: double :Multiplicity: [0..1] :Documentation: The weights of the connector denote the connections between the source neuron and the target neurons. If no weight is specified, the default weight of the neuron connection device is used. Attribute delays ~~~~~~~~~~~~~~~~ :Name: delays :Type: double :Multiplicity: [0..1] :Documentation: The delays of the connector denote the delays of spike deliveries. If no delays are specified, the default delays of the neuron connection device is used. Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [0..1] :Default Value: default :Documentation: The name of the connector for later reference. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... weights="double [0..1]" delays="double [0..1]" name="string [0..1]"/> Complex Type: NeuronConnectorRef ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | anyType < NeuronConnectorRef (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: NeuronConnectorRef :Abstract: no :Documentation: A reference to an elsewhere defined neural connector Properties """""""""" Attribute ref ~~~~~~~~~~~~~ :Name: ref :Type: string :Multiplicity: [1] :Documentation: The name of the referenced connector XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... ref="string [1]"> Complex Type: NeuronGroupSelector ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - ChainSelector (by extension) | | | - MapSelector (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: NeuronGroupSelector :Abstract: yes :Documentation: This type denotes an abstract group of neurons Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <.../> Complex Type: NeuronSelector ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - Index (by extension) | | | - MultiNeuronSelector (by extension) | | | - Range (by extension) | | | - List (by extension) | | | - Population (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: NeuronSelector :Abstract: yes :Documentation: The abstract base class of neuron selectors Properties """""""""" Attribute population ~~~~~~~~~~~~~~~~~~~~ :Name: population :Type: string :Multiplicity: [1] :Documentation: The population this neuron selector refers to XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... population="string [1]"/> Complex Type: NeuronSelectorTemplate ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - IndexTemplate (by extension) | | | - RangeTemplate (by extension) | | | - ListTemplate (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: NeuronSelectorTemplate :Abstract: yes :Documentation: A template for neuron selectors Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <.../> Complex Type: OneToOneConnector ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronConnector < OneToOneConnector (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: OneToOneConnector :Abstract: no :Documentation: This connector type is obsolete. Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... weights="double [0..1]" delays="double [0..1]" name="string [0..1]"/> Complex Type: Operator ^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Operator (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - Add (by extension) | | | - Subtract (by restriction) | | | - Multiply (by extension) | | | - Divide (by restriction) | | | - Min (by extension) | | | - Max (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Operator :Abstract: yes :Documentation: The abstract base class for an operator call based on a flow expression Properties """""""""" Element operand ~~~~~~~~~~~~~~~ :Name: operand :Type: FlowExpression :Multiplicity: [2..*] :Nillable: no :Abstract: no :Documentation: The arguments of the operator expression XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> FlowExpression [2..*] Complex Type: Population ^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelector < MultiNeuronSelector (by extension) < Population (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Population :Abstract: no :Documentation: Selection of an entire population of neurons Properties """""""""" Attribute count ~~~~~~~~~~~~~~~ :Name: count :Type: positiveInteger :Multiplicity: [1] :Documentation: The size of the selected population. This is necessary for validation purposes where the neural network is not available. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... population="string [1]" count="positiveInteger [1]"/> Complex Type: PythonTransferFunction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | TransferFunction < PythonTransferFunction (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: PythonTransferFunction :Abstract: no :Documentation: This type denotes a transfer function entirely specified in the Python DSL PyTF. Properties """""""""" Attribute src ~~~~~~~~~~~~~ :Name: src :Type: PythonFilename :Multiplicity: [0..1] :Documentation: The 'src' attribute denotes the path of a python file that contains the entire transfer function. If this attribute is present, the actual contents of the transfer function element is ignored and only the contents of the specified Python file are taken into account. XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... src="PythonFilename [0..1]"> Allow any elements from a namespace other than this schema's namespace (skip validation). [0..*] Complex Type: Range ^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelector < MultiNeuronSelector (by extension) < Range (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Range :Abstract: no :Documentation: Selection of a range of neurons from an existing population Properties """""""""" Attribute from ~~~~~~~~~~~~~~ :Name: from :Type: nonNegativeInteger :Multiplicity: [1] :Documentation: The starting index from which neurons are selected Attribute to ~~~~~~~~~~~~ :Name: to :Type: nonNegativeInteger :Multiplicity: [1] :Documentation: The stop index to which neurons are selected Attribute step ~~~~~~~~~~~~~~ :Name: step :Type: positiveInteger :Multiplicity: [0..1] :Documentation: The step of the selection XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... population="string [1]" from="nonNegativeInteger [1]" to="nonNegativeInteger [1]" step="positiveInteger [0..1]"/> Complex Type: RangeTemplate ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | NeuronSelectorTemplate < RangeTemplate (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: RangeTemplate :Abstract: no :Documentation: A template for the range-based neuron selection Properties """""""""" Attribute from ~~~~~~~~~~~~~~ :Name: from :Type: TemplatePattern :Multiplicity: [1] :Documentation: A template for the start index of the selected range Attribute to ~~~~~~~~~~~~ :Name: to :Type: TemplatePattern :Multiplicity: [1] :Documentation: A template for the end index of the selected range Attribute step ~~~~~~~~~~~~~~ :Name: step :Type: TemplatePattern :Multiplicity: [0..1] :Documentation: A template for the step of the selected range XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... from="TemplatePattern [1]" to="TemplatePattern [1]" step="TemplatePattern [0..1]"/> Complex Type: Robot2Neuron ^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | TransferFunction < BIBITransferFunction (by extension) < Robot2Neuron (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Robot2Neuron :Abstract: no :Documentation: A Robot2Neuron transfer function is a transfer function whose primary purpose is to translate information coming from robot sensors, transform it and push them into neural networks. Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]"> Local [0..*] DeviceChannel [1] DeviceGroupChannel [1] TopicChannel [0..*] Complex Type: Scale ^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Scale (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Scale :Abstract: no :Documentation: The scaling of an element by a constant factor Properties """""""""" Element inner ~~~~~~~~~~~~~ :Name: inner :Type: FlowExpression :Multiplicity: [1] :Nillable: no :Abstract: no :Documentation: The inner flow expression Attribute factor ~~~~~~~~~~~~~~~~ :Name: factor :Type: double :Multiplicity: [1] :Documentation: The factor by which the inner expression should be scaled XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... factor="double [1]"> FlowExpression [1] Complex Type: SimulationStep ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < SimulationStep (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: SimulationStep :Abstract: no :Documentation: A reference to the simulation step Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <.../> Complex Type: Subtract ^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | FlowExpression < Operator (by extension) < Subtract (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: Subtract :Abstract: no :Documentation: The difference between two operands Properties """""""""" Element operand ~~~~~~~~~~~~~~~ :Name: operand :Type: FlowExpression :Multiplicity: [2..2] :Nillable: no :Abstract: no :Documentation: The arguments of the operator expression XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <...> FlowExpression [2..2] Complex Type: SynapseDynamics ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - TsodyksMarkramMechanism (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: SynapseDynamics :Abstract: yes :Documentation: This type denotes a reusable synapse dynamics configuration Properties """""""""" Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [0..1] :Default Value: default :Documentation: The name of the synapse dynamics configuration XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [0..1]"/> Complex Type: SynapseDynamicsRef ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | anyType < SynapseDynamicsRef (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: SynapseDynamicsRef :Abstract: no :Documentation: This type specifies a reference to a synapse dynamics configuration Properties """""""""" Attribute ref ~~~~~~~~~~~~~ :Name: ref :Type: string :Multiplicity: [1] :Documentation: The name of the synapse dynamics configuration XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... ref="string [1]"> Complex Type: TopicChannel ^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: TopicChannel :Abstract: no :Documentation: A connection of a transfer function to a robot control message topic Properties """""""""" Element body ~~~~~~~~~~~~ :Name: body :Type: FlowExpression :Multiplicity: [0..1] :Nillable: no :Abstract: no :Documentation: The value that should be sent to the robot control topic. If this element is present, then the channel is published to. Otherwise, the channel subscribes to the selected topic. Attribute name ~~~~~~~~~~~~~~ :Name: name :Type: string :Multiplicity: [1] :Documentation: The name of the robot topic channel Attribute topic ~~~~~~~~~~~~~~~ :Name: topic :Type: RobotTopicAddress :Multiplicity: [1] :Documentation: The actual topic address, for example '/husky/cmd_vel' Attribute type ~~~~~~~~~~~~~~ :Name: type :Type: string :Multiplicity: [1] :Documentation: The type of the topic XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [1]" topic="RobotTopicAddress [1]" type="string [1]"> FlowExpression [0..1] Complex Type: TransferFunction ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | | | | - PythonTransferFunction (by extension) | | | - BIBITransferFunction (by extension) | | | - Robot2Neuron (by extension) | | | - Neuron2Monitor (by restriction) | | | - Neuron2Robot (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: TransferFunction :Abstract: yes :Documentation: This is the abstract type for a transfer function specification. A transfer function may be specified either in XML or in Python. These specification options are reflected in subclasses of the abstract transfer function type. Properties """""""""" XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <.../> Complex Type: TsodyksMarkramMechanism ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | SynapseDynamics < TsodyksMarkramMechanism (by extension) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: TsodyksMarkramMechanism :Abstract: no :Documentation: A synapse dynamics implementation based on the Tsodyks-Markram mechanism Properties """""""""" Attribute u ~~~~~~~~~~~ :Name: u :Type: double :Multiplicity: [1] Attribute tau_rec ~~~~~~~~~~~~~~~~~ :Name: tau_rec :Type: double :Multiplicity: [1] Attribute tau_facil ~~~~~~~~~~~~~~~~~~~ :Name: tau_facil :Type: double :Multiplicity: [1] XML Instance Representation """"""""""""""""""""""""""" .. code:: xml <... name="string [0..1]" u="double [1]" tau_rec="double [1]" tau_facil="double [1]"/> Simple Type: BrainFilename ^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: BrainFilename :Content: Union of following types: H5FilenamePythonFilename :Documentation: This denotes the supported file types for neural network models. The current version only supports Python or H5 files for neural networks. Simple Type: ConfType ^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: ConfType :Content: Union of following types: ConfTypeEnumerationstring :Documentation: This type denotes a configuration type which can be a standard configuration type or a custom type. The latter is just any string. Simple Type: ConfTypeEnumeration ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < ConfTypeEnumeration (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: ConfTypeEnumeration :Content: Base XSD Type: stringvalue comes from list: {'retina'|'brainvisualizer'} :Documentation: This enumeration lists the standard configuration types used in the NRP. Members """"""" * retina * brainvisualizer Simple Type: DeviceType ^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < DeviceType (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: DeviceType :Content: Base XSD Type: stringvalue comes from list: {'ACSource'|'DCSource'|'FixedFrequency'|'LeakyIntegratorAlpha'|'LeakyIntegratorExp'|'NCSource'|'Poisson'|'SpikeRecorder'|'PopulationRate'} :Documentation: The device types supported by the CLE Members """"""" * ACSource: The current generators for direct current, alternating current or noisy current do not generate spikes but inject currents of the specified type into all of the connected neurons. These devices receive the amplitude of the generated current as inputs. The ACSource injects alternating currents. * DCSource: The DCSource type is similar to the ACSource but injects directed currents. * FixedFrequency: A fixed frequency generator deterministically generates spikes at a given frequency. Here, the frequency is set as a parameter and can be adjusted to sensory inputs. Unlike the other spike generators, this device type is not directly implemented in neuronal simulators but can be implemented by connecting a current generator with an integrate-and-fire neuron. * LeakyIntegratorAlpha: The concept of leaky integrators is to simply integrate spikes coming from a neuron under observation and add a leak term to it. The rationale behind this is that in spiking neuronal networks, the membrane potential is highly fragile. Shortly after a spike has been issued, the membrane potential is reset and therefore, it has a high importance whether any measurement is taken before or after a neuron spikes. Therefore, we augment the neuronal network with an additional leaky integrate-and-fire neuron with an infinite threshold potential (so that it never spikes) and measure the membrane potential of this neuron. The result is much less fragile and therefore appropriate to be used for robot control signals. This version of leaky integrators has an alpha-shaped post-synaptic current. * LeakyIntegratorExp: This device type is similar to LeakyIntegratorAlpha but has an exponentially shaped post-synaptic current. * NCSource: The noisy current generator is rather a tool to test whether the neuronal network currently simulated is robust with regard to noise rather than being a good choice to encode sensory inputs. * Poisson: A Poisson generator issues spikes according to a Poisson distribution. Here, the inverse of the lambda parameter can be set in accordance to sensory inputs. This inverse reflects the rate in which spikes are generated by this device. * SpikeRecorder: The simplest thing a spike sink can do is to simply record all spikes issued to a neuron under observation. However, this has two major drawbacks. At first, the communication overhead is increased since all spikes are transmitted between the neuronal simulation and the transfer function but more importantly the transfer function has to make sense of this series of spikes. This allows great flexibility as this approach is extensible, but it is not suited for general use. * PopulationRate: Another very common pattern is to simply take the average incoming spike rate of a neuron or a range of neurons. This is again relatively stable and can be used for translation into robot control signals. Simple Type: H5Filename ^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < H5Filename (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: H5Filename :Content: Base XSD Type: stringpattern = [a-zA-Z0-9\._/]*\.h5 :Documentation: This type denotes a path to an H5 file. Simple Type: NeuronTarget ^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < NeuronTarget (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: NeuronTarget :Content: Base XSD Type: stringvalue comes from list: {'Inhibitory'|'Excitatory'} :Documentation: The target of a neural connection Members """"""" * Inhibitory: Inhibitory means that the artificial synapse inhibits the target neuron, i.e. lowers its membrane potential. * Excitatory: Excitatory means that the artificial synapse excites the target neuron, i.e. the membrane potential raises Simple Type: PythonFilename ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < PythonFilename (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: PythonFilename :Content: Base XSD Type: stringpattern = [a-zA-Z0-9\._/]*\.py :Documentation: This type denotes a path to a Python file. Simple Type: RobotTopicAddress ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < RobotTopicAddress (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: RobotTopicAddress :Content: Base XSD Type: stringpattern = (/[a-zA-Z0-9\_-]+)+(/)? :Documentation: This type denotes a valid address of a robot control topic Simple Type: ScriptFilename ^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < ScriptFilename (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: ScriptFilename :Content: Base XSD Type: stringpattern = [a-zA-Z0-9\._/]*\.sh :Documentation: This type denotes a path to a script file. Simple Type: SDFFilename ^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < SDFFilename (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: SDFFilename :Content: Base XSD Type: stringpattern = [a-zA-Z0-9\._/]*\.(sdf|zip) :Documentation: This type denotes a path to an SDF (or Zip) file Simple Type: TemplatePattern ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | string < TemplatePattern (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: TemplatePattern :Content: Base XSD Type: stringpattern = (\(\s*)*(i|\d+)(\s*(\+|\*)\s*(\(\s*)*(i|\d+)\s*|\))* :Documentation: A regular expression denoting simple arithmetic index computations based on an index called i Simple Type: TimeStep ^^^^^^^^^^^^^^^^^^^^^ +-------------+-----------------------------------------------------------------------------------------------------------+ | Super-types | positiveInteger < TimeStep (by restriction) | +-------------+-----------------------------------------------------------------------------------------------------------+ | Sub-types | None | +-------------+-----------------------------------------------------------------------------------------------------------+ :Name: TimeStep :Content: Base XSD Type: positiveIntegervalue <= 1000 :Documentation: The timestep type of the CLE. This is a positive number in milliseconds. The maximum allowed value is 1000.