Lagrangian Particle Code for The Simulation of 2D/3D Fluid Dynamics
 All Classes Files Functions Variables Typedefs Friends Pages
Main Page

Overview of the Lagrangian Particle Method

A new Lagrangian particle method for solving Euler quations for compressible inviscid fluid or gas flows is developed by Hsinchiang Chen, Roman Samulyak, and Wei Li at the department of Applied Mathematics and Statistics at Stony Brook University. The preliminary results has been submitted to the Journal of Computational Physics (2015). Similar to Smoothed Particle Hydrodynamics (SPH) (see http://en.wikipedia.org/wiki/Smoothed-particle_hydrodynamics for SPH method), the method represents fluid cells with Lagrangian particles and is suitable for the simulation of complex free surface / multiphase flows. The main contributions of the proposed method, which is different from SPH in all other aspects, are
(a) Significant improvement of approximation of differential operators based on a polynomial fit and the corresponding weighted least squares problem and convergence of prescribed order
(b) A new particle-based algorithm which provides both accuracy and long term stability
(c) Elimination of the dependence on artificial parameters such as the smoothening length in SPH
(d) Accurate resolution of states at free interfaces.
Numerical verification tests are performed and demonstrated the expected convergence order.

Overview of the Lagrangian Particle Code

The Lagrangian Particle code implements the proposed Lagrangian Particle method and is capable of simulating both 2D and 3D fluid dynamics. Since 1D is of high research/experiment value we are merging a independent 1D code into this code now to make this code a full-fledged 1D/2D/3D fluid dynamics code. It is a C++ code which is parallelized using multithreads with the OpenMp APIs. We have preliminary success on the speedups, which is about 5 times faster on 8 threads The most updated version of the code contains about 15 main modules, and about 35 modules in total, which contains over 10,000 lines of C/C++ code. There are currently two contributors to this code:
1). Hsinchiang Chen is the main author who design the code structure and implements almost all modules in this code
2). Kwangmin Yu is the second author who is intensively involved in the initial code struture design and internal data structure design. He is also the main author of the NeighbourSearch and Octree classes.
The accuracy of the proposed numerical algorithm and the code has been verified by comparing to results using MUSCL scheme with the FronTier code at the Stony Brook University. The results achieved the desired rate of convergence of the proposed algorithm.
All test results on the accuracy, convergence, and parallel performance of the code will be updated soon.

The Governing Equations

Consider the one-dimensional Lagrangian formulation of the Euler equations, written in the conservative form

\[ U_{t}^{'} + \left[ F(U^{'}) \right]_{x} = 0, \]

\[ U^{'} = \left( \begin{array} {c} V \\ u \\ E \end{array} \right), \, F(U^{'}) = V_{0} \left( \begin{array} {c} -u \\ P \\ Pu \end{array} \right), \]

where $V$ is the specific volume, $u$ is the velocity, $E$ is the specific total energy, and $P$ is the pressure.
Further theories and derivations of equations of this method will be updated soon.

The Work Flow of the Code

We give a qualitative description of the code by using a flow chart describing how the algorithm/code works.

flow_chart.jpg

Simulation of 2D disks collision

The following simulation snapshots demonstrates the results of two 2D disks colliding with each other.

disk_collision.gif

Simulation of 2D Gaussian-profile pressure propagation

The following simulation snapshots demonstrates the results of a 2D disk with a Gaussian-profile pressure initialization with the center of Gaussian being the center of the disk.

muon_collider1.gif
muon_collider2.gif
thimble_splash2.gif
gauss.gif
Author
Chen, Hsin-Chiang (morri.nosp@m.sche.nosp@m.n2008.nosp@m.@gma.nosp@m.il.co.nosp@m.m)

Co-author: Yu, Kwangmin (yukwa.nosp@m.ngmi.nosp@m.n@gma.nosp@m.il.c.nosp@m.om)

Version
1.0
Date
2015/03/09

Created on: 2015/03/09