synapse and template

Moderator: wwlytton

Post Reply
shahali

synapse and template

Post by shahali »

Hi,I want to have a network which synaptic connections are depends on Ca+2 concentration and voltage of presynaptic cells ,I use template but how can I refer to Ca+2 concentration and voltage of presynaptic cells, how can I make them public member of the template?thank you
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Post by ted »

The template only defines the properties of a cell class, not the details of the mechanism of
synaptic transmission between cells. To represent transmission that depends on
presynaptic Vm and Ca, it is likely that you will need a custom mechanism specified with
NMODL. What are the equations or reactions that express your conceptual model of
synaptic transmission?
shahali

Post by shahali »

I wrote the mechnism which I need with NMODL.
I want to have a 5 precell network so at hoc file I wrote :


//////////////////////////
begintemplate precell
create precell
precell {
nseg=1
diam=10 //um
L=10/PI //um
cm=30 // 1uF/cm2
insert Ca
}
endtemplate precell
ncell=5
objectvar PRECELL[ncell]
for i=0, ncell-1{
PRECELL =new precell(1)
}
objectvar synapse[ncell]
for i=0,ncell-1 postcell[1]{
synapse=new SYNAPSE(0.2)
setpointer synapse.preCA,PRECELL.Cai(0.2)
setpointer synapse.vprecell,PRECELL.v(0.2)
}
//////////////////////////////////////
Except template how can I make network by same cells and dependency of some variables on their mechanism?
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Post by ted »

cm=30 // 1uF/cm2
Are you sure? The published experimental estimates of specific membrane
capacitance that I have seen lie between ~ 0.8 and 2.5 uf/cm2.

The setpointer statements will fail because:
1. it does not specify the name of the section in PRECELL to which v(0.2) or Cai(0.2) belongs.
2. the section is not a public member of the precell class
3. the precell class definition does not contain an init() procedure, so nothing
will happen when a new instance of the precell class is created--the
precell object will not even contain a section.

One setpointer statement also assumes that the presynaptic cell has a
range variable called Cai. Presumably the Ca mechanism that you
inserted contains a
USEION Ca . . . WRITE Cai
statement.

The proper syntax for the setpointer statements is
setpointer synapse.preCA,PRECELL.sectionname.Cai(0.2)
setpointer synapse.vprecell,PRECELL.sectionname.v(0.2)
where sectionname is the name of the section whose Cai and v are to be
monitored.

The best way to create a cell class definition is with the CellBuilder.
When you are finished specifying the anatomical and biophysical properties,
go to the CellBuilder's Management page and click on Cell Type.
Then change the Classname to whatever you want, and finally click on
the "Save hoc code in file" button (you may have to click and drag the
bottom margin of the CellBuilder down to expose this button).
The resulting hoc file will be complete and syntactically correct.

Except template how can I make network by same cells and dependency of some variables on their mechanism?

A template, or class definition, is just a convenient way to be able to create
multiple instances of the same kind of cell. It is possible to create network
models without using object-oriented programming, but at the cost of
extra effort in code development, debugging, and maintenance. The
question is do you want to work harder, or do you prefer to work smarter.
Post Reply