Skip to content

EngFlavioMartins/Cavity-Flow-Solver

Repository files navigation

GitHub issues

lid-Driven Cavity flow solver

Computationally-efficient CFD solver with user interface written in Python.

  • Very efficient solver for unsteady lid-Driven cavity flow for problems with grid-sizes of up to 256x256 nodes.

  • The pressure (Poisson) equation is efficiently solved using a 2-dimensional cosine transform based on the solver written by Michio Inoue

  • The unsteady solver automatically stores velocity and pressure fields for post-processing

  • The solver can compute 100 convective times ($n_t=100$) @ $Re=10^3$, in a grid of 256x256 nodes, in less than 1 second! (if output results are not stored)

How to run:

The software contains a comprehensive UI that allows for parameters input and to pre-visualization of domain and grid sizing.

Running a simulation:

  • Firstly, the user needs to input the following flow parameters:

    • nx, ny: number of grid elements in x- and y-directions
    • lx, ly: domain sizes in x- and y-directions
    • nt: number of time-steps
    • Co: target simulation's Coarant number (see )
    • Re: target flow's Reynolds number. Reynolds number is based on cavity's x-dimension.
  • Secondly, the user has to select a directory to save the files under the Run console

  • Finally, the simulation can be started by clickin on "Run".

If you don't have pip or git

For pip:

  • Mac or Linux: install with sudo easy_install pip (Mac or Linux) - or (Linux) find a package called 'python-pip' in your package manager.
  • Windows: install Distribute then Pip using the linked .MSI installers.

For git:

  • Mac: install Homebrew first, then brew install git.
  • Windows or Linux: see Installing Git from the Pro Git book.

Known issues:

  • Selection of time-steps to save the data at is missing (currently, the software stores data at every 10 time-steps only).
  • Real-time plotting of velocity and pressure fields (avoided at the current stage of development for improved computational performance).
  • The provided example of plotting function does not work for grids of $n_x \neq n_y$

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages