Metadata-Version: 2.4
Name: chemotaxis
Version: 0.1.3
Summary: A Python package for simulating and analyzing 1D chemotaxis models using noisy spatiotemporal data.
Author: Aditi Jantikar
Author-email: aditimj2001@gmail.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: matplotlib
Requires-Dist: scipy
Requires-Dist: pandas
Requires-Dist: torch
Requires-Dist: pysindy
Requires-Dist: scikit-learn
Requires-Dist: tensorflow
Requires-Dist: keras
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

This has been built upon the paper "Learning partial differential equations for biological transport models from noisy spatiotemporal data". See https://arxiv.org/abs/1902.04733

We investigate methods for discovering the governing parameters of a partial differential equation (PDE) model for 1D chemotaxis from spatiotemporal data. Recent progress in this area includes sparse regression via SINDy and Physics-Informed Neural Networks (PINNs), both of which present unique challenges in the presence of noise. We analyze the performance and key vulnerabilities of both a Finite-Difference SINDy (FD-SINDy) framework and a PINN-based approach for this parameter discovery task. We then develop a novel, decoupled methodology that uses an artificial neural network (ANN) to denoise data and accurately approximate partial derivatives. We test these frameworks on the 1D chemotaxis PDE, a canonical model for biological transport. Our results highlight the critical challenges associated with derivative estimation and optimization in existing frameworks and show that our proposed decoupled approach provides a more robust path toward accurate model discovery from imperfect data.

You can view the detailed report here: [Chemotaxis Findings.pdf](https://github.com/user-attachments/files/21974203/Chemotaxis.Findings.pdf)


How to Use the Package

To run the code, please install the package and its dependencies from this repository.

1. Installation
   
From your terminal, navigate to the project's root directory and run the following command to install the package:

**pip install chemotaxis**

2. Usage
   
You can now import and run the modules directly from any Python script or notebook. The files should be run in the following order:

Generate Data: run generate_chemotaxis.py

Generate Derivatives: run generate_chemotaxis_derivatives.py

Run SINDy Model: run sindy_chemotaxis_model.py

Run PINN Model: run pinn_chemotaxis.py

Run ANN Denoiser: run ann_denoiser.py

Note: Some files (PINN and ANN-SINDy) are computationally intensive and may not run efficiently on a standard CPU. For those cases, running them on Google Colab is recommended.

--- Aditi Jantikar and Pavithra Ramesh
