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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | b23d1f27c68ee0eab198e9128ec12044eb73f1062389f3ecbf989ce2c93311ac |
|
MD5 | a7266d502db9599653bfb52bfa3d905e |
|
BLAKE2b-256 | 4b9008bc7c2b6364f1ac210d65df787a0c1999d7cae183ed16eec3bd0ccdfebc |
File details
Details for the file nmodl_preprocessor-1.0.8-py3-none-any.whl
.
File metadata
- Download URL: nmodl_preprocessor-1.0.8-py3-none-any.whl
- Upload date:
- Size: 17.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e60920179752a0aea91427402159e6cf8bd0c8b35f756950b6ce7116dfa00105 |
|
MD5 | 199e38d279432ca1bc150695a9a7d2dd |
|
BLAKE2b-256 | 50aa7b96f4535a736e1230f19f68380aa4433e54cf7ca36ad3ceec357637570d |