GithubHelp home page GithubHelp logo

groundcherry / bluebottle-3.0 Goto Github PK

View Code? Open in Web Editor NEW
10.0 4.0 6.0 278 KB

A many-GPU-centric two phase flow simulation code implementing the Physalis method

License: Apache License 2.0

Makefile 0.48% Shell 0.15% C 41.11% Cuda 50.89% C++ 5.60% Objective-C 0.24% Python 1.52%
gpu fluid-dynamics mpi cuda c multiphase-flow computational-fluid-dynamics particles

bluebottle-3.0's Introduction

Introduction
============

Bluebottle is the many-GPU extension of Bluebottle, a GPU-centric finite-
difference imcompressible Navier-Stokes flow solver coupled with the Physalis 
method for fully resolving spherical particles dispersed throughout the flow.
It is a research code developed by Daniel Willen ([email protected]) under
the supervision of Dr. Adam Sierakowski ([email protected]) and Prof. Andrea
Prosperetti at the Johns Hopkins University.

The capability of solving temperature field using many-GPU is added in a
recent extension to Bluebottle-3.0 by Yuhang Zhang ([email protected]) based on
Yayun Wang's work which runs in single-GPU. The code is able to run Rayleigh
Benard convection simulation with several thousand resolved particles.

The original single-GPU code was developed by Adam Sierakowski under the 
supervision of Prof. Prosperetti and can be found at:
  https://github.com/groundcherry/bluebottle
More information and documentation is available at:
  physalisCFD.org

Branches
========

There are several branches in this repository:

- master      -- Contains release versions of Bluebottle.
- devel       -- Contains stable development versions that are not ready for 
                  master release.

Obtaining Bluebottle
==================

Bluebottle has been released under the Apache License, Version 2.0 and is
available at:
  https://github.com/groundcherry/bluebottle-3.0

Installing Bluebottle
===================

For installation instructions, see the accompanying INSTALL document.

Running Bluebottle
================

For run instructions, see the accompanying RUN document.

Bluebottle Documentation
======================

The most recent documentation can be found on the Bluebottle Wiki at
http://lucan.me.jhu.edu or physaliscfd.org. Most of the documentation for the 
single-GPU version applies to the many-GPU version as well.

Questions and Bug Reports
=========================

Bluebottle is an academic research code being actively developed. Should you
have any questions about the code, please submit an issue using the Bluebottle
Issue tracker at https://github.com/groundcherry/bluebottle-3.0/issues.

bluebottle-3.0's People

Contributors

ajsierakowski avatar dwille avatar yu-h-ang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

bluebottle-3.0's Issues

hdf5-1.10.1 and above outputs not compatible with paraview

According to [1,2], HDF5 1.10 was a major update to the HDF5 library. Although Bluebottle itself doesn't care about the underlying changes, the ability to visualize and analyze the output files are impacted. Notably, anaconda-python and paraview have raised errors when trying to deal with the different HDF5 versions.

Potential Solutions:

  • anaconda-python: make sure the most recent version of h5py is installed -- version 2.7.1 should work. If anaconda won't update, using python virtual environments is recommended.
  • paraview: Either use HDF5 1.8.* to generate Bluebottle output or build ParaView from source, specifying HDF5-1.10.* . The latter can be difficult.

Note that these solutions aren't guaranteed fixes and should be elaborated on.

[1] -- https://portal.hdfgroup.org/display/HDF5/API+Compatibility+Macros
[2] -- https://portal.hdfgroup.org/display/HDF5/Software+Changes+from+Release+to+Release+for+HDF5-1.10

Smaller grid size per GPU does not speed up the calculation significantly

Hi!

I found that if the grid size in the domain is decreasing (assuming that only 1 GPU is used), the speed-up of the calculation will not increase significantly (if the grid size is too small). For example, the time spent in simulations with global grid size 160160160 is less than twice of that with global grid size 16016080. But in normal CPU CFD codes, the speed-ups will be more than twice if the global grid size is half. I'm not sure why this is the case. Is it the nature of GPU calculation?

Thanks,
Tom

Lamb iterations fail to converge with fixed particles in the fluids

Hi!

Right now I put fixed particles in the domain and let the flow develop, by making sure that the gaps between them are larger than 70% of the radius. I use 10 grids across the radius and 1.15a for integration radius. l=3 is used for Lamb coefficients. I don't know what makes it hard to converge, since the code diverges 50 steps after the initial quiescent flow condition so the flow has not fully developed yet and the velocity shouldn't be too large to have a big particle Reynolds number. Do you have any suggestions how to stabilize the code better?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.