emodelrunner.protocols.synplas_protocols

Protocol creation functions & custom protocol classes for Synplas packages.

Functions

fastforward_synapses(cell_model)

Enable synapse fast-forwarding.

Classes

SweepProtocolCustom([name, stimuli, ...])

SweepProtocol with ability of synapse fastforwarding.

SweepProtocolPairSim([name, stimuli, ...])

Sweep protocol for pair simulation with fastforwarding.

class emodelrunner.protocols.synplas_protocols.SweepProtocolCustom(name=None, stimuli=None, recordings=None, cvode_active=None, fastforward=None)[source]

Bases: SweepProtocol

SweepProtocol with ability of synapse fastforwarding.

name

name of this object.

Type:

str

stimuli

Stimulus objects used in the protocol The list must be of size 2 and contain first the list for the presynaptic stimuli and then the list for the postsynaptic stimuli.

Type:

list of 2 lists of Stimuli

recordings

Recording objects used in the protocol. The list must be of size 2 and contain first the list for the presynaptic recording and then the list for the postsynaptic recording.

Type:

list of 2 lists of Recordings

cvode_active

whether to use variable time step

Type:

bool

fastforward

Time after which the synapses are fasforwarded. Leave None for no fastforward.

Type:

float

class emodelrunner.protocols.synplas_protocols.SweepProtocolPairSim(name=None, stimuli=None, recordings=None, cvode_active=None, fastforward=None)[source]

Bases: Protocol

Sweep protocol for pair simulation with fastforwarding.

name

name of this object.

Type:

str

stimuli

Stimulus objects used in the protocol The list must be of size 2 and contain first the list for the presynaptic stimuli and then the list for the postsynaptic stimuli.

Type:

list of 2 lists of Stimuli

recordings

Recording objects used in the protocol. The list must be of size 2 and contain first the list for the presynaptic recording and then the list for the postsynaptic recording.

Type:

list of 2 lists of Recordings

cvode_active

whether to use variable time step

Type:

bool

fastforward

Time after which the synapses are fasforwarded. Leave None for no fastforward.

Type:

float

destroy(sim=None)[source]

Destroy protocol.

Parameters:

sim (bluepyopt.ephys.NrnSimulator) – neuron simulator

instantiate(sim=None, pre_icell=None, post_icell=None)[source]

Instantiate.

Parameters:
  • sim (bluepyopt.ephys.NrnSimulator) – neuron simulator

  • pre_icell (neuron cell) – presynaptic cell instantiation in simulator

  • post_icell (neuron cell) – postsynaptic cell instantiation in simulator

run(precell_model, postcell_model, pre_param_values, post_param_values, sim=None, isolate=None, timeout=None)[source]

Instantiate protocol.

Parameters:
  • precell_model (bluepyopt.ephys.models.CellModel) – the presynaptic cell model

  • postcell_model (bluepyopt.ephys.models.CellModel) – the postsynaptic cell model

  • pre_param_values (dict) – optimized parameters of the presynaptic cell model

  • post_param_values (dict) – optimized parameters of the postsynaptic cell model

  • sim (bluepyopt.ephys.NrnSimulator) – neuron simulator

  • isolate (bool) – whether to isolate the run in a process with a timeout to avoid bad cells running for too long

  • timeout (float) – maximum real time (s) the cells are allowed to run when isolated

Returns:

list of 2 dicts containing the responses of both the cells

Has the structure [presynaptic response dict, postsynaptic response dict]

subprotocols()[source]

Return subprotocols.

Returns:

a dict containing the object

property total_duration

Total duration.

Returns:

total duration

Return type:

float

emodelrunner.protocols.synplas_protocols.fastforward_synapses(cell_model)[source]

Enable synapse fast-forwarding.

Parameters:

cell_model (emodelrunner.cell.CellModelCustom) – the cell whose synapses are to be fast-forwarded