simrunPSP_with_cell_modificationPSP_with_current_injection

PSP_with_current_injection

class simrun.PSP_with_cell_modification.PSP_with_current_injection(neuron_param, confile, target_vm=-70, delay=100, duration=200, optimize_for_timepoint=150, tEnd=300, cell_modify_functions={}, bounds=(0, 0.7))

Simulate EPSPs and IPSPs while the soma is voltage-clamped to a fixed membrane potential.

The membrane potential is clamped by injecting a current into the soma.

See also

single_cell_parser.cell_modify_functions for available cell modification functions.

Parameters:
  • neuron_param (NTParameterSet) – Parameters of the neuron model.

  • confile (str) – Path to the network connectivity (.con) file.

  • target_vm (float) – Membrane potential to clamp the soma to (in \(mV\)).

  • delay (float) – Delay before the current injection starts (in \(ms\)).

  • duration (float) – Duration of the current injection (in \(ms\)).

  • optimize_for_timepoint (float) – Timepoint for membrane voltage optimization (in \(ms\)). This usually coincides with the timepoint of a single synapse activation, after the membrane voltage has stabilized.

  • tEnd (float) – End time of the simulation (in \(ms\)).

  • cell_modify_functions (dict) – Dictionary of cell modification functions (see cell_modify_functions). The keys are the names of the functions, the values are the parameters of the functions.

  • bounds (tuple) – Limits for the current injection optimization to clamp the membrane potential (in \(nA\)).

Attributes:

neuron_param

Parameters of the neuron model.

Type:

NTParameterSet

confile

Path to the network connectivity (.con) file.

Type:

str

target_vm

Membrane potential to clamp the soma to (in \(mV\)).

Type:

float

delay

Delay before the current injection starts (in \(ms\)).

Type:

float

duration

Duration of the current injection (in \(ms\)).

Type:

float

optimize_for_timepoint

Timepoint for membrane voltage optimization (in \(ms\)). This usually coincides with the timepoint of a single synapse activation, after the membrane voltage has stabilized.

Type:

float

tEnd

End time of the simulation (in \(ms\)).

Type:

float

cell_modify_functions

Dictionary of cell modification functions (see cell_modify_functions). The keys are the names of the functions, the values are the parameters of the functions.

Type:

dict

bounds

Limits for the current injection optimization to clamp the membrane potential (in \(nA\)).

Type:

tuple

holding_current

Current that needs to be injected to hold the somatic potential at target_vm.

Type:

float

Methods:

optimize_holding_current()

Calculate the current that needs to be injected to hold the somatic potential at target_vm.

_objective_fun(current)

Callable to optimize.

_get_current_dependent_vt(current)

Run the current injection simulation

plot_current_injection_voltage_trace()

Visualize the voltage trace during the current injection

get_neuron_param_with_current_injection()

Get a Cell parameters file with a current injection.

get_psp_simulator(gExRange, exc_inh, mode)

Set up a PSPs object to simulate individual synapse PSPs.

get_psp_simulator_exc_and_inh_combined(gExRange, mode)

Set up and combine excitatory and inhibitory PSP simulators.

get()

Get the final PSPs object.