Skip to main content

2D_Panel CFD solver

Project description

Background and Validation

This wiki is built in Notion. Here are all the tips you need to contribute.


Method: 1

To install using pip Run:

python3 -m pip install 2D_Panel-CFD


Method: 2

  • Download source folder RUN_package to anywhere in your machine from:

  • Set it to PYTHONPATH with:
export PYTHONPATH="${PYTHONPATH}:/path/to/source_directory/RUN_package"

It's advisable to run this package from through an IDE like spyder for ease of use, and prolonged variable storage.


Method: 1

Open python environment with: (in terminal)





from RUN_package import RUN
  • is meant to be run from terminal.

Method: 2

Run on IDE by getting RUN_package from github.

Open python IDE like spyder from RUN_package directory:


The cells for pre-processor, solver & post processors are different. Need to run all.

  • can be run with an IDE, such as spyder to improve multi-Core Utilisation & post-processing experience. ****

General Background

Flow over a cylinder

Flow over a cylinder

The project has been started as a Open Source repository for CFD solvers.

This version comprises of a 2D Staggered Grid with Inlet, Outlet & Wall Boundary conditions. Obstacles can be imported & transformed with a list of points or with the inbuilt elliptical geometries.

First order Upwind Scheme is used for Velocity with very good results for the benchmark Lid Driven Cavity problem when compared to results in Ghia etal.

The SIM runs stable with Python for <10000 Cells after which Residual plotting becomes laggy. spyder (Anaconda IDE) provides great speed-ups with multi-core utilisation & also improves the post-processing experience. Some minor modifications in concurrent Residual plotting makes running SIM in spyder a better solution for now. The Sequential prompts based model is based on a GUI approach and will be ported to it in the next update.

The lack of multi-threading support in python trumps the ease of accessibility of matplotlib library. We will be looking to port into C++ immediately utilizing vtk libraries with paraview & blender for visualization.

The framework is designed to test new FVM schemes, & Coupling solvers. All popular convection schemes will be added soon. Multiple solvers will be available in the next updates, the likes of SIMPLER, PISO, Pimple etc. Future plans also include Unsteady & VOF solvers.

The program works as a sequential prompt, for SIM Parameters. The prompts are designed keeping in mind a GUI approach, which will be available in the next update. There are frequent Check Cycles to render the result & modify any inputs. We'll go through an exemplary First Run in the next Section.

Validation of Solver

Vortex Shedding flow over a cylinder

Vortex Shedding flow over a cylinder

For validation of the solver laid out, following strategies are used:

  1. Comparison with Benchmark Problem Lid Driven Cavity
    1. Reference study Ghia etal. Re = 100, 1000, 5000

Lid Driven Cavity Benchmark Ghia etal.



Benchmark Test at Re=100

  • First Order Upwind scheme
Untitled Untitled

Benchmark Test at Re=1000

  • First Order Upwind scheme
Untitled Untitled

Benchmark Test at Re=5000

  • First Order Upwind scheme
Untitled Untitled


First order UPWIND Scheme is good for low Reynolds no. but is only first order accurate to capture higher gradient.

Fully developed flow between Parallel Plates

Velocity Profile [at X=0.8Lx and Y=0.5Ly]

Untitled Untitled Map-1 Step-[200].jpg


First order UPWIND Scheme with high y-gradient.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

2D_Panel-CFD- (17.0 kB view hashes)

Uploaded source

Built Distribution

2D_Panel_CFD- (27.2 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page