Usage

nemo [options...] [input files ...]

Documentation

NEMO is a program that reads an ion channel description in a format based on ChannelML and generates corresponding model simulation code in GNU Octave or the NMODL language used by the NEURON simulator.

Options

-i FORMAT

specify input format (nemo, xml, sxml, s-exp)

--xml[=FILE]

write XML output to file (default:
.xml

--sxml[=FILE]

write SXML output to file (default:
.sxml

--nmodl[=FILE]

write NMODL output to file (default:
.mod

--nmodl-method=METHOD

specify NMODL integration method (cnexp, derivimplicit)

--nmodl-kinetic=[STATES]

use NMODL kinetic equations for the given reactions

--nmodl-depend=VARS

specify DEPEND variables for NMODL interpolation tables

--octave[=FILE]

write Octave output to file (default:
.m

-t

use interpolation tables in generated code

-h, --help

print help

Model description language

Declares one or several imported quantities. If the optional AS parameter is given, then the quantity is imported as {LOCAL-ID}. If the optional FROM parameter is given, then the quantity is imported from namespace {NAMESPACE}.

| ( OUTPUT {ID} )

Declares that an existing quantity be exported.

| ( CONST {ID} = {EXPR} )

Declares a constant quantity (its value will be computed at declaration time).

| ( DEFUN {ID} ( {ARG-ID} ... ) {EXPR} )

Declares a function (a parameterized expression with no free variables).

| ( {ID} = {EXPR} )

Declares an assigned quantity (an expression that can refer to other quantities in the system).

| ( REACTION {ID} {TRANSITIONS} {INITIAL-EXPR} {OPEN-ID} )

Declares a reaction quantity. See below for the syntax of state transition equations. {INITIAL-EXPR} is an expression that computes the initial value. {OPEN-ID} is the name of the open state. It must be one of the states defined by the transition equations.

| ( COMPONENT ( TYPE {ID} ) ( NAME {ID} ) {ELEMENTS} )

Declares a system component (a quantity that can contain other quantities).

State transition equations

State transition equations in the model description language are defined as:

TRANSITION ::=

( -> {SRC-ID} {DEST-ID} {EXPR} )

Declares that a transition occurs from state {SRC-ID} to state {DEST-ID} at rate computed by {EXPR}. | ( <-> {SRC-ID} {DEST-ID} {EXPR-1} {EXPR-2} ) Declares that a transition occurs from state {SRC-ID} to state {DEST-ID} and vice versa, at rates computed by {EXPR-1} and {EXPR-2}.

Ion channel definitions

Currently, the NMODL code generator recognizes and generates code for ion channel components that are defined as follows:

(

COMPONENT (TYPE gate-complex) (NAME {NAME})

( COMPONENT ( TYPE gate ) ... )

One or more gate definitions. Each component of type gate must export the reactions that characterize the gate dynamics. ( COMPONENT ( TYPE pore ) ... ) Conductance law definition. This component must export a constant maximal conductance, or an assigned quantity whose equation represents the conductance law used.

License

Copyright 2008-2010 Ivan Raikov and the Okinawa Institute of Science and Technology.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or (at
your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
A full copy of the GPL license can be found at
<http://www.gnu.org/licenses/>.