Metadata-Version: 2.4
Name: foambo
Version: 1.1.2
Summary: Configuration-based Multi-objective Bayesian Optimization on OpenFOAM cases with Ax-platform
Project-URL: Homepage, https://github.com/FoamScience/OpenFOAM-Multi-Objective-Optimization
Project-URL: Bug Tracker, https://github.com/FoamScience/OpenFOAM-Multi-Objective-Optimization/issues
Author-email: Mohammed Elwardi Fadeli <elwardifadeli@gmail.com>
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: GPU
Classifier: Framework :: Dash
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.10
Requires-Dist: ax-platform==1.1.2
Requires-Dist: colorlog>=6.9.0
Requires-Dist: dash-bootstrap-components>=1.4.2
Requires-Dist: dash>=2.11.1
Requires-Dist: fastapi>=0.118.0
Requires-Dist: foamlib>=1.3.10
Requires-Dist: kaleido>=0.2.1
Requires-Dist: nbformat>=5.10.4
Requires-Dist: omegaconf>=2.3.0
Requires-Dist: prompt-toolkit>=3.0.51
Requires-Dist: pyvista>=0.46.3
Requires-Dist: regex>=2023.6.3
Requires-Dist: rich>=14.0.0
Requires-Dist: tabulate>=0.9.0
Requires-Dist: uvicorn>=0.37.0
Description-Content-Type: text/markdown

# Multi Objective Optimization on OpenFOAM cases

<a href="https://zenodo.org/record/7997394"><img src="https://zenodo.org/badge/611991004.svg"></a>

> If you're using this piece of software, please care enough to [cite it](https://zenodo.org/record/7997394) in your publications

Relying on [ax-platform](https://ax.dev) to experiment around 0-code parameter variation and multi-objective optimization
of OpenFOAM cases.

## Documentation

Please consult the [documentation page](/docs) for the specifics although you can see what configuration we support by browsing:
```bash
uvx foamBO --docs
```

## How do I try this out?

Some [examples](examples), which range from simple and moderate levels of complexity, are provided for reference.

Strictly speaking, you don't need an OpenFOAM installation unless you are running a CFD case. You can always use your own code to evaluate the trials;  but parameters must be passed through an OpenFOAM-like dictionary (See [single-objective opt. example](examples/single-objective) for inspiration.

```bash
# Install the package
pip install foambo
# Clone the repo to get the examples
git clone https://github.com/FoamScience/OpenFOAM-Multi-Objective-Optimization foamBO
cd foamBO/examples/single-objective
foamBO --config SOM.yaml
```

## Contribution is welcome!

By either filling issues or opening pull requests, you can contribute to the development of this project, which I would appreciate.
