Bezaire ca1 repository from 2017, linked to Open Source Brain. Sim builder WIP.
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 55 commits ahead of mbezaire:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
NeuroML2
_original_model_/datasets
cells
connectivity
datasets
defaultsets
index_files
setupfiles
source
stimulation
.gitignore
.travis.yml
ExpGABAab.mod
Makefile
MyExp2Sid.mod
MyExp2Sidnw.mod
README.rst
SIN.mod
ch_CavL.mod
ch_CavN.mod
ch_HCN.mod
ch_HCNolm.mod
ch_HCNp.mod
ch_KCaS.mod
ch_Kdrfast.mod
ch_Kdrfastngf.mod
ch_Kdrp.mod
ch_Kdrslow.mod
ch_KvA.mod
ch_KvAdistp.mod
ch_KvAngf.mod
ch_KvAolm.mod
ch_KvAproxp.mod
ch_KvCaB.mod
ch_KvGroup.mod
ch_KvM.mod
ch_Nav.mod
ch_Navaxonp.mod
ch_Navbis.mod
ch_Navcck.mod
ch_Navngf.mod
ch_Navp.mod
ch_leak.mod
checkvercomp.sh
checkvercompgit.sh
compile.py
fastconn.mod
iconc_Ca.mod
index.html
launch_synapse_printer.hoc
main.hoc
modelview.hoc
mynetstim.mod
netclamp.hoc
newnetclamp.hoc
positionfcns.mod
repeatconn.mod
setup.py
sgate.mod
sim_builder.py
start_python_sim_builder.bat
testscript.sh
topcmd.sh
xtra.mod
~$index.html

README.rst

ca1: a NEURON network model

ca1 is a large-scale, detailed, biologically constrained NEURON network model of the rodent hippocampal CA1 area.

1   Main features

  • Linux, Mac OS X and Windows support
  • Documentation

2   Documentation

Full documentation is available here.

3   Installation

3.1   macOS

On macOS, ca1 code can be installed via Homebrew (recommended):

$ brew install ...

A MacPorts port is also available:

$ port install ...

3.2   Linux

# Debian, Ubuntu, etc. using Docker
$ apt-get install ....
# FDebian, Ubuntu, etc.  manual install
$ yum install ...

3.3   Windows, etc.

A universal installation method (that works on Windows, Mac OS X, Linux, …, and always provides the latest version) is to use `pip`_:

# Make sure we have an up-to-date version of pip and setuptools:
$ pip install --upgrade pip setuptools

$ pip install --upgrade ...

(If pip installation fails for some reason, you can try easy_install ... as a fallback.)

4   Usage

Scaled-down model:

$ nrngui main.hoc # Runs a network at scale 1:10000 for 100 ms to ensure all works

# OR

$ nrngui -c "SimDuration=600" main.hoc -c "quit()" # Runs a network at scale 1:10000 for 600 ms, long enough to see theta emerge

# OR

$ nrngui -nopython ... # if there is no python installed

# OR

$ nrniv ... # if using without a GUI popup (depends on your NEURON installation; sometimes nrngui must be invoked to ensure all necessary libraries are loaded when NEURON launches)

Synopsis:

$ nrngui [-c parameters] [main.hoc file]  -c "quit()"  # adding the quit() command after ensures the code stops immediately after an error

See also nrngui help.

4.1   Examples

Scaled down model to run directly on a personal computer:

$ nrngui main.hoc # Runs a network at scale 1:10000 for 100 ms to ensure all works

# OR

$ nrngui -c "Scale=1000" -c "SimDuration=600" main.hoc -c "quit()" # Runs a network at scale 1:1000 (will take a long time) for 600 ms, long enough to see theta emerge

# OR

$ nrngui -nopython -c "SimDuration=1000"  -c "ConnData=446" main.hoc -c "quit()" # try a different connectivity configuration and a longer simulation with the default Scale of 1:10000, use the nopython flag if NEURON has errors due to not finding the site module, etc.

# OR

$ nrngui -c "Scale=1" main.hoc -c "quit()" # run a full scale network - this is not feasible for the ca1 network on a personal computer, but could be used for tiny networks such as ringdemo.

On a supercomputer, after creating a submission jobscript and moving to the model repository directory, enter:

$ sbatch ./jobscripts/MyTestRun.sh

# OR

$ qsub ./jobscripts/MyTestRun.sh

According to the batch queueing software used by the computer. Or, use SimTracker to create the jobscript, export the script, code, and parameter sets to the supercomputer, and submit the job request to the queue.

5   Environment variables

You may wish to set...

In your ~/.bash_profile:

export N=samplesample
export NEURONHOME=samplesample
export PYTHONPATH=samplesample

6   Outputs

The result files output from each run include certain files that are always written as well as optional results files:

7   Customizing

To run this code with different parameters:

#!/bin/bash

nrngui [-c "Parameter=Value"]  [-c "strdef StringParam" "StringParam=\"StringValue\""]   ...

To run a network clamp simulation:

#!/bin/bash

nrngui -nopython -c gidOI=21310 -c cellindOI=6 -c stimflag=0 -c "strdef runname" -c runname="\"ca1_1x_exc_08\""  -c "strdef origRunName" -c origRunName="\"ca1_1x_exc_08\""  -c "strdef celltype2use" -c celltype2use="\"poolosyncell\""     -c "strdef resultsfolder" -c resultsfolder="\"00001\"" ./networkclamp_results/ca1_1x_exc_08/00001/run.hoc -c "quit()"

To customize this code...

7.1   Best practices

The blah blah blah.

8   Meta

8.1   Interface design

Blah blah.

8.2   User support

Please use the following support channels:

8.3   Related projects

8.3.1   Dependencies

ca1 uses NEURON with HOC:

  • Requests — Python HTTP library for humans
  • Pygments — Python syntax highlighter

8.3.2   ca1 friends

ca1 can be used with:

8.3.3   Alternatives

  • ModelDB — ModelDB contains many NEURON models and other neuroscience simulator models for various networks and cell types.

8.4   Citation

Please cite this code if you use it or derive a model from it, using the most appropriate citation below:

8.5   License

CC0 1.0 Universal (CC0 1.0): Public Domain Dedication

For more information, see the CC0 Description.

CC0 License

8.6   Authors

Marianne Bezaire created the ca1 model with help from:

  • Ivan Raikov
  • Padraig Gleeson
  • Andras Ecker
  • Kelly Burk
  • Michael Hines
  • Ted Carnevale
  • Ivan Soltesz