hocmodbuilders Package

hocmodbuilders Package

class HocBuilder[source]

Bases: object

classmethod Cell(hocfile_obj, cell)[source]
classmethod CurrentClamp(hocfile_obj, currentclamp)[source]
classmethod VoltageClamp(hocfile_obj, voltageclamp)[source]
class HocBuilder_Cell[source]

Bases: object

classmethod build(hocfile_obj, cell)[source]
class HocModUtils[source]

Bases: object

_tmpl_str_record_hoc = '\n objref $recVecName\n $recVecName = new Vector()\n ${recVecName}.buffer_size(50000)\n ${recVecName}.record(& ${objname}.${objvar})\n '
_tmpl_str_record_modvariable = '\n objref $recVecName\n $recVecName = new Vector()\n ${recVecName}.buffer_size(50000)\n ${recVecName}.record(& ${cellname}.internalsections[${sectionindex}].${modvariable}_${neuron_suffix} ($sectionpos))\n '
classmethod create_record_from_modfile(hocfile_obj, vecname, cell_location, modvariable, mod_neuronsuffix, recordobj)[source]
classmethod create_record_from_object(hocfile_obj, vecname, objname, objvar, recordobj)[source]
initial_buffer_size = 50000
class ModFileSectioned(title, comment=None)[source]

Bases: object

class Sections[source]

Bases: object

Assigned = 'ASSIGNED'
Breakpoint = 'BREAKPOINT'
Derivative = 'DERIVATIVE'
Functions = 'FUNCTIONS'
Header = 'HEADER'
Initial = 'INITIAL'
Neuron = 'NEURON'
Parameter = 'PARAMETER'
State = 'STATE'
Units = 'UNITS'
ordered = ['HEADER', 'UNITS', 'NEURON', 'PARAMETER', 'STATE', 'ASSIGNED', 'BREAKPOINT', 'INITIAL', 'DERIVATIVE', 'FUNCTIONS']
ModFileSectioned.__init__(title, comment=None)[source]
ModFileSectioned.add_assigned(assigned)[source]
ModFileSectioned.add_breakpoint(equation)[source]
ModFileSectioned.add_function(func)[source]
ModFileSectioned.add_parameter(parameter)[source]
ModFileSectioned.add_state_group(groupname, states, derivative_code, initial_code)[source]
ModFileSectioned.add_unit_definition(unitname, unitsymbol)[source]
ModFileSectioned.append_to_section(section, line)[source]
ModFileSectioned.clear_section(section)[source]
ModFileSectioned.create_header(title, comment)[source]
ModFileSectioned.create_neuron_interface(suffix, ranges, nonspecificcurrents, ioncurrents=None)[source]
ModFileSectioned.finalise()[source]
ModFileSectioned.get_section_text(section)[source]
ModFileSectioned.get_text()[source]
ModFileSectioned.initialise()[source]
ModFileSectioned.prepend_to_section(section, line)[source]
ModFileSectioned.simple_finalise_section(section, tabsection=False)[source]
class NeuronParameter(parametername, parameterunit, initialvalue=None, parameterrange=None)[source]

Bases: object

__init__(parametername, parameterunit, initialvalue=None, parameterrange=None)[source]
declaration_string()[source]
get_unit_str()[source]
initialisation_string()[source]
class MM_ModFileWriterBase(suffix, title=None, internalstates=None, parameters=None, functions=None, rates=None, ratecalcorder=None, currentequation=None, conductanceequation=None, chlsopenequation=None, units=None)[source]

Bases: object

__init__(suffix, title=None, internalstates=None, parameters=None, functions=None, rates=None, ratecalcorder=None, currentequation=None, conductanceequation=None, chlsopenequation=None, units=None)[source]
_default_comment = 'Automatically generated modfile - morphforge @ '
_default_current_name = 'i'
_default_title = 'Untitled mod-file'
default_units = {'pA': 'picoamp', 'um': 'micrometer', 'S': 'siemens', 'mV': 'millivolt', 'mA': 'milliamp'}
defaultupdatefunctionname = 'rates'
generate_modfile()[source]

hocbuilder Module

