Module contents

NMODL Asset Manager for Arbor and NEURON.

~ Glues your neurons together!

Manage a local NMODL library that’s automatically compiled, loaded, and recompiled whenever you change your NMODL code or simulator environment.

exception glia.AssetLookupError(*args, **kwargs)

Bases: ResolveError

AssetLookupError exception

exception glia.BuildCatalogueError(*args, **kwargs)

Bases: CatalogueError

BuildCatalogueError exception

class glia.Catalogue(package: Package)[source]

Bases: object

Parameters:

package (Package)

assemble_arbor_mod_dir()[source]
build(verbose=None, debug=False, gpu=None)[source]
is_fresh()[source]
load()[source]
property name
exception glia.CatalogueError(*args, **kwargs)

Bases: GliaError

CatalogueError exception

exception glia.CompileError(*args, **kwargs)

Bases: GliaError

CompileError exception

exception glia.GliaError(*args, **kwargs)

Bases: DetailedException

GliaError exception

exception glia.LibraryError(*args, **kwargs)

Bases: GliaError

LibraryError exception

class glia.MechAccessor(section, mod: Mod, point_process=None)[source]

Bases: object

Parameters:

mod (Mod)

get_parameter(param, x=None)[source]
property parameters
record(param=None, x=0.5)[source]
set(attribute_or_dict, value=None, /, x=None)[source]
set_parameter(param, value, x=None)[source]
stimulate(*args, **kwargs)[source]
class glia.Mod(relpath: str, asset_name, *, variant='0', is_point_process=False, is_artificial_cell=False, dialect: Literal['arbor', 'neuron'] = None, builtin=False)[source]

Bases: object

Parameters:
  • relpath (str)

  • dialect (Literal['arbor', 'neuron'])

property arbor_name
property mech_id
property mod_name
property path: Path
property pkg
property pkg_name
set_package(package: Package)[source]
Parameters:

package (Package)

exception glia.ModSourceError(*args, **kwargs)

Bases: NmodlError

ModSourceError exception

exception glia.NeuronError(*args, **kwargs)

Bases: GliaError

NeuronError exception

exception glia.NmodlError(*args, **kwargs)

Bases: GliaError

NmodlError exception

exception glia.NoMatchesError(*args, **kwargs)

Bases: ResolveError

NoMatchesError exception

class glia.Package(name: str, root: Path, *, mods: list[Mod] = None, builtin=False)[source]

Bases: object

Parameters:
build_catalogue(*args, **kwargs)[source]
property catalogue
get_mods(dialect=None) list[Mod][source]
Return type:

list[Mod]

property hash
load_catalogue()[source]
property mod_hash
property name
property root
exception glia.PackageApiError(*args, **kwargs)

Bases: PackageError

PackageApiError exception

exception glia.PackageError(*args, **kwargs)

Bases: GliaError

PackageError exception

exception glia.PackageFileError(*args, **kwargs)

Bases: PackageError

PackageFileError exception

exception glia.PackageModError(*args, **kwargs)

Bases: PackageError

PackageModError exception

exception glia.PackageProjectError(*args, **kwargs)

Bases: PackageError

PackageProjectError exception

exception glia.PackageVersionError(*args, **kwargs)

Bases: PackageError

PackageVersionError exception

exception glia.ResolveError(*args, **kwargs)

Bases: GliaError

ResolveError exception

exception glia.TooManyMatchesError(*args, **kwargs)

Bases: ResolveError

TooManyMatchesError exception

exception glia.UnknownAssetError(*args, **kwargs)

Bases: ResolveError

UnknownAssetError exception

glia.assets module

class glia.assets.Catalogue(package: Package)[source]

Bases: object

Parameters:

package (Package)

assemble_arbor_mod_dir()[source]
build(verbose=None, debug=False, gpu=None)[source]
is_fresh()[source]
load()[source]
property name
class glia.assets.Mod(relpath: str, asset_name, *, variant='0', is_point_process=False, is_artificial_cell=False, dialect: Literal['arbor', 'neuron'] = None, builtin=False)[source]

Bases: object

Parameters:
  • relpath (str)

  • dialect (Literal['arbor', 'neuron'])

property arbor_name
property mech_id
property mod_name
property path: Path
property pkg
property pkg_name
set_package(package: Package)[source]
Parameters:

package (Package)

class glia.assets.ModName(pkg_name: str, asset: str, variant: str)[source]

Bases: object

Parameters:
property arbor_mod_name
property full_mod_name
property mech_id
classmethod parse(name: str)[source]
Parameters:

name (str)

classmethod parse_path(path: str)[source]
Parameters:

path (str)

property short_mod_name
class glia.assets.Package(name: str, root: Path, *, mods: list[Mod] = None, builtin=False)[source]

Bases: object

Parameters:
build_catalogue(*args, **kwargs)[source]
property catalogue
get_mods(dialect=None) list[Mod][source]
Return type:

list[Mod]

property hash
load_catalogue()[source]
property mod_hash
property name
property root

glia.resolution module

Resolves package, mechanism and variant constraints into asset names that can be requested from the Glia library.

class glia.resolution.IndexEntry(name)[source]

Bases: object

append(asset)[source]
class glia.resolution.Resolver(manager)[source]

Bases: object

construct_index()[source]
has_preference(asset_name)[source]
lookup(mod_name)[source]
preference_context(assets=None, pkg=None, variant=None)[source]
resolve(asset_name, pkg=None, variant=None)[source]
resolve_preference(asset_name, pkg=None, variant=None)[source]
set_preference(asset_name, glbl=False, pkg=None, variant=None)[source]