Xnavis: a parallel CFD code for the numerical simulations of unsteady free surface flows for naval hydrodynamics
2007
Simulations of flows around hulls are really CPU time expensive: here a Parallel version of a CFD code will be presented.
Xinavis is based on the finite volume discretization of the unsteady incompressible Navier-Stokes equations. The free surface is handled by means of the unsteady one-phase level set approach. Dynamical multi-block overlapping grids are used for the discretization of the physical domain.
The code has been used for the analysis of various fluidodynamics related problems in the framework of both naval and aeronautical context.
Example of simulations range from the full appended surface piercing hulls in steady motion or with either prescribed or predicted manoeuvres in both calm water andi n waves situations; analysis of the turbulent flow around submarines;
CFD study of the flow around a plane for the evaluation of the radiated noise.
This code present many challenging features for High Performance Computing, e.g Load Balancing, complex geometries, bodies in relative motion or around a body with a prescribed/predicted motion and so on.
To face all these aspects a "grain/fine" parallelization of the unsteady RANS
code has been achieved by distributing the structured blocks among the available non-shared or shared memory processors, and by spreading the computational work to be done inside each block among available shared memory processors.
Communication between processors for the "grain" parallelization is obtained by using standard Message Passing Interface (MPI) library, whereas "fine" (shared memory) parallelization is achieved by means of Open Message Passing (OpenMP) library.
------
Le simulazioni numeriche di flussi attorno a carene sono estremamente costose
in termini di CPU: qui verra' presentato una versione parallela di un codice
usato all'INSEAN per flussi in superficie libera di interesse navale.
Nel codice Xnavis viene risolta l'equazione di Navier-Stokes non stazionaria incompressibile tramite una discretizzazione ai volumi finiti. La superficie libera e' risolta tramite un approccio level-set. Il dominio fisico e' discretizzato tramite griglie multiblocco con overlapping dinamico.
Questo codice e' stato usato per l'analisi di vari problemi nell'ambito di problemi navali ed aeronautici. Le simulazione effettuate variano dalla simulazione di una carena completa (con tutte le appendici) sia in mare calmo che ondoso al flusso attorno ad un sottomarino fino allo studio del flusso attorno ad un aereo e relativa analisi del rumore irradiato.
Questo codice presenta molti dei classici problemi per il Calcolo ad Alte Prestazioni come il bilanciamento, la gestione di geometrie complesse, il movimento relativo tra i corpi e cosi' via.
Per affrontare tutti questi problemi e' stata scelta una parallelizzazione sia a
"grana grossa" che a "grana fine", distribuendo i blocchi che compongono la
griglia tra i vari nodi tramite MPI e decomponendo il lavoro del singolo blocco all'interno di processori shared memory tramite OpenMP.
Keywords:
- Correction
- Cite
- Save
- Machine Reading By IdeaReader
0
References
0
Citations
NaN
KQI