Paired turbulence and light effect on calcium increase in Hermissenda (Blackwell 2004)

 Download zip file 
Help downloading and running models
The sea slug Hermissenda learns to associate light and hair cell stimulation, but not when the stimuli are temporally uncorrelated...These issues were addressed using a multi-compartmental computer model of phototransduction, calcium dynamics, and ionic currents of the Hermissenda photoreceptor...simulations show that a potassium leak channel, which closes with an increase in calcium, is required to produce both the untrained LLD and the enhanced LLD due to the decrease in voltage dependent potassium currents.
1 . Blackwell KT (2004) Paired turbulence and light do not produce a supralinear calcium increase in Hermissenda. J Comput Neurosci 17:81-99 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell; Electrogenic pump;
Brain Region(s)/Organism:
Cell Type(s): Hermissenda photoreceptor Type B;
Channel(s): I A; I K,leak; I h; I K,Ca; I Sodium; I Calcium; I Potassium;
Gap Junctions:
Receptor(s): GabaA; GabaB; IP3;
Transmitter(s): Gaba;
Simulation Environment: Chemesis;
Model Concept(s): Temporal Pattern Generation; Invertebrate; Signaling pathways; Calcium dynamics;
Implementer(s): Blackwell, Avrama [avrama at];
Search NeuronDB for information about:  GabaA; GabaB; IP3; I A; I K,leak; I h; I K,Ca; I Sodium; I Calcium; I Potassium; Gaba;

function gabab_synapse(vpath, length, radius, ip3path, type)
str vpath, ip3path
float length, radius
str type

echo {type}
ce {vpath}

float initcon	=	0
/* volume of cylinder in Liters from cm units */
float vol=PI*radius*radius*length/1000

/* receptor + transmitter <-> bound_receptor */

   conservepool unbound_recept {recept_tot} {vol} 0 1e-6 
   poolcyl bound_recept {length} {radius} {initcon} 0 1e-6 
  create reaction gaba_recept_rxn
  setfield gaba_recept_rxn kf {gabab_kf} kb {gabab_kb}  
  addmsg unbound_recept gaba_recept_rxn SUBSTRATE Conc
  addmsg /stat/spike gaba_recept_rxn SUBSTRATE state
  addmsg bound_recept gaba_recept_rxn PRODUCT Conc 
  addmsg gaba_recept_rxn bound_recept RXN2 kfsubs kbprod 
  addmsg bound_recept unbound_recept CONC Conc 

/* bound_receptor + Gprot <-> recept-gaba-Gprot -> bound_receptor + Galfstar */

/**** Old formulation, using mmenz ****
 **** This has no unbinding of G from receptor after producing G alpha
poolcyl RgabaGprot {length} {radius} {initcon} 0 1e-6
conservepool Gprot {Gprot_syn} {vol} 0 1e-6 
create reaction RG_Gprot_rxn
setfield RG_Gprot_rxn kf {gabab_gf} kb {gabab_gb}
addmsg bound_recept RG_Gprot_rxn SUBSTRATE Conc
addmsg Gprot RG_Gprot_rxn SUBSTRATE Conc
addmsg RgabaGprot RG_Gprot_rxn PRODUCT Conc
addmsg RG_Gprot_rxn bound_recept RXN2 kbprod kfsubs
addmsg RG_Gprot_rxn RgabaGprot RXN2 kfsubs kbprod
addmsg RgabaGprot unbound_recept CONC Conc
addmsg RgabaGprot Gprot CONC Conc

poolcyl Galfstar {length} {radius} {initcon} 0 1e-6
create mmenz RGGprot_enz
setfield RGGprot_enz Vmax {gabab_gcat}
addmsg RgabaGprot RGGprot_enz ENZ Conc
addmsg RGGprot_enz Galfstar RXN0 product
addmsg Galfstar Gprot CONC Conc
*** end of old formulation ****/

   poolcyl Galfstar {length} {radius} {initcon} 0 1e-6 
   poolcyl Gbg {length} {radius} {initcon} 0 1e-6 
   conservepool Gprot {Gprot_syn} {vol} 0 1e-6 
   create enzyme RgabaGprot
   setfield RgabaGprot kf {gabab_gf} kb {gabab_gb} kcat {gabab_gcat} type 0 units 1e-6 vol {vol}
   addmsg bound_recept RgabaGprot ENZ Conc
   addmsg Gprot RgabaGprot SUBSTRATE Conc
   addmsg RgabaGprot bound_recept RXN2 kbprod kfsubs 
   addmsg RgabaGprot Galfstar RXN0MOLES deltacat
   addmsg RgabaGprot Gbg RXN0MOLES deltacat

   addmsg RgabaGprot unbound_recept CONC complex_conc
   addmsg RgabaGprot Gprot CONC complex_conc 

