Skip to content

rlee32/lbmpp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A C++ LBM code.

Focus is on incompressible, isothermal high-Re flows. The ultimate goal is solution-adaptive rotor-stator simulations.

Compilation

Run 'make' to compile with visualizer.

Run 'make NOVIZ=1' to compile without visualizer (it will be slightly faster).

Run 'make TEST=1' to compile and run unit tests. For this, you will need to have the googletest repo on your machine and will need to define its path in the Makefile.

If you want to compile using multiple cores, add '-jN', where 'N' is the number of threads to use.

Usage

Modify 'settings' to your needs.

To run: './lbmpp'.

For custom maximum window size, run: './lbmpp <maximum resolution dimension>'.

Parameters

The following are the main parameters:

  1. Mach number: this is the ratio of the boundary condition velocity to the lattice speed of sound, which is 1 / sqrt(3) for grid and time steps of 1. The Mach number should not be set too high for compressibility to affect the results, but increasing Mach number allows for less timesteps to convergence.
  2. Characteristic length: This is not necessarily related to the grid (though in the lid-driven cavity case it is). It is determined by the physics of your problem.
  3. Reynolds number: This is determined by the physics of your problem.

The complete list of parameters can be found in 'settings'.

Assumptions, Implementation Details, and Validation

See 'references/report.pdf'. Note that the compilation and usage instructions in the report may be outdated (use this readme instead).

Development Notes / TODO

  1. Characterize spatial order of accuracy of grid interfaces.
  2. Solution-adaptive refinement.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages