blastFoam | 3D Adaptive Mesh Refinement (AMR)

Описание к видео blastFoam | 3D Adaptive Mesh Refinement (AMR)

blastFoam provides support for adaptive mesh refinement (AMR) for 2-D, 2-D axisymmetric, and 3-D grids, all with the option to include dynamic load balancing.

adaptiveFvMesh has been adapted specifically for compressible flows and includes modifications for improved stability for meshes created with snappyHexMesh.

movingAdaptiveFvMesh is based on adaptiveFvMesh, and has all the same features, but includes the ability to use mesh motion.

AMR enables the adjustment of precision in blastFoam simulations by dynamically refining specific areas of the mesh that require higher accuracy, while maintaining lower precision and resolution in other regions of the domain, to maintain computational efficiency.

Error estimators are used to determine the cells that can be refined or unrefined. Generally, this is achieved by looking for a derivative or difference of a specified fields across all the faces of a cell and its neighbors.

blastFoam also incorporates dynamic load balancing to mitigate potential memory issues such as crashing and slow-down related to overloading CPUs that are operating on zones of high refinement. At a predetermined user-defined timestep interval the computational domain is ‘rebalanced’ so that the cell count per CPU is more evenly distributed.

The simulation is a triple-point shock interaction: a three state, two material, 3D Riemann problem which generates vorticity.

Background mesh of 14x6x6 cells, with 5 levels of refinement. The error estimator used for AMR is density gradient.

The problem tests the ability of blastFoam to propagate shock waves over multi-material regions.

You can download and run this case yourself from the blastFoam GitHub repo: https://github.com/synthetik-technolo...

Still free. Still opensource. Still awesome.

#blastFoam #Opensource #CFD #AMR

Комментарии

Информация по комментариям в разработке