A high-fidelity simulator for cylindrical air filtration systems, designed for research applications, performance optimization, and publication-quality output.
- ✅ Multi-physics simulation of airflow, pressure drop, dust loading, and filtration efficiency
- 📚 Filter media database with real-world materials like cellulose, nanofiber composites, and PTFE membranes
- 📈 Dust loading simulations to evaluate long-term performance degradation
- 🔍 Efficiency modeling with Brownian diffusion, interception, impaction
- 🧠 Geometry optimization for pressure drop and target efficiency
- 🖼️ Publication-ready plots using
matplotlib - 📝 PDF report generation with styled headers/footers (via
ReportLab) - 💾 Export results in JSON or CSV for research archiving
Install dependencies using pip:
pip install matplotlib scipy pandas reportlabTo run the simulator:
python filter_simulator.pyThe script will prompt for:
- Outer radius (mm)
- Inner radius (mm)
- Filter height (mm)
- Mass flow rate (kg/s)
- Temperature (°C)
- Pressure (Pa)
- Relative Humidity (%)
- Material selection (from database)
Example input:
Outer radius: 125
Inner radius: 50
Height: 300
Mass flow rate: 0.083
Temperature: 20
Pressure: 101325
Relative Humidity: 50
Material index: 2
- PDF Report:
filter_report.pdf - JSON Data:
filter_results.json - On-screen plots: Efficiency curves, pressure drop trends, velocity profiles
| Name | Key | Features |
|---|---|---|
| Standard Cellulose | cellulose_standard |
Basic cost-effective paper media |
| Polyester + PTFE | polyester_ptfe |
High-performance membrane filtration |
| Nanofiber Composite | nanofiber_composite |
Ultra-fine fiber matrix, high capture |
| Glass Microfiber HEPA | glass_microfiber |
HEPA-grade media with highest η₀ |
| Feature | Description |
|---|---|
| Velocity Field | Radial flow profile using continuity equation |
| Pressure Drop | Darcy–Forchheimer model under dust loading |
| Efficiency | Combined model of Brownian, interception, and impaction |
| Quality Factor | Q = -ln(Penetration) / ΔP |
| Optimization | Auto-tune R_out and H to balance pressure and efficiency |
.
├── filter_simulator.py # 🔬 Main simulation engine
├── filter_report.pdf # 📝 Auto-generated simulation report
├── filter_results.json # 💾 Exported results (JSON)
└── README.md # 📘 Project documentation
MIT License © 2025
Developed by Advanced Filter Research Lab
Author: Anish Nilesh Rane
For academic collaborations, suggestions, or bug reports:
📧 Email: anish.rane@researchlab.org
🌐 GitHub: github.com/anishrane
- GUI using
ipywidgetsfor Google Colab - Particle size distribution integration
- Experimental data import/export support
Built for precision. Optimized for publication.