//======== CREATE POPULATION OF GENICULATE NEURONS FOR NGU MODEL======// // This file contains functions to create a population of geniculate // // neurons for the NGU model. The geniculate neurons are responsible // // for delivering the visual stimulus from the lateral geniculate // // nucleus (LGN). // // // // Setup: // // 1. Specify the neurons by creating a text file of x y z // // coordinates for the neurons, one neuron per line. // // 2. Call make_geniculate_cells // // // //====================================================================// include ../lib/global_constants.g include ../lib/utilities_build.g include ../lib/channels.g //===================LGN PARAMETER DEFINITIONS =======================// float LGN_RM = 1/0.03 * 1e3 * 1e-4 //specific membrane resistance (ohms m^2) float LGN_CM = 1.4 * 1e-6/1e-4 //specific membrane capacitance (farads/m^2) float LGN_RA = 100.00 * 1e-2 //specific axial resistance (ohms m) float LGN_ELEAK = -58.4 * 1e-3 //membrane leakage potential (volts) float LGN_ENa = 40.00 * 1e-3 //sodium reversal potential (volts) float LGN_GNa = 370.00 * 1e-3/1e-4 //maximum sodium conductance (S/m^2) float LGN_EK = -90.00 * 1e-3 //potassium reversal potential (volts) float LGN_GK = 250.00 * 1e-3/1e-4 //maximum potassium conductance (S/m^2) float LGN_SF = 1.8*PI //membrane scale factor (dimensionless) // compartment dimensions diameter(_D) in meters float LGN_SOMA_D = 20.6 * 1e-6 // compartment surface areas in m^2 float LGN_SOMA_A = (LGN_SOMA_D * LGN_SOMA_D) * LGN_SF // soma spike parameters float LGN_SPIKE_THRESH = 0.0 float LGN_SPIKE_REFRACT = 0.01 float LGN_SPIKE_AMP = 1 /* ****************************************************************** make_soma_lgn Creates a spherical soma compartment containing sodium and potassium channels Parameters: path name of the soma object to be created ****************************************************************** */ function make_soma_lgn(path) str path make_sphere_compartment {path} {LGN_SOMA_D} {LGN_SOMA_A} \ {LGN_ELEAK}, {LGN_RM}, {LGN_CM}, {LGN_RA} make_sodium_channel {path} {LGN_GNa} {LGN_ENa} {LGN_SOMA_A} make_potassium_channel {path} {LGN_GK} {LGN_EK} {LGN_SOMA_A} make_spike {path} {LGN_SPIKE_THRESH} {LGN_SPIKE_REFRACT} {LGN_SPIKE_AMP} end /* ****************************************************************** make_geniculate_cells Creates a population of geniculate cells with names of the form {root}/cell#. Parameters: coord_file name of text file containing neuron positions root parent of all geniculate neurons ****************************************************************** */ function make_geniculate_cells (coord_file, root) str coord_file, root create neutral {root} str parent = {root}@"/cell" read_coords {coord_file} {parent} str name foreach name ({el {parent}#}) make_soma_lgn {name}/soma end end