Skip to main content

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.

Metadata

Release files for nmodl-preprocessor 1.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nmodl-preprocessor 1.0.8
File Size Uploaded
nmodl_preprocessor-1.0.8.tar.gz 58.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nmodl-preprocessor 1.0.8
File Interpreter ABI Platform
nmodl_preprocessor-1.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 75.8 kB

Release files / nmodl_preprocessor-1.0.8.tar.gz

Download URL nmodl_preprocessor-1.0.8.tar.gz
Size 58.7 kB
Tags Source
SHA-256 checksum
How to use checksums
b23d1f27c68ee0eab198e9128ec12044eb73f1062389f3ecbf989ce2c93311ac
BLAKE2b-256 checksum
How to use checksums
4b9008bc7c2b6364f1ac210d65df787a0c1999d7cae183ed16eec3bd0ccdfebc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.6

Release files / nmodl_preprocessor-1.0.8-py3-none-any.whl

Download URL nmodl_preprocessor-1.0.8-py3-none-any.whl
Size 17.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e60920179752a0aea91427402159e6cf8bd0c8b35f756950b6ce7116dfa00105
BLAKE2b-256 checksum
How to use checksums
50aa7b96f4535a736e1230f19f68380aa4433e54cf7ca36ad3ceec357637570d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.6

Release history Release notifications | RSS feed

This release

1.0.8 This release

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page