Using NEURON with a WWW browser
nrngui at the system prompt.
foo.hoc when it starts :
nrngui foo.hoc at the system prompt. This also works for ses files.
foo.hoc onto the nrngui icon. This also works for ses files.
foo.hoc is located, and then double click on foo.hoc .
This does not work for ses files.
To exit NEURON : type quit() or ^D ("control D") at the oc> prompt,
or use File / Quit in the NEURON Main Menu toolbar.
"jvmdll" not defined in nrn.def JNI_CreateJavaVM returned -1
| Component | Wet lab | Computational modeling |
| Experimental preparation What is the biology itself? |
brain slice, tissue culture etc. | specification of what anatomical and biophysical properties to represent in model |
| Instrumentation How will you stimulate it and record results? |
voltage/current clamp, electrodes, stimulator, recorder etc. | --computational representations of clamps, electrodes etc. --specification of which variables to monitor and record |
| Control How do you automate the experimental protocol? |
programmable pulse generators etc. | time step, when to stop, integration method, optimization algorithms |
The classical approach to using NEURON is to specify all three components by writing a program in hoc, NEURON's programming language. You can do this with any editor you prefer, as long as it can save your code to an ASCII text file. Make sure your hoc files end with the extension .hoc
A more recent approach is to use the NEURON Main Menu toolbar's dropdown menus, which allow you to quickly create a wide range of models without having to write any code at all. You can save the GUI's windows and panels to session files that you can use later to recreate what you built (see the FAQ "What is a ses (session) file?").
The most flexible and productive way to work with NEURON is to combine hoc and the GUI in ways that exploit their respective strengths. Don't be afraid of the GUI--noone will accuse you of being a "girly man" if you take advantange of its powerful tools for model specification, instrumentation, and control. In fact, many of the GUI's most useful tools would be extremely difficult and time consuming to try to duplicate by writing your own hoc code.
Be sure to read the FAQ "Help! I'm having a hard time implementing models!"
load_file("nrngui.hoc")
load_file("model.hoc")
load_file("rig.ses")
When NEURON executes init.hoc, up comes your model and user interface.
nrn.defaults file.
proc buildcell() {
... lots of hoc statements ...
}
just chop it into smaller chunks like this
proc buildcell_1() {
... some hoc statements ...
}
proc buildcell_2() {
... some more hoc statements ...
}
... etc ...
and then execute them with
buildcell_1()
buildcell_2()
...
How big can a procedure be? I've never tried to find out.
Try cutting your big procedure in half and see if
that works. If it doesn't, cut the pieces in half and
try again. Eventually you'll find a size that works.
mechanisms fooba needs to be re-translated.
its version 5.2 "c" code is incompatible with this neuron version.
units.dat
file that accompanies one of the popular
Linux distributions. Presumably mod file variables should be
able to use any of its entries.
tau2
gain
+-|\____rstim____>to cell
-amp --'\/`-------|/
|
|----||---
|___ __|-----/|___from cell
`'`' \|
tau1
If the purpose of your model is to study the properties
of a cell, use SEClamp. If the purpose is to study how
instrumentation artefacts affect voltage clamp data, use
VClamp. For more information about these and other
built-in point process mechanisms, go to the help files'
alphabetical listing and click on the term pointprocesses.
objref fih
fih = new FInitializeHandler("loadqueue()")
proc loadqueue() { local ii
for ii=0,syntimes.size()-1 nc.event(syntimes.x[ii])
}
Don't forget that these are treated as delivery times,
i.e. the NetCon's delay will have no effect on the times of synaptic activation.
If additional conduction latency is needed, you will have to incorporate it
by adding the extra time to the elements of syntimes before the FInitializeHandler
is called.
If you want to do everything with a UNIX-like terminal window, then in the
folder containing the hoc and mod files type
nrnivmodl nrngui your_starting_file.hocThis assumes you have /Applications/NEURON-6.0/nrn/i386/bin in your PATH.
*mswin_scale: 1.2*mswin_scale: 1.5
*font: *helvetica-medium-r-normal*--14* // *font: *helvetica-medium-r-normal*--14* *font: *-helvetica-medium-r-*-*-*-100-* *font: fixed // *font: fixed *font: *-helvetica-medium-r-*-*-*-100-* *MenuItem*font: *-helvetica-medium-r-*-*-*-100-* *MenuBar*font: *-helvetica-medium-r-*-*-*-100-*
foo.hoc doesn't use graphics.
How do I start it so that there is no GUI?
That will allow me to log onto a computer via ssh,
use nohup to start a process, log off, and the process continues.
foo.hoc needs only the mechanisms that are built into NEURON,
then instead of typing nrngui foo.hoc nrniv foo.hocfoo.hoc needs something you compiled from mod files, you'll need to type i686/special foo.hoc