class HocBuilder[source]

Bases: object

classmethod Cell(hocfile_obj, cell)[source]
classmethod CurrentClamp(hocfile_obj, currentclamp)[source]
classmethod VoltageClamp(hocfile_obj, voltageclamp)[source]

hocbuilder_cell Module

class HocBuilder_Cell[source]

Bases: object

classmethod build(hocfile_obj, cell)[source]

hocmodutils Module

class HocModUtils[source]

Bases: object

_tmpl_str_record_hoc = '\n objref $recVecName\n $recVecName = new Vector()\n ${recVecName}.buffer_size(50000)\n ${recVecName}.record(& ${objname}.${objvar})\n '
_tmpl_str_record_modvariable = '\n objref $recVecName\n $recVecName = new Vector()\n ${recVecName}.buffer_size(50000)\n ${recVecName}.record(& ${cellname}.internalsections[${sectionindex}].${modvariable}_${neuron_suffix} ($sectionpos))\n '
classmethod create_record_from_modfile(hocfile_obj, vecname, cell_location, modvariable, mod_neuronsuffix, recordobj)[source]
classmethod create_record_from_object(hocfile_obj, vecname, objname, objvar, recordobj)[source]
initial_buffer_size = 50000

modfilesectioned Module

class ModFileSectioned(title, comment=None)[source]

Bases: object

class Sections[source]

Bases: object

Assigned = 'ASSIGNED'
Breakpoint = 'BREAKPOINT'
Derivative = 'DERIVATIVE'
Functions = 'FUNCTIONS'
Header = 'HEADER'
Initial = 'INITIAL'
Neuron = 'NEURON'
Parameter = 'PARAMETER'
State = 'STATE'
Units = 'UNITS'
ordered = ['HEADER', 'UNITS', 'NEURON', 'PARAMETER', 'STATE', 'ASSIGNED', 'BREAKPOINT', 'INITIAL', 'DERIVATIVE', 'FUNCTIONS']
ModFileSectioned.__init__(title, comment=None)[source]
ModFileSectioned.add_assigned(assigned)[source]
ModFileSectioned.add_breakpoint(equation)[source]
ModFileSectioned.add_function(func)[source]
ModFileSectioned.add_parameter(parameter)[source]
ModFileSectioned.add_state_group(groupname, states, derivative_code, initial_code)[source]
ModFileSectioned.add_unit_definition(unitname, unitsymbol)[source]
ModFileSectioned.append_to_section(section, line)[source]
ModFileSectioned.clear_section(section)[source]
ModFileSectioned.create_header(title, comment)[source]
ModFileSectioned.create_neuron_interface(suffix, ranges, nonspecificcurrents, ioncurrents=None)[source]
ModFileSectioned.finalise()[source]
ModFileSectioned.get_section_text(section)[source]
ModFileSectioned.get_text()[source]
ModFileSectioned.initialise()[source]
ModFileSectioned.prepend_to_section(section, line)[source]
ModFileSectioned.simple_finalise_section(section, tabsection=False)[source]
class NeuronParameter(parametername, parameterunit, initialvalue=None, parameterrange=None)[source]

Bases: object

__init__(parametername, parameterunit, initialvalue=None, parameterrange=None)[source]
declaration_string()[source]
get_unit_str()[source]
initialisation_string()[source]

modfilewriterbase Module

class MM_ModFileWriterBase(suffix, title=None, internalstates=None, parameters=None, functions=None, rates=None, ratecalcorder=None, currentequation=None, conductanceequation=None, chlsopenequation=None, units=None)[source]

Bases: object

__init__(suffix, title=None, internalstates=None, parameters=None, functions=None, rates=None, ratecalcorder=None, currentequation=None, conductanceequation=None, chlsopenequation=None, units=None)[source]
_default_comment = 'Automatically generated modfile - morphforge @ '
_default_current_name = 'i'
_default_title = 'Untitled mod-file'
default_units = {'pA': 'picoamp', 'um': 'micrometer', 'S': 'siemens', 'mV': 'millivolt', 'mA': 'milliamp'}
defaultupdatefunctionname = 'rates'
generate_modfile()[source]