Update README.md

This commit is contained in:
Luxdragon 2024-07-05 11:14:03 +00:00
parent a71389d1dd
commit 22c95f9c8c

View file

@ -1,9 +1,21 @@
# Tornado-Visualization
This a C++/Qt/OpenGL project for my DV class, visualizing a tornado
## Summary
## Week 1
This a project written in C++, Qt and OpenGL for my DV class, visualizing a tornado. It uses a special file that calculates a vector field representing the wind directions in a tornado and then calculates contour/ISO-lines, vizualises the wind speeds, adds streamlines and allows for temporal animations.
We implemented a C++ program that created a vector field containing the wind speeds in a 3D grid, we used the C-vector field generator for a tornado developed by Roger A. Crawfis, The Ohio State University. We also implemented methods to print individual grid point values and individual layers of the 3D grid.
![Saturated Streamlines](https://preview.redd.it/tornado-visualization-project-v0-1fwuhiw8noad1.png?width=630&format=png&auto=webp&s=33e03cfaffe9f9803f5b2c70235e5d553ee28389)
![Wind strength and ISO-lines](https://preview.redd.it/tornado-visualization-project-v0-5118ylw8noad1.png?width=414&format=png&auto=webp&s=925f473d9eb5edc854f0bd0119385c23f810e96d)
It was an excellent primer on how memory works with C++ and how to use Qt-Creator ^^
## How to run
Simply download the code and build it using Qt 5. You can control the time using left (backwards) and right (forwards) arrow keys and start or pause the temporal animation with space, the R key resets the time. Up and down change the slice that is being visualized. The X key visualizes the x-wind component, Y and Z work analogously. The M key displays the magnitude of the wind speeds.
## Algorithms used in the implementation
- Marching Squares
- Bilinear and Trilinear Interpolation
- Euler method for differential equation integration
- Runge Kutta method (4. order) for differential equation integration
- BitMagic