Metadata-Version: 2.4
Name: IIRD
Version: 0.0.1
Summary: Fast trainable multidimensional IIR filter layers in TensorFlow
Project-URL: Homepage, https://github.com/kkt-ee/IIRD
Project-URL: Issues, https://github.com/kkt-ee/IIRD/issues
Author-email: Kishore Kumar Tarafdar <kkt.ee.ai@gmail.com>
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.9
Requires-Dist: matplotlib
Requires-Dist: numpy
Requires-Dist: scipy
Requires-Dist: tensorflow>=2.15
Description-Content-Type: text/markdown

# IIRD: Fast Trainable Multidimensional IIR Filter Layers in TensorFlow

[![PyPI Version](https://img.shields.io/pypi/v/IIRD?label=PyPI&color=gold)](https://pypi.org/project/IIRD/)
[![Python Versions](https://img.shields.io/pypi/pyversions/IIRD)](https://pypi.org/project/IIRD/)
[![TensorFlow](https://img.shields.io/badge/tensorflow-required-darkorange)](https://www.tensorflow.org/)
[![License](https://img.shields.io/badge/license-Apache--2.0-deepgreen.svg?style=flat)](https://github.com/kkt-ee/IIRD/LICENSE)

`IIRD` provides trainable 1D, 2D, and 3D IIR filter layers for TensorFlow/Keras.

Copyright 2025 Kishore Kumar Tarafdar.
Licensed under the Apache License, Version 2.0. See [`LICENSE`](LICENSE).

## Capabilities

- `IIR1D`, `IIR2D`, and `IIR3D` Keras layers.
- Trainable feedforward and feedback coefficients.
- Batched multichannel TensorFlow tensors.
- Frequency-response plotting utility.

## Minimal Example

```python
import tensorflow as tf
from IIRD import IIR1D, IIR2D, IIR3D

x1 = tf.random.normal([1, 64, 1])
y1 = IIR1D(Delays=2, filters=4)(x1)

x2 = tf.random.normal([1, 32, 32, 1])
y2 = IIR2D(Delays=2, filters=4)(x2)

x3 = tf.random.normal([1, 16, 16, 16, 1])
y3 = IIR3D(Delays=1, filters=2)(x3)

print(y1.shape, y2.shape, y3.shape)
```

## Module Commands

```bash
python -m IIRD.IIR1D
python -m IIRD.IIR2D
python -m IIRD.IIR3D
```

## Citation

This software is released for broad research, educational, and engineering use. If this package helps your work, please cite the following paper:

```bibtex
@misc{tarafdar2026interpretablefrugallearningsystems,
      title={Interpretable and Frugal Learning Systems Employing Multiresolution Pyramids and Volterra Kernels},
      author={Kishore Kumar Tarafdar},
      year={2026},
      eprint={2606.15011},
      archivePrefix={arXiv},
      primaryClass={eess.SP},
      url={https://arxiv.org/abs/2606.15011},
}
```
