|
[Sponsors] |
July 20, 2019, 07:34 |
CFD Codes and GUI
|
#1 |
New Member
|
Hello all,
I would like to share the videos of my code run here. For more than 8 months (I know i took long time, have to manage my work life as well) I have been working in creating these codes. I am happy to be sharing the results, here are some videos, Code details: 1. Compressible NS equations 2. Coupled method 3. 1st order and 2nd order 4. Flux limited approach and MUSCL approach 5. Minmod, Koren, Superbee and Sweby limiters are used 6. Inviscid, laminar and Turbulent flow regimes 7. Low Y+ formulation 8. Overset method (For now stationary and translational motion only) 9. H-CUSP, HLL, HLLC, Steger warming, Van Leer FVS, ROE FDS, AUSM, AUSM+ , AUSM+ -up, MacCormack and LaxWendroff. 10. Finite difference method, extending to finite volume method 11. Explicit method RK4 GUI: user interface is created using Qt application. Complete C++ (GUI and run) This is my first ever code (when i started learning numerical coding): Maccormack scheme flow past cylinder: https://www.linkedin.com/feed/update...90615974387712 Maccormack scheme with artificial diffusion Lid driven cavity:https://www.linkedin.com/feed/update...55917665931264 Improved codes: Overset mesh:https://www.linkedin.com/feed/update...75944985640960 Steger warming scheme flowpast square:https://www.linkedin.com/feed/update...58537704255489 Steger warming with Wilcox K omega:https://www.linkedin.com/feed/update...99763697721344 AUSM+ mach 1.45:https://www.linkedin.com/feed/update...83210220761088 ROE FDS mach 1.45:https://www.linkedin.com/feed/update...14369600749568 Similar videos goes for HLL, H-CUSP, HLLC, AUSM and Van Leer FVS. Currently I am creating a GUI where i implement all the above mentioned physics. Still it is under progress but you can download the conceptual GUI here, https://sites.google.com/view/cgflow/home Also I am extending the GUI with MPI capabilities. I am able to perform MPI with a script application but not sure how to segregate the GUI and MPI process. If anyone could provide me suggestions on how to get started with MPI (With GUI), it will be of great help. Thank you all Regards Ganesh |
|
July 20, 2019, 16:28 |
|
#2 | |
Senior Member
andy
Join Date: May 2009
Posts: 269
Rep Power: 17 |
Quote:
|
||
July 21, 2019, 09:40 |
|
#3 | |
New Member
|
Quote:
On searching the internet I got an example of running a heat equation in MPI but it is just a c++ script which i could run in cmd with "exe -n 2 filename" with this command. When i try to do the same with GUI it opens multiple GUI for the no: of processor i am specifying in the command. How can I segregate the GUI part from solving part? Should I go with multi threading or anything else. Thank you for your reply. Regards Ganesh |
||
July 21, 2019, 15:49 |
|
#4 | ||
Senior Member
andy
Join Date: May 2009
Posts: 269
Rep Power: 17 |
Quote:
Quote:
Typically what is done with MPI processes is to assign part of the computational grid to each solver process. Your GUI, it if has enough memory, could do the splitting and send the relevant grid and field parts to the relevant solver process and receive them back at regular intervals to assemble and plot. This is a common master-slave configuration with your GUI as master and the solvers as slaves. There are lots of examples with this very common configuration. I am still not sure I have grasped the difficulty you are seeing. Are you intending to run on a computer with shared memory or distributed memory? |
|||
July 21, 2019, 22:09 |
|
#5 | |
New Member
|
Quote:
I am not sure how to specify the following, 1. If the node id is "0" only in that ID the GUI must start. Now what is happening is if I specify -n 3 three GUI's are opened. How can i overcome this? I have already ran the script alone without GUI using OpenMPI libraries so no issues with implementing the MPI methods/libraries. |
||
July 22, 2019, 06:02 |
|
#6 |
Senior Member
|
MPI is about running n different processes and let them communicate. But nothing is said about where and what this processes are running. So that, in principle, you can launch two completely different applications with it, even written with different languages, but you need to have a complete understanding of MPI in order to correctly use it.
Take a look, for example, at this: https://github.com/plampite/vtkForMPI It is a server-client example. The server is written in C++ and works as visualization server. The client is written in Fortran and works as client. If I had to write a GUI linked to the solver I would pick the opposite way, making the GUI the client and the solver the server providing the data for the visualization in the GUI. But this is just a way among many others. Yet, to be honest, I think you first need to figure out the MPI implementation on the solver side before going into more fancy stuff. |
|
July 22, 2019, 06:50 |
|
#7 | |
Senior Member
andy
Join Date: May 2009
Posts: 269
Rep Power: 17 |
Quote:
Can I repeat my question about distributed and shared memory and how you intend to run your parallel processing. MPI would not typically be used if you run all the processes on your workstation which, at a guess, you would seem to be doing if lots of GUIs start up. Typically the master would run on a front end node with disks and external connections to the outside world and the slaves would run on computational nodes with little or no disks and only fast internal MPI connection hardware. The front end node could be your workstation but is more usually remote along with the computational nodes. The GUI would run on your workstation and send grid and fields to the master or directly to the slaves depending on how your hardware and software is arranged. I will skip job scheduling software. If you want an example look at how plotting software like paraview, visit and the like can interact with running parallel processing programs. |
||
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
free GUI based CFD software | devalvyas | Main CFD Forum | 3 | June 15, 2016 14:18 |
CFD Survey extended. Free software. | Don | Main CFD Forum | 1 | January 20, 2006 14:04 |
CFD Survey. Free software | Don | Main CFD Forum | 5 | January 20, 2006 14:00 |
cfd free/shareware | clifford bradford | Main CFD Forum | 6 | May 7, 1999 05:11 |
public CFD Code development | Heinz Wilkening | Main CFD Forum | 38 | March 5, 1999 11:44 |