Inputs |
| A number of ComponentTypes for providing spiking and current inputs to other ComponentTypes |
| Original LEMS ComponentType definitions: Inputs.xml Schema against which NeuroML based on these should be valid: NeuroML_v2beta.xsd |
| basePointCurrent | ||
| Base type for all ComponentTypes which produce a current i (with dimension current) | ||
| Exposures | i The total (time varying) current produced by this ComponentType |
current |
|
baseVoltageDepPointCurrent
extends basePointCurrent |
||
| Base type for all ComponentTypes which produce a current i (with dimension current) and require a membrane potential v exposed on the parent Component | ||
| Exposures | i (from basePointCurrent) | current |
| Requirements | v The current may vary with the voltage exposed by the ComponentType on which this is placed |
voltage |
| basePointCurrentDL | ||
| Base type for all ComponentTypes which produce a dimensionless current I. There will eventually be dimensionless equivalents of all the core current producing ComponentTypes such as pulseGenerator, sineGenerator and rampGenerator | ||
| Exposures | I The total (time varying) current produced by this ComponentType |
Dimensionless |
|
baseVoltageDepPointCurrentDL
extends basePointCurrentDL |
||
| Base type for all ComponentTypes which produce a dimensionless current I and require a dimensionless membrane potential V exposed on the parent Component | ||
| Exposures | I (from basePointCurrentDL) | Dimensionless |
| Requirements | V The current may vary with the voltage exposed by the ComponentType on which this is placed |
Dimensionless |
| baseSpikeSource | ||
| Base for any ComponentType whose main purpose is to emit spikes. The exposed variable tsince can be used for plotting the time since the Component has spiked last | ||
| Exposures | tsince Time since the last spike was emitted |
time |
| Event Ports | spike Port on which spikes are emitted |
Direction: out |
|
spikeGenerator
extends baseSpikeSource |
||
| Simple generator of spikes at a regular interval set by period. | ||
| Parameters | period Time between spikes. First spike will be emitted after this time. |
time |
| Exposures | tsince (from baseSpikeSource) | time |
| Event Ports | spike (from baseSpikeSource) | Direction: out |
| Dynamics |
State Variables tsince time (exposed as tsince) On Start tsince = 0 On Conditions IF tsince > period THEN tsince = 0 EVENT OUT on port spike Time Derivatives d tsince /dt = 1 |
|
|
spikeGeneratorRandom
extends baseSpikeSource |
||
| Generator of spikes with a random interspike interval of at least minISI and at most maxISI | ||
| Parameters | maxISI Maximum interspike interval |
time | minISI Minimum interspike interval |
time |
| Constants | MSEC = 1ms | time |
| Exposures | isi The interval until the next spike |
time | tsince (from baseSpikeSource) | time |
| Event Ports | spike (from baseSpikeSource) | Direction: out |
| Dynamics |
State Variables tsince time (exposed as tsince) isi time (exposed as isi) On Start tsince = 0 isi = minISI + MSEC * random((maxISI - minISI) / MSEC) On Conditions IF tsince >= isi THEN isi = minISI + MSEC * random((maxISI - minISI) / MSEC) tsince = 0 EVENT OUT on port spike Time Derivatives d tsince /dt = 1 |
|
|
pulseGenerator
extends basePointCurrent |
||
| Generates a constant current pulse of a certain amplitude for a specified duration after a delay | ||
| Parameters | amplitude Amplitude of current pulse |
current | delay Delay before change in current. Current is zero prior to this. |
time | duration Duration for holding current at amplitude. Current is zero after delay + duration. |
time |
| Exposures | i (from basePointCurrent) | current |
| Event Ports | in Note this is not used here. Will be removed in future |
Direction: in |
| Dynamics |
State Variables i current (exposed as i) On Conditions IF t < delay THEN i = 0 IF t >= delay AND t < duration + delay THEN i = amplitude IF t >= duration + delay THEN i = 0 On Events EVENT IN on port: in |
|
|
pulseGeneratorDL
extends basePointCurrentDL |
||
| Dimensionless equivalent of pulseGenerator. Generates a constant current pulse of a certain amplitude for a specified duration after a delay | ||
| Parameters | amplitude Amplitude of current pulse |
Dimensionless | delay Delay before change in current. Current is zero prior to this. |
time | duration Duration for holding current at amplitude. Current is zero after delay + duration. |
time |
| Exposures | I (from basePointCurrentDL) | Dimensionless |
| Event Ports | in Note this is not used here. Will be removed in future |
Direction: in |
| Dynamics |
State Variables I Dimensionless (exposed as I) On Conditions IF t < delay THEN I = 0 IF t >= delay AND t < duration + delay THEN I = amplitude IF t >= duration + delay THEN I = 0 On Events EVENT IN on port: in |
|
|
sineGenerator
extends basePointCurrent |
||
| Generates a sinusoidally varying current after a time delay, for a fixed duration. The period and maximum amplitude of the current can be set as well as the phase at which to start. | ||
| Parameters | amplitude | current | delay | time | duration | time | period | time | phase | Dimensionless |
| Exposures | i (from basePointCurrent) | current |
| Event Ports | in | Direction: in |
| Dynamics |
State Variables i current (exposed as i) On Conditions IF t < delay THEN i = 0 IF t >= delay AND t < duration+delay THEN i = amplitude * sin(phase + (2 * 3.14159265 * (t-delay)/period) ) IF t >= duration+delay THEN i = 0 On Events EVENT IN on port: in |
|
|
rampGenerator
extends basePointCurrent |
||
| Generates a ramping current after a time delay, for a fixed duration. During this time the current steadily changes from startAmplitude to finishAmplitude. | ||
| Parameters | baselineAmplitude | current | delay | time | duration | time | finishAmplitude | current | startAmplitude | current |
| Exposures | i (from basePointCurrent) | current |
| Event Ports | in | Direction: in |
| Dynamics |
State Variables i current (exposed as i) On Start i = baselineAmplitude On Conditions IF t < delay THEN i = baselineAmplitude IF t >= delay AND t < duration+delay THEN i = startAmplitude + (finishAmplitude - startAmplitude) * (t - delay) / (duration) IF t >= duration+delay THEN i = baselineAmplitude On Events EVENT IN on port: in |
|
|
rampGeneratorDL
extends basePointCurrentDL |
||
| Generates a ramping current after a time delay, for a fixed duration. During this time the dimensionless current steadily changes from startAmplitude to finishAmplitude. | ||
| Parameters | baselineAmplitude | Dimensionless | delay | time | duration | time | finishAmplitude | Dimensionless | startAmplitude | Dimensionless |
| Exposures | I (from basePointCurrentDL) | Dimensionless |
| Event Ports | in | Direction: in |
| Dynamics |
State Variables I Dimensionless (exposed as I) On Start I = baselineAmplitude On Conditions IF t < delay THEN I = baselineAmplitude IF t >= delay AND t < duration+delay THEN I = startAmplitude + (finishAmplitude - startAmplitude) * (t - delay) / (duration) IF t >= duration+delay THEN I = baselineAmplitude On Events EVENT IN on port: in |
|
|
voltageClamp
extends baseVoltageDepPointCurrent |
||
| Voltage clamp. Applies a variable current i to try to keep parent at targetVoltage. Not yet fully tested!!! | ||
| Parameters | delay Delay before change in current. Current is zero prior to this. |
time | duration Duration for attempting to keep parent at targetVoltage. Current is zero after delay + duration. |
time | seriesResistance Current will be calculated by the difference in voltage between the target and parent, divided by this value |
resistance | targetVoltage Current will be applied to try to get parent to this target voltage |
voltage |
| Exposures | i (from basePointCurrent) | current |
| Requirements | v (from baseVoltageDepPointCurrent) | voltage |
| Event Ports | in Note this is not used here. Will be removed in future |
Direction: in |
| Dynamics |
State Variables i current (exposed as i) On Conditions IF t < delay THEN i = 0 IF t >= delay THEN i = 1e-5 * (targetVoltage - v) / seriesResistance IF t > duration + delay THEN i = 0 On Events EVENT IN on port: in |
|
|
spikeArray
extends baseSpikeSource |
||
| Set of spike ComponentTypes, each emitting one spike at a certain time. Can be used to feed a predetermined spike train into a cell | ||
| Children elements | spike | spike |
| Exposures | tsince (from baseSpikeSource) | time |
| Event Ports | in This will receive events from the children |
Direction: in | spike (from baseSpikeSource) | Direction: out |
| Dynamics |
State Variables tsince time (exposed as tsince) On Start tsince = 0 On Events EVENT IN on port: in tsince = 0 EVENT OUT on port spike Time Derivatives d tsince /dt = 1 |
|
|
spike
extends baseSpikeSource |
||
| Emits a single spike at the specified time | ||
| Parameters | time Time at which to emit one spike event |
time |
| Exposures | spiked 0 signals not yet spiked, 1 signals has spiked |
Dimensionless | tsince (from baseSpikeSource) | time |
| Event Ports | spike (from baseSpikeSource) | Direction: out |
| Dynamics |
Structure WITH this AS a WITH parent AS b EVENT CONNECTION from a TO b State Variables tsince time (exposed as tsince) spiked Dimensionless (exposed as spiked) On Start tsince = 0 On Conditions IF (t >= time) AND (spiked = 0) THEN spiked = 1 tsince = 0 EVENT OUT on port spike Time Derivatives d tsince /dt = 1 |
|