network simulation using swc file

Moderator: wwlytton

Post Reply
Bafti1983

network simulation using swc file

Post by Bafti1983 »

Hi,

I just started using NEURON, 2 days ago and I am supposed to do the following:
Create a network by downloading the swc file of a cell, making a copy of it and connecting these identical cells together. Then I should impose an external activity and make them do something such as spike!

I transformed swc file into a neuron template file as the following:
1- Tools -> Miscellaneous -> Import 3D
2- "choose a file" button, then select a file and click "Read"
3- export - CellBuilder
4- use the Biophysics tab, when "Specify Strategy" was checked, I chose all tap, and I checked Ra, cm to change there default values to the following:
Ra=160
cm=1
5- Use the management tab to export by selecting "Cell type", optionally entering a "Mycell" as class name and then selecting "Save hoc code in file", called "new.hoc"

then I wrote this python script to import this file to NEURON and make a copy of it and then connect these two cells as the following:

from neuron import h
h.load_file('new.hoc')
cell1 = h.Mycell()
cell2 = h.Mycell()
cell1.position(1,2,0)
cell2.position(1,1,0)
post_syn = h.Exp2Syn(0.5, sec=cell2.dend[0])
connection = cell1.connect2target(post_syn)
connection.weight[0] = 1

Then I imposed this current:
ic = h.IClamp(0.5, sec=cell1.soma)
ic.delay = 1
ic.dur = 1
ic.amp = 100

and ran the simulation. But when I plot the output voltage, I dont see anything happening. Could you please kindly help me understand where the problem is.

Thanks
Fahimeh
ted
Site Admin
Posts: 6287
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: network simulation using swc file

Post by ted »

First a couple of questions that will help guide my future answers. Do you have any wet-lab experience in neuroscience, and in particular any experience stimulating and recording from excitable cells or tissue?
Bafti1983 wrote:I transformed swc file
What do you know about the particular morphometric data file you used, and where did you get it?
What spatial discretization strategy did you specify with the CellBuilder?
Did you insert any voltage-gated ion channel mechanisms into the model cell?
Did you save the configured CellBuilder to a .ses file?

If you have a background in electrical engineering, and especially in circuit design, then perhaps you are familiar with the notion of "device characteristics" and the role of device characteristics in circuit operation. Similar concepts are pertinent to biological systems, especially networks of neurons. Before starting to build a model network, it is important to understand the constituent cell classes--what is the spontaneous activity of an individual instance of each cell class, and how does it respond to injected currents or synaptic inputs? Does every instance of a given cell class even have a resting potential, and is it identical to the initial membrane potential? Your particular network model involves only one cell class, so the task is not as hard as it might otherwise be.
Bafti1983

Re: network simulation using swc file

Post by Bafti1983 »

Hi Ted,

Thanks for your reply.
No I dont have any wet lab experience. Moreover, I dont have any background in neuroscience or electrical engineering! I am self-learning everything.

My goal is to create simple network which is able to respond to some external output activation. My plan is the following:
1- Download a cell morphology
2- import this morphology to NEURON and specify the biophysics and other properties
3- test this single cell and see how it respond to an external source
4- make a network using 2-3 of this cell
5- test the network and see how it respond to an external source
6- compare the results of a single neuron to the neuron network

I uploaded the morphology from Allen institute website. Here is the link:
http://celltypes.brain-map.org/mouse/ex ... /314831019
From "Select neuronal model", I selected "biophysical all active" and from "Select stimulus type", I selected "long square". Then somewhere down the page, I could "download the model". The file includes: model_metadata.json, reconstruction.swc, fit_parameter.json ... But I am planning to use only the swc file and make a simple model.

using import 3D, I read the swc file into NEURON, and I could see the shape of the neuron. Using export bottom, I export it to the cell builder. I am going to use this neuron morphology to make a simple model following the first chapter of "the Neuron book". First I defined two "subsets" called has_HH (which contains soma and axon) and no_HH (which contains dend and apic). Then in the "Geometry" tab, I set for "all", d_lambda=0.1. in "Biophysics" tab, I put Ra for "all" = 100 and for "has_HH", I toggled on "hh", and for "no_HH" i toggled on "pas" and I used the same values from the book for the parameters (g_pas, e_pas).

Using the Point Processes > manager > point manager, I inserted an Alphasynapse on Soma(0.5) with onset = 0.5 and gmax= 0.05. Then I ran the simulation with Tstop=5 and it generated the spike identical to Figure 1.33 of the book. I also tested the model by changing the place of the synapse from Soma and the spike was negligible!
So far, I am assuming that this model of single cell is working well. Is that correct?
Now I would like to make copy of this cell, connect them and do the rest of my plan! however, I would like to receive some feedbacks on this first and some guidance on how to connect cell using the network builder.

Thanks
ted
Site Admin
Posts: 6287
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: network simulation using swc file

Post by ted »

Bafti1983 wrote:No I dont have any wet lab experience. Moreover, I dont have any background in neuroscience or electrical engineering! I am self-learning everything.
The principled approach to computational modeling of any physical system is to start with a hypothesis about the operation or function of that system. The hypothesis involves a minimal set of assumptions (think Occam's razor) that are based on one's knowledge and judgement about the physical system. The transition from physical reality to hypothesis (conceptual model) necessarily involves simplification and approximation--it omits details that one judges to be inessential.

If the implications of the hypothesis can be deduced by thought (back of the envelope calculations, or more formal mathematical analysis such as nonlinear dynamical analysis) alone, there is no need to resort to computational modeling. If not (e.g. if the required assumptions involve complex dynamics, nonlinearities, intricate spatial architectures, a wide range of temporal and/or spatial scales), then it may be necessary to map the conceptual model into a computational model that can then be explored by performing a series of computational experiments. The transition from conceptual model to computational model must ensure a close match between what's in your head and what's in the computer. Otherwise the behavior of the computational model will not be a reliable indication of the implications of the conceptual model.

The design and execution of computational experiments is most easily mastered if one has prior experience in the design and execution of real experiments.
My goal is to create simple network which is able to respond to some external output activation.
So your aim is not reverse engineering (analysis of something that already exists), but engineering design (creation of something that performs according to a predetermined criterion). That's a much different game.
My plan is the following:
1- Download a cell morphology
Is it even necessary to use real cellular architectures and biophysical properties?
3- test this single cell and see how it respond to an external source
Yes, an important first step in engineering design is to acquire familiarity with the properties of the building blocks that are to be assembled into a system.
I uploaded the morphology from Allen institute website.
Their morphologies are probably quite good--no orphan branches, no bottlenecks (points along a branch at which diameter is incorrectly very small or even zero). Still, it's worth checking to make sure; you might find some useful ideas in this exercise from one of our courses
http://www.neuron.yale.edu/neuron/stati ... /anat.html
From "Select neuronal model", I selected . . .The file includes: model_metadata.json, reconstruction.swc, fit_parameter.json
Yes, they have their own way of doing things, and they want to make sure that everyone knows exactly what it was. Fortunately you can probably use their swc files without having to adopt the entire "way of the ABI."
Using the Point Processes > manager > point manager, I inserted an Alphasynapse on Soma(0.5) with onset = 0.5 and gmax= 0.05. Then I ran the simulation with Tstop=5 and it generated the spike identical to Figure 1.33 of the book. I also tested the model by changing the place of the synapse from Soma and the spike was negligible!
If you attach a conductance change synapse to a neurite that is too far from the spike trigger zone ("too far" depends on the anatomy and biophysical properties of the cell, and the reversal potential of the synapse), there's no way that activating the synapse will be able to trigger a spike.
So far, I am assuming that this model of single cell is working well. Is that correct?
The results of your computational experiment seem reasonable.
Now I would like to make copy of this cell, connect them and do the rest of my plan!
If you want to use the Network Builder to prototype a model net, it would be a good idea to work through these two exercises first:
http://www.neuron.yale.edu/neuron/stati ... /net1.html
http://www.neuron.yale.edu/neuron/stati ... /net2.html

For the "net2" exercise, you may want to use your own model cell instead of the ball & stick model. Start a fresh instance of NEURON, open the .ses file that recreates the CellBuilder that specifies the properties of your model cell, then
NEURON Main Menu / Build / Network Cell / From Cell Builder
This brings up a panel with the rather cryptic prompt
"Select Synapse type set and CellBuild type"
It should also show you the name of your CellBuilder (probably CellBuild[0]). Click on that, then click on the "Use Selection" button.
Post Reply