Metadata-Version: 2.1
Name: nmodl-preprocessor
Version: 1.0.0
Summary: Optimize NMODL files for the NEURON simulator
Author-email: David McDougall <dam1784@rit.edu>
License: MIT
Keywords: nmodl,neuron
Classifier: Programming Language :: Python :: 3
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering
Classifier: Development Status :: 4 - Beta
Classifier: Natural Language :: English
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: nmodl

# nmodl_preprocessor

This program performs the following optimizations to ".mod" files:
* Inline parameters
* Inline temperature
* Inline functions and procedures
* Inline assigned variables with constant values
* Convert assigned variables into local variables

These optimizations can improve runtime performance by as much as 15%.

## Installation

#### Prerequisites
* [Python](https://www.python.org/) and [pip](https://pip.pypa.io/en/stable/)
* [The NMODL Framework](https://bluebrain.github.io/nmodl/html/index.html)

```
pip install nmodl_preprocessor
```

## Usage
```
$ nmodl_preprocessor [-h] [--celsius CELSIUS] input_path output_path

positional arguments:
  input_path         input filename or directory of nmodl files
  output_path        output filename or directory for nmodl files

options:
  -h, --help         show this help message and exit
  --celsius CELSIUS  temperature of the simulation

```

## Tips

* Remove variables from RANGE and GLOBAL statements unless you actually need to
inspect or modify their value.  

* Remove unnecessary VERBATIM statements.  

