hallockk wrote:Is there a way to change this from the GUI? Given the simplicity of my model, I would be surprised if it required custom coding. I only have two HH nodes, one 10-section axon, and one 1-section axon. I'm trying to use the GUI as much as possible since I work with a number of people who don't do simulations.
If you only want to modify certain parameters in one particular section, with just a bit of code you could create a small "window" (an "xpanel" in NEURONspeak) that offers controls that affect just those parameters in that section. But you might find it more convenient to use the "distributed mechanism viewer." To find a brief discussion of this on the Forum, use the Forum's Search field to look for
distributed mechanism viewer
One of the hits will be a post by me from 2005.
Make sure that the CellBuilder's "Continuous create" is OFF _before_ you bring up a distributed mechanism viewer. Otherwise there could be a conflict between the params specified by the CellBuilder and the params specified by the "distributed mechanism viewer". Such conflicts destroy the conceptual clarity that is essential in computational modeling--it'll be much harder for you to be sure that there is a close match between the computational model in the computer, and the conceptual model that is in your head.
This is why I like to combine hoc and the GUI. Here's how I proceed:
1. Use the CellBuilder to create the specification of the model cell.
Save this to a ses file
by itself, with "Continuous create" ON, called cell.ses
NEURON Main Menu / File / save session
I can now use this ses file as an inexhaustible culture of cloned neurons.
2. Use the GUI to construct a custom user interface: RunControl; graphs of voltage, current, conductance, concentration, gating states, whatever; signal sources like IClamps, SEClamps, AlphaSynapses, etc.
Save just these tools to a separate ses file called rig.ses (from "experimental rig").
Note that rig.ses does NOT include the CellBuilder.
That allows me to use the same rig with different model cells (as long as none of the graphs or signal sources refers to a section that doesn't exist).
3. Write a hoc file called init.hoc that contains these statements:
Code: Select all
load_file("nrngui.hoc")
load_file("cell.ses")
// uncomment the next statement if it will be necessary to change the model's params
// from those specified by the CellBuilder
// CellBuild[0].continuous = 0
load_file("rig.ses")
Double clicking on init.hoc brings up the CellBuilder and the virtual experimental rig.
4. If I need to make "posttranslational changes" to the model cell (change the model's parameters from the specification contained in the CellBuilder), I do one of the following things:
--write a hoc file that does what I need
or
--bring up a "distributed mechanism viewer" and select the section that I want to tweak. After I get the parameter panel for that section, close the "distributed mechanism viewer". Finally, save the parameter panel BY ITSELF to a new ses file called something mnemonic (maybe "dend28params.ses" if the section name was dend28). If you don't know how to do this, read about the Print & File Window Manager in the WWW site's FAQ list
http://www.neuron.yale.edu/neuron/faq/general-questions
The particular document you need is in answer to the question
"How do I print a hard copy of a NEURON window?"
5. Revise init.hoc by appending the statement
load_file("customparams.hoc")
or
load_file("dend28params.ses")
to the end of the file. That way, when NEURON processes init.hoc, the last thing it does is to execute the hoc statements that make your custom parameter changes, or that recreate the parameter panel for your section of particular interest. And since this happens long after Continuous create is turned off, there won't be any conflict between your customizations and the CellBuilder.
Here's a small hint that may make GUI management of your model easier: control the shape of your model cell so that it's easier to select sections of interest with other GUI tools. A lot of people lay out the sections of their axon models in a straight line. It's better to use a zigzag layout. Go to the Topology page of the CellBuilder and click on the Reposition button. Then click near the junction of two sections and drag it up or down (or to the side if your axon is laid out vertically). Repeat at each connection point, alternating the displacement so you end up with something like
/\/\/\/
Also, just because nodes are short, that doesn't mean you have to draw them with short line segments in the CellBuilder. Make every section just as long as necessary for clarity and convenience. The actual anatomical lengths are controlled by what you put on the Geometry page, not by the appearance in the CellBuilder. However, the appearance in the CellBuilder can make it easier or more difficult for you to use other tools like the PointProcessManager, or the distributed mechanism viewer.
GUIs are great for interdisciplinary research.
Also good for exploratory simulation, and--done properly--has the big advantage of helping to ensure a close match between what's in the computer and what's in the user's head.