Skip to main content

Optimize NMODL files for the NEURON simulator

Project description

nmodl_preprocessor

This program optimizes NMODL files for the NEURON simulator.
It scans all of your project's files to perform aggressive whole program optimization.
It performs the following optimizations to ".mod" files:

  • Hardcode the parameters
  • Hardcode the temperature
  • Hardcode any assigned variables with constant values
  • Inline all functions and procedures
  • Convert assigned variables into local variables

These optimizations can improve run-time performance and memory usage by between 5% and 15%.

Installation

Prerequisites

pip install nmodl_preprocessor

Usage

$ nmodl_preprocessor [-h] project_dir [model_dir ...]

positional arguments:
  project_dir  root directory of all simulation files
  model_dir    input directory of nmodl files

options:
  -h, --help   show this help message and exit

Tips

  • Always check your results for accuracy and correctness.

  • Do not use this tool with neuron's graphical user interface "nrngui".

  • Keep your projects in separate directories.

  • Use unique and descriptive variable names.

  • Remove unnecessary VERBATIM statements.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nmodl_preprocessor-1.0.8.tar.gz (58.7 kB view details)

Uploaded Source

Built Distribution

nmodl_preprocessor-1.0.8-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file nmodl_preprocessor-1.0.8.tar.gz.

File metadata

  • Download URL: nmodl_preprocessor-1.0.8.tar.gz
  • Upload date:
  • Size: 58.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for nmodl_preprocessor-1.0.8.tar.gz
Algorithm Hash digest
SHA256 b23d1f27c68ee0eab198e9128ec12044eb73f1062389f3ecbf989ce2c93311ac
MD5 a7266d502db9599653bfb52bfa3d905e
BLAKE2b-256 4b9008bc7c2b6364f1ac210d65df787a0c1999d7cae183ed16eec3bd0ccdfebc

See more details on using hashes here.

File details

Details for the file nmodl_preprocessor-1.0.8-py3-none-any.whl.

File metadata

File hashes

Hashes for nmodl_preprocessor-1.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 e60920179752a0aea91427402159e6cf8bd0c8b35f756950b6ce7116dfa00105
MD5 199e38d279432ca1bc150695a9a7d2dd
BLAKE2b-256 50aa7b96f4535a736e1230f19f68380aa4433e54cf7ca36ad3ceec357637570d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page