Skip to content

Commit 1e6852a

Browse files
author
Xing Han Lu
authored
Merge pull request #617 from nathanrooy/master
Improve documentation for "Vehicle Geometry with OpenFOAM" app Former-commit-id: 54a5266
2 parents 9b25132 + 1399045 commit 1e6852a

2 files changed

Lines changed: 30 additions & 1 deletion

File tree

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,29 @@
1-
# plotly-vtk
1+
# Dash: Vehicle Geometry with OpenFOAM
2+
3+
by [Nathan Rooy](https://github.com/nathanrooy)
4+
5+
## Background
6+
7+
This project initially began with vehicle geometry that was originally created for graphic design and rendering purposes. Therefore, an initial cleaning process was required before any CFD could take place. This cleaning phase included sealing body panels, improving triangle quality, and creating geometry that wasn’t included in the initial model (intake plenum, cooling ductwork, contact patches). Once the model was watertight and suitable for simulation, snappyHexMesh was employed for creating the mesh. Given that the final output needs to be run in a browser, the mesh resolution was purposely kept coarse in an attempt to keep the memory/compute requirements low.
8+
9+
Next, the boundary conditions were set and the equations of fluid dynamics were then discretized across the mesh volume and solved using OpenFOAM. The aerodynamics of open-wheeled vehicles such as this, tend to produce a substantial amount of flow separation which requires resolving turbulence down to both a very fine spatial and temporal domain. However, given the aforementioned browser constraints, a simpler approximation was needed. Because of this, the RANS equations using the SIMPLE approach with the SST k-ω turbulence model was used.
10+
11+
Results were then post-processed in ParaView (paraFoam) and exported. From here, a simple Python app was built using Plotly Dash while leveraging VTK. The end result is a web app in which surface velocity, surface pressure, and a Cp isosurface can be visualized. Vehicle geometry visibility can be toggled as well.
12+
13+
## Installation and Usage
14+
Install the dependencies found in `requirements.txt`:
15+
```
16+
pip install -r requirements.txt
17+
```
18+
19+
Next, run `app.py` which will launch a local Dash server:
20+
```
21+
python app.py
22+
```
23+
24+
## References
25+
- Original repository: https://github.com/nathanrooy/dash-vtk-cfd
26+
- SIMPLE algorithm: https://en.wikipedia.org/wiki/SIMPLE_algorithm
27+
- RANS: https://en.wikipedia.org/wiki/Reynolds-averaged_Navier%E2%80%93Stokes_equations
28+
- SST k-ω turbulence model: https://www.cfd-online.com/Wiki/SST_k-omega_model
29+
- OpenFOAM: https://openfoam.org/
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

0 commit comments

Comments
 (0)