Skip to content

yamaday88/gallery-of-lattice-Boltzmann-code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

Gallery of Lattice Boltzmann Code 🎨

Welcome to the Gallery of Lattice Boltzmann Code! This repository contains a collection of Lattice Boltzmann codes that cater to various applications in fluid dynamics, multiphase flows, and more. You can find the latest releases here.

Lattice Boltzmann Simulation

Table of Contents

Introduction

The Lattice Boltzmann method (LBM) is a powerful computational fluid dynamics technique. It models fluid flow using a lattice grid and is particularly effective for simulating complex boundary conditions and multiphase flows. This repository aims to provide various implementations of LBM that are optimized for different applications.

Features

  • Scalability: Designed to run efficiently on both single and multi-GPU systems.
  • Flexibility: Supports various grid types, including Cartesian grids.
  • Extensibility: Easy to add new models or modify existing ones.
  • Integration: Compatible with machine learning frameworks for enhanced simulations.

Topics Covered

This repository includes implementations and examples related to the following topics:

  • Adaptive Mesh Refinement (AMR): Improve resolution in areas of interest.
  • Cartesian Grid: Simple and efficient grid structure for simulations.
  • GPU Acceleration: Leverage the power of GPUs for faster computations.
  • Input/Output (I/O): Efficient data handling for large simulations.
  • Lattice Boltzmann Method (LBM): Core algorithm for fluid dynamics.
  • Machine Learning: Integrate ML techniques for predictive modeling.
  • Massive Data Handling: Manage large datasets generated from simulations.
  • Message Passing Interface (MPI): Parallel processing for distributed systems.
  • Multiphase Flows: Simulate interactions between different fluid phases.
  • Phase Change: Model phenomena like boiling and condensation.
  • Porous Media: Study fluid flow through porous structures.

Installation

To install the code, follow these steps:

  1. Clone the repository:

    git clone https://github.com/yamaday88/gallery-of-lattice-Boltzmann-code.git
  2. Navigate to the directory:

    cd gallery-of-lattice-Boltzmann-code
  3. Install dependencies:

    pip install -r requirements.txt
  4. Build the project:

    make

Usage

To run the simulations, you can execute the provided scripts. Here’s a simple example:

./run_simulation.sh parameters.txt

Make sure to adjust the parameters file according to your needs.

Examples

1. Single Phase Flow

This example demonstrates a simple single-phase flow simulation using LBM. The configuration file is single_phase.txt.

./run_simulation.sh single_phase.txt

2. Multiphase Flow

For multiphase simulations, use the multiphase.txt configuration.

./run_simulation.sh multiphase.txt

3. Porous Media Flow

To simulate flow through porous media, run:

./run_simulation.sh porous_media.txt

Contributing

We welcome contributions! If you have ideas or improvements, please follow these steps:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/your-feature
  3. Make your changes and commit:
    git commit -m "Add your message"
  4. Push to your branch:
    git push origin feature/your-feature
  5. Create a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For questions or suggestions, please reach out:

Thank you for visiting the Gallery of Lattice Boltzmann Code! For the latest releases, check out this link.

GitHub Releases

Explore, experiment, and contribute to the fascinating world of Lattice Boltzmann simulations!

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •