CFD Online Logo CFD Online URL
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Programming & Development

DynamicRefineFvMesh & Supersonic Erosion

Register Blogs Members List Search Today's Posts Mark Forums Read

LinkBack Thread Tools Search this Thread Display Modes
Old   February 4, 2021, 14:25
Default DynamicRefineFvMesh & Supersonic Erosion
Join Date: Aug 2017
Posts: 32
Rep Power: 8
siefer92 is on a distinguished road
Howdy Yall:

Still working on assembling a solver for supersonic solid-solid abrasion. Currently the lagrangian libraries are coupled with rhoCentralFoam and I have a test case that runs and is stable.

Below is a visual overview of the case:


The test case is of a flow past a 2-dimensional cylindrical obstruction. pretty standard case.

I have ran some cases that include in-situ deformation of the cylindrical boundary caused by erosion but doesn't include any sort of boundary refinement. This code doesn't require a dynamicMeshDict and is governed through the solver source. The source file governing the erosion is based on Finnie's law and can be found in thesrc/lagrangian/intermediate/CloudFunctionObjects/ParticleErosion/ParticleErosion.C)

looking at the figure titled 'boundary erosion', you can see the extension of the boundary layer cells as the obstruction is eroded.


With enough erosion and no successive boundary refinements, the solver crashes due to negative temperature in the overly deformed boundary cells. This is behavior that one would expect.

I have incorporated yPlus based boundary refinement using a dynamicMeshDict in the constant/ directory. The contents are shown below:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  v2012                                 |
|   \\  /    A nd           | Website:                      |
|    \\/     M anipulation  |                                                 |
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      dynamicMeshDict;
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dynamicFvMesh dynamicRefineFvMesh;
       refineInterval 500;
       field yPlus;
       lowerRefineLevel   350;
       upperRefineLevel   1000;
       unrefineLevel 100; 
       nBufferLayers 3;
       maxRefinement 10;
       maxCells 10000000;
       correctFluxes 	(
			( phi none )
                        ( neg none )
                        ( pos none )
			( dustCloudQ none)

       dumpLevel true;

The boundary refinement is occurring as expected without error and in the locations one would expect. The interpolation of the erosion field dustCloudQ, however, is not functioning. The values shoot up from initial values in the e-8 magnitude to values in e+8 magnitude.
Here is the Erosion volume removal at a timestep where it is functioning

Below is an image when it is not functioning.

Additionally the location where the volScalarField, dustCloudQ, increases in value is in an area between cell sizes on the boundary surface.

Does anybody have any thoughts as why this is happening?

My thought is that it has something to do with correctFluxes in the dynamicMeshDict and how the field is mapped between meshes.

I'd appreciate yalls thoughts on the matter.
siefer92 is offline   Reply With Quote

Old   February 4, 2021, 17:00
Join Date: Aug 2017
Posts: 32
Rep Power: 8
siefer92 is on a distinguished road
As an update I am looking into mapFields at the moment.

Long story short, the volScalarField dustCloudQ is a volume. I need the dustCloudQ field to be mapped in a conservative manner.

E.g. a cell of .1m^3 eroded volume is refined into 4 cells based on the yPlus criteria near the boundary. The eroded volume of each of the refined subcells is .025.

This is speculation ATM I am running a case with a I/O time at every refinement step to track the growth of the Eroded volume. If the growth is fast & consistent with each refine/unrefine then I am on the correct track I think.

if, in one I/O, it explodes to e36 then this is a different problem. Will post thoughts soon
siefer92 is offline   Reply With Quote


adaptive mesh refinement, boundary mesh deformation, erosion, supersonic, yplus

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Supersonic outlet working saisanthoshm88 CFX 1 November 15, 2015 18:43
FLUENT Erosion DPM (Methane with Sand) - Strange Erosion Contours chongjqw FLUENT 3 February 22, 2015 21:17
[How to obtain supersonic flow inside a supersonic wind tunnel ?] yx213 Siemens 1 September 17, 2014 13:52
FLUENT Erosion DPM - Strange Erosion Contours chongjqw FLUENT 0 February 7, 2014 02:43
Probelm with supersonic exhaust to ambient newj CFX 2 August 9, 2012 18:01

All times are GMT -4. The time now is 23:15.