| { |
| "ABCD": { |
| "format": "ModECI MDF v0.4", |
| "graphs": { |
| "ABCD": { |
| "notes": "Example of a simplified network", |
| "nodes": { |
| "A_input": { |
| "metadata": { |
| "color": "0.2 0.2 0.2", |
| "radius": 3, |
| "region": "region1" |
| }, |
| "parameters": { |
| "variable": { |
| "value": [ |
| 2.0 |
| ] |
| }, |
| "spike": { |
| "default_initial_value": [ |
| 0 |
| ], |
| "conditions": { |
| "condition_0_on": { |
| "test": "OUTPUT < 0", |
| "value": 1 |
| }, |
| "condition_0_off": { |
| "test": "spike > 0", |
| "value": 0 |
| } |
| } |
| }, |
| "V": { |
| "value": 0 |
| }, |
| "OUTPUT": { |
| "value": "variable" |
| } |
| }, |
| "input_ports": { |
| "INPUT": {} |
| }, |
| "output_ports": { |
| "spike": { |
| "value": "spike" |
| }, |
| "V": { |
| "value": "V" |
| }, |
| "OUTPUT": { |
| "value": "OUTPUT" |
| } |
| }, |
| "notes": "Cell: [Cell(notes=None, id='a_input', parameters={'variable': 'A_initial'}, neuroml2_source_file=None, lems_source_file='PNL.xml', neuroml2_cell=None, pynn_cell=None, arbor_cell=None, bindsnet_node=None)] is defined in PNL.xml and in Lems is: Component, id: a_input, type: inputNode,\n parameters: {'variable': '2'}\n parent: None\n" |
| }, |
| "A": { |
| "metadata": { |
| "color": "0 0.9 0", |
| "radius": 5, |
| "region": "region1" |
| }, |
| "parameters": { |
| "slope": { |
| "value": [ |
| 2.0 |
| ] |
| }, |
| "intercept": { |
| "value": [ |
| 2.0 |
| ] |
| }, |
| "spike": { |
| "default_initial_value": [ |
| 0 |
| ], |
| "conditions": { |
| "condition_0_on": { |
| "test": "OUTPUT < 0", |
| "value": 1 |
| }, |
| "condition_0_off": { |
| "test": "spike > 0", |
| "value": 0 |
| } |
| } |
| }, |
| "V": { |
| "value": 0 |
| }, |
| "OUTPUT": { |
| "value": "INPUT*slope + intercept" |
| } |
| }, |
| "input_ports": { |
| "INPUT": {} |
| }, |
| "output_ports": { |
| "spike": { |
| "value": "spike" |
| }, |
| "V": { |
| "value": "V" |
| }, |
| "OUTPUT": { |
| "value": "OUTPUT" |
| } |
| }, |
| "notes": "Cell: [Cell(notes=None, id='a', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', neuroml2_cell=None, pynn_cell=None, arbor_cell=None, bindsnet_node=None)] is defined in PNL.xml and in Lems is: Component, id: a, type: pnlLinearFunctionTM,\n parameters: {'slope': '2', 'intercept': '2'}\n parent: None\n" |
| }, |
| "B": { |
| "metadata": { |
| "color": ".8 .8 .8", |
| "radius": 5, |
| "region": "region1" |
| }, |
| "parameters": { |
| "gain": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "bias": { |
| "value": [ |
| 0.0 |
| ] |
| }, |
| "x_0": { |
| "value": [ |
| 0.0 |
| ] |
| }, |
| "offset": { |
| "value": [ |
| 0.0 |
| ] |
| }, |
| "spike": { |
| "default_initial_value": [ |
| 0 |
| ], |
| "conditions": { |
| "condition_0_on": { |
| "test": "OUTPUT < 0", |
| "value": 1 |
| }, |
| "condition_0_off": { |
| "test": "spike > 0", |
| "value": 0 |
| } |
| } |
| }, |
| "V": { |
| "value": 0 |
| }, |
| "OUTPUT": { |
| "value": "1/(1+numpy.exp(-1*gain*(INPUT + bias - x_0)+offset))" |
| } |
| }, |
| "input_ports": { |
| "INPUT": {} |
| }, |
| "output_ports": { |
| "spike": { |
| "value": "spike" |
| }, |
| "V": { |
| "value": "V" |
| }, |
| "OUTPUT": { |
| "value": "OUTPUT" |
| } |
| }, |
| "notes": "Cell: [Cell(notes=None, id='b', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', neuroml2_cell=None, pynn_cell=None, arbor_cell=None, bindsnet_node=None)] is defined in PNL.xml and in Lems is: Component, id: b, type: pnlLogisticFunctionTM,\n parameters: {'gain': '1.0', 'bias': '0.0', 'x_0': '0.0', 'offset': '0.0'}\n parent: None\n" |
| }, |
| "C": { |
| "metadata": { |
| "color": "0.7 0.7 0.7", |
| "radius": 5, |
| "region": "region1" |
| }, |
| "parameters": { |
| "rate": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "bias": { |
| "value": [ |
| 0.0 |
| ] |
| }, |
| "scale": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "offset": { |
| "value": [ |
| 0.0 |
| ] |
| }, |
| "spike": { |
| "default_initial_value": [ |
| 0 |
| ], |
| "conditions": { |
| "condition_0_on": { |
| "test": "OUTPUT < 0", |
| "value": 1 |
| }, |
| "condition_0_off": { |
| "test": "spike > 0", |
| "value": 0 |
| } |
| } |
| }, |
| "V": { |
| "value": 0 |
| }, |
| "OUTPUT": { |
| "value": "scale * numpy.exp((rate * INPUT) + bias) + offset" |
| } |
| }, |
| "input_ports": { |
| "INPUT": {} |
| }, |
| "output_ports": { |
| "spike": { |
| "value": "spike" |
| }, |
| "V": { |
| "value": "V" |
| }, |
| "OUTPUT": { |
| "value": "OUTPUT" |
| } |
| }, |
| "notes": "Cell: [Cell(notes=None, id='c', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', neuroml2_cell=None, pynn_cell=None, arbor_cell=None, bindsnet_node=None)] is defined in PNL.xml and in Lems is: Component, id: c, type: pnlExponentialFunctionTM,\n parameters: {'rate': '1.0', 'bias': '0.0', 'scale': '1.0', 'offset': '0.0'}\n parent: None\n" |
| }, |
| "D": { |
| "metadata": { |
| "color": "0.7 0 0", |
| "radius": 5, |
| "region": "region1" |
| }, |
| "parameters": { |
| "rate": { |
| "value": [ |
| 0.05 |
| ] |
| }, |
| "time_step_size": { |
| "value": [ |
| 0.1 |
| ] |
| }, |
| "spike": { |
| "default_initial_value": [ |
| 0 |
| ], |
| "conditions": { |
| "condition_0_on": { |
| "test": "OUTPUT < 0", |
| "value": 1 |
| }, |
| "condition_0_off": { |
| "test": "spike > 0", |
| "value": 0 |
| } |
| } |
| }, |
| "OUTPUT": { |
| "time_derivative": "(rate * INPUT) / time_step_size", |
| "default_initial_value": [ |
| 0 |
| ] |
| }, |
| "V": { |
| "value": 0 |
| } |
| }, |
| "input_ports": { |
| "INPUT": {} |
| }, |
| "output_ports": { |
| "spike": { |
| "value": "spike" |
| }, |
| "OUTPUT": { |
| "value": "OUTPUT" |
| }, |
| "V": { |
| "value": "V" |
| } |
| }, |
| "notes": "Cell: [Cell(notes=None, id='d', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', neuroml2_cell=None, pynn_cell=None, arbor_cell=None, bindsnet_node=None)] is defined in PNL.xml and in Lems is: Component, id: d, type: pnlSimpleIntegratorMechanism,\n parameters: {'rate': '0.05', 'time_step_size': '0.1s'}\n parent: None\n" |
| }, |
| "proj_input_rsDL": { |
| "parameters": { |
| "weight": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "SEC": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "rpeer": { |
| "value": "peer_OUTPUT" |
| }, |
| "I": { |
| "value": "weight * rpeer" |
| } |
| }, |
| "input_ports": { |
| "peer_OUTPUT": {} |
| }, |
| "output_ports": { |
| "I": { |
| "value": "I" |
| } |
| }, |
| "notes": "Cell: [Synapse(notes=None, id='rsDL', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', pynn_synapse_type=None, pynn_receptor_type=None)] is defined in PNL.xml and in Lems is: Component, id: rsDL, type: synapseDL,\n parameters: {}\n parent: None\n" |
| }, |
| "proj0_rsDL": { |
| "parameters": { |
| "weight": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "SEC": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "rpeer": { |
| "value": "peer_OUTPUT" |
| }, |
| "I": { |
| "value": "weight * rpeer" |
| } |
| }, |
| "input_ports": { |
| "peer_OUTPUT": {} |
| }, |
| "output_ports": { |
| "I": { |
| "value": "I" |
| } |
| }, |
| "notes": "Cell: [Synapse(notes=None, id='rsDL', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', pynn_synapse_type=None, pynn_receptor_type=None)] is defined in PNL.xml and in Lems is: Component, id: rsDL, type: synapseDL,\n parameters: {}\n parent: None\n" |
| }, |
| "proj1_rsDL": { |
| "parameters": { |
| "weight": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "SEC": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "rpeer": { |
| "value": "peer_OUTPUT" |
| }, |
| "I": { |
| "value": "weight * rpeer" |
| } |
| }, |
| "input_ports": { |
| "peer_OUTPUT": {} |
| }, |
| "output_ports": { |
| "I": { |
| "value": "I" |
| } |
| }, |
| "notes": "Cell: [Synapse(notes=None, id='rsDL', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', pynn_synapse_type=None, pynn_receptor_type=None)] is defined in PNL.xml and in Lems is: Component, id: rsDL, type: synapseDL,\n parameters: {}\n parent: None\n" |
| }, |
| "proj2_rsDL": { |
| "parameters": { |
| "weight": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "SEC": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "rpeer": { |
| "value": "peer_OUTPUT" |
| }, |
| "I": { |
| "value": "weight * rpeer" |
| } |
| }, |
| "input_ports": { |
| "peer_OUTPUT": {} |
| }, |
| "output_ports": { |
| "I": { |
| "value": "I" |
| } |
| }, |
| "notes": "Cell: [Synapse(notes=None, id='rsDL', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', pynn_synapse_type=None, pynn_receptor_type=None)] is defined in PNL.xml and in Lems is: Component, id: rsDL, type: synapseDL,\n parameters: {}\n parent: None\n" |
| }, |
| "proj3_rsDL": { |
| "parameters": { |
| "weight": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "SEC": { |
| "value": [ |
| 1.0 |
| ] |
| }, |
| "rpeer": { |
| "value": "peer_OUTPUT" |
| }, |
| "I": { |
| "value": "weight * rpeer" |
| } |
| }, |
| "input_ports": { |
| "peer_OUTPUT": {} |
| }, |
| "output_ports": { |
| "I": { |
| "value": "I" |
| } |
| }, |
| "notes": "Cell: [Synapse(notes=None, id='rsDL', parameters=None, neuroml2_source_file=None, lems_source_file='PNL.xml', pynn_synapse_type=None, pynn_receptor_type=None)] is defined in PNL.xml and in Lems is: Component, id: rsDL, type: synapseDL,\n parameters: {}\n parent: None\n" |
| } |
| }, |
| "edges": { |
| "A_TO_proj_input_rsDL": { |
| "name": "A_TO_proj_input_rsDL", |
| "sender_port": "OUTPUT", |
| "receiver_port": "peer_OUTPUT", |
| "sender": "A", |
| "receiver": "proj_input_rsDL" |
| }, |
| "proj_input_rsDL_TO_B": { |
| "name": "proj_input_rsDL_TO_B", |
| "sender_port": "I", |
| "receiver_port": "INPUT", |
| "sender": "proj_input_rsDL", |
| "receiver": "B" |
| }, |
| "A_input_TO_proj0_rsDL": { |
| "name": "A_input_TO_proj0_rsDL", |
| "sender_port": "OUTPUT", |
| "receiver_port": "peer_OUTPUT", |
| "sender": "A_input", |
| "receiver": "proj0_rsDL" |
| }, |
| "proj0_rsDL_TO_A": { |
| "name": "proj0_rsDL_TO_A", |
| "sender_port": "I", |
| "receiver_port": "INPUT", |
| "sender": "proj0_rsDL", |
| "receiver": "A" |
| }, |
| "A_TO_proj1_rsDL": { |
| "name": "A_TO_proj1_rsDL", |
| "sender_port": "OUTPUT", |
| "receiver_port": "peer_OUTPUT", |
| "sender": "A", |
| "receiver": "proj1_rsDL" |
| }, |
| "proj1_rsDL_TO_C": { |
| "name": "proj1_rsDL_TO_C", |
| "sender_port": "I", |
| "receiver_port": "INPUT", |
| "sender": "proj1_rsDL", |
| "receiver": "C" |
| }, |
| "B_TO_proj2_rsDL": { |
| "name": "B_TO_proj2_rsDL", |
| "sender_port": "OUTPUT", |
| "receiver_port": "peer_OUTPUT", |
| "sender": "B", |
| "receiver": "proj2_rsDL" |
| }, |
| "proj2_rsDL_TO_D": { |
| "name": "proj2_rsDL_TO_D", |
| "sender_port": "I", |
| "receiver_port": "INPUT", |
| "sender": "proj2_rsDL", |
| "receiver": "D" |
| }, |
| "C_TO_proj3_rsDL": { |
| "name": "C_TO_proj3_rsDL", |
| "sender_port": "OUTPUT", |
| "receiver_port": "peer_OUTPUT", |
| "sender": "C", |
| "receiver": "proj3_rsDL" |
| }, |
| "proj3_rsDL_TO_D": { |
| "name": "proj3_rsDL_TO_D", |
| "sender_port": "I", |
| "receiver_port": "INPUT", |
| "sender": "proj3_rsDL", |
| "receiver": "D" |
| } |
| } |
| } |
| } |
| } |
| } |
|
|