/* Galphastar -> Ginact */
   poolcyl Ginact {length} {radius} {initcon} 0 1e-6
   create reaction galfdeg
   setfield galfdeg kf {Khyd}
   addmsg Galfstar galfdeg SUBSTRATE Conc
   addmsg galfdeg Galfstar RXN1 kf
   addmsg galfdeg Ginact RXN0 kfsubs
   addmsg Ginact Gprot CONC Conc
   addmsg Galfstar Gprot CONC Conc

/* plc + galfstar <-> plc-galpha */
conservepool plctot {plc_syn} {vol} 0 1e-6
poolcyl plcGa {length} {radius} {initcon} 0 1e-6
create reaction plc_rxn
setfield plc_rxn kf {Kplcf} kb {Kplcb}
addmsg Galfstar plc_rxn SUBSTRATE Conc
addmsg plctot plc_rxn SUBSTRATE Conc
addmsg plcGa plc_rxn PRODUCT Conc
addmsg plc_rxn plcGa RXN2 kfsubs kbprod
addmsg plc_rxn Galfstar RXN2 kbprod kfsubs
addmsg plcGa plctot CONC Conc
addmsg plcGa Gprot CONC Conc

/***** GAP activity of PLC causes degradation of PLC-Ga ***/
   create reaction GAP
   setfield GAP kf {Kgap}
   addmsg plcGa GAP SUBSTRATE Conc
   addmsg GAP plcGa RXN1 kf
   addmsg GAP Ginact RXN0 kfsubs

if (type=="mm")
   /***** plc + pip2 <-> ip3 + plc using mm kinetics ****/

   conservepool pip2 {piptot} {vol} 0 1e-6
   create mmenz pip2ip3

   /* divide the total activity over compartments 5-10 
    * ideally, would want to set Kpicat1 to correct value, and 
    * send 1/5 of quantity to each compartment.*/

   setfield pip2ip3 Vmax {Kpicat1/5} Km {({Kpicat1}+{Kpib})/{Kpif}}
   addmsg plcGa pip2ip3 ENZ quantity
   addmsg pip2 pip2ip3 SUBSTRATE Conc 

   int i
   for (i=5; i<=10; i=i+1)
      addmsg pip2ip3 {ip3path}[{i}] RXN0MOLES product
      addmsg {ip3path}[{i}] pip2 CONC Conc
   /***** end of plc + pip2 <-> ip3 + plc using mm kinetics ****/


   /***** plc + pip2 <-> plcPI -> ip3 + plc using enzyme formulation ***/

   poolcyl pip2 {length} {radius} {piptot} 0 1e-6
   poolcyl plcPI {length} {radius} {initcon} 0 1e-6
   create reaction plc_pip
   setfield plc_pip kf {Kpif} kb {Kpib}

	/*** messages to compute enzyme complex ***/
   addmsg pip2 plc_pip SUBSTRATE Conc
   addmsg plcGa plc_pip SUBSTRATE quantity
   addmsg plcPI plc_pip PRODUCT quantity

   addmsg plc_pip plcGa RXN2MOLES kbprod kfsubs
   addmsg plc_pip plcPI RXN2MOLES kfsubs kbprod
   addmsg plc_pip pip2 RXN2MOLES kbprod kfsubs

   /* conserve pool messages */
   addmsg plcPI Gprot MOLES quantity
   addmsg plcPI plctot MOLES quantity

	/*** reaction to create ip3 and produce plc and Ginact***/
   create reaction plcPIgap
   setfield plcPIgap kf {Kpicat2}

   addmsg plcPI plcPIgap SUBSTRATE quantity
   addmsg plcPIgap plcPI RXN1 kf
   addmsg plcPIgap Ginact RXN0MOLES kfsubs

   /* ideally, should distribute ip3 to several compartments, but
    * can't do that with the present code, so ip3 from GAP goes to 6 and 
    * ip3 with plcGa regenerated goes to 9  ***/

   addmsg plcPIgap {ip3path}[6] RXN0MOLES kfsubs

   /** reaction to create ip3 and regenerate plcGqa ***/
   create reaction plcPIenz
   setfield plcPIenz kf {Kpicat1} 

   addmsg plcPI plcPIenz SUBSTRATE quantity
   addmsg plcPIenz plcPI RXN1 kf
   addmsg plcPIenz plcGa RXN0MOLES kfsubs

   addmsg plcPIenz {ip3path}[9] RXN0MOLES kfsubs

   /*** end of reaction formulation of enzymes ***/

/*** inactivation of Gbg - assume that Gbg combines with inactive Galpha 
 *** thus it's inacivation rate should be similar to that of Galpha ***/

   addmsg GAP Gbg RXN1 kf


Loading data, please wait...