Metadata-Version: 2.2
Name: flowinn
Version: 1.2.0
Summary: fl0wINN: Multi-Scale Turbulent Flow Investigation using Neural Networks
Home-page: https://github.com/errasti13/flowINN
Author: Jon Errasti Odriozola
Author-email: errasti13@gmail.com
Project-URL: Bug Tracker, https://github.com/errasti13/flowINN/issues
Project-URL: Documentation, https://flowinn.readthedocs.io/
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.26.4
Requires-Dist: matplotlib>=3.8.3
Requires-Dist: scipy>=1.13.1
Requires-Dist: tensorflow>=2.18
Requires-Dist: h5py>=3.8.0
Requires-Dist: scikit-learn>=1.0.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: project-url
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary


# fl0wINN: Multi-Scale Turbulent Flow Investigation using Neural Networks

fl0wINN is a Python package designed for investigating multi-scale turbulent flows using physics-informed neural networks (PINNs). This project aims to provide a flexible and extensible framework for simulating various fluid dynamics problems, including channel flow, lid-driven cavity, and flow over an airfoil.

## Table of Contents
- [Installation](#installation)
- [Usage](#usage)
- [Project Structure](#project-structure)
- [Examples](#examples)
- [Contributing](#contributing)
- [License](#license)

## Installation

To install the required dependencies, run:

```bash
git clone https://github.com/errasti13/flowINN.git
cd flowINN
pip install .
```

## Usage

### Running Examples

You can run the provided examples to see how the package works:

```bash
python examples/MinimalChannelFlow.py
python examples/LidDrivenCavity.py
python examples/FlowOverAirfoil.py
```

### Project Structure

The project is organized as follows:

```
flowINN/
├── examples/                # Example scripts for different simulations
├── scripts/                 # Utility scripts for cleaning dependencies
├── flowinn/                 # Source code for the package
│   ├── config.py            # Configuration settings
│   ├── mesh/                # Mesh generation and handling
│   ├── models/              # Neural network models
│   ├── physics/             # Physics-based loss functions and boundary conditions
│   ├── plot/                # Plotting and post-processing
│   ├── tests/               # Test cases for different flow problems
│   └── training/            # Training routines and loss functions
├── requirements.txt         # List of dependencies
├── setup.py                 # Setup script for packaging
└── README.md                # Project documentation
```

### Examples

#### Minimal Channel Flow

This example demonstrates a 3D channel flow simulation.

```python
python examples/MinimalChannelFlow.py
```

#### Lid-Driven Cavity

This example demonstrates a 2D lid-driven cavity simulation.

```python
python examples/LidDrivenCavity.py
```

#### Flow Over Airfoil

This example demonstrates a 2D flow over an airfoil simulation.

```python
python examples/FlowOverAirfoil.py
```

### Contributing

Contributions are welcome! Please fork the repository and submit a pull request with your changes.

### License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
