CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Meshing & Mesh Conversion (https://www.cfd-online.com/Forums/openfoam-meshing/)
-   -   [Other] simulation of closing the gate using moving mesh (https://www.cfd-online.com/Forums/openfoam-meshing/144040-simulation-closing-gate-using-moving-mesh.html)

simin_ds November 7, 2014 17:32

simulation of closing the gate using moving mesh
 
Hi Foamers,

I am going to simulate closing a gate in a channel using moving mesh. I do not know which method I should use to close the gate. Does any one has any suggestion? is there any tutorial for closing a valve or gate in 2d or 3d?

Thank you in advance,
Simin

fabian_roesler November 10, 2014 02:28

closing gate using oscillatingInletACMI2D
 
Hi,

it depends on whether you have a rotating or a translatory motion or even a mixture of both in several directions. I'd start with a simple patch moving aside. You could use a sliding interface like in incompressible/pimpleDyMFoam/oscillatingInletACMI2D tutorial. However I rarely used dynamic meshes.

Cheers

Fabian

simin_ds November 10, 2014 02:37

Hi Fabian,
Actually i used this tutorial. But for the gate closure it has no correct mesh motion by closing the gate and it represent the bad mesh skewness near the moving interface. The gate in my case is moving from a side and it is not a moving interface.
Regards,
Simin

simin_ds November 13, 2014 12:26

inapplicability of moving mesh in gate closure
 
2 Attachment(s)
Hi Foamers,

I sent a post a few days ago for my problem in using moving mesh in OF but I could not solve my problem. Today I explain my problem in detail. Hope the experts in OF may help me.

I am going to simulate the gate closure in a channel. for my case I assume a 2D channel. you can see the geometry in Fig. 1.

I used the structure of movingcone and cyclic-ACMI for my moving mesh simulation. the dynamic mesh dict file is shown here.
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.3.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object dynamicMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dynamicFvMesh dynamicMotionSolverFvMesh;

motionSolverLibs ( "libfvMotionSolvers.so" );

solver velocityComponentLaplacian;

velocityComponentLaplacianCoeffs
{
component y;
diffusivity directional ( 1 200 0 );
}


// ************************************************** *********************** //


also the pressure file is shown here
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.3.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 2 -2 0 0 0 0];

internalField uniform 0;

boundaryField
{
inlet
{
type zeroGradient;
}
outlet
{
type fixedValue;
value uniform 0;
}
walls
{
type zeroGradient;
}
valve
{
type zeroGradient;
}
couple1
{
type zeroGradient;
}
couple2
{
type zeroGradient;
}
couple3
{
type zeroGradient;
}
couple4
{
type zeroGradient;
}
defaultFaces
{
type empty;
}
ACMI1_blockage
{
type zeroGradient;
}
ACMI1_couple
{
type cyclicACMI;
value uniform 0;
}
ACMI2_blockage
{
type zeroGradient;
}
ACMI2_couple
{
type cyclicACMI;
value uniform 0;
}
ACMI3_blockage
{
type zeroGradient;
}
ACMI3_couple
{
type cyclicACMI;
value uniform 0;
}
ACMI4_blockage
{
type zeroGradient;
}
ACMI4_couple
{
type cyclicACMI;
value uniform 0;
}
}


// ************************************************** *********************** //

and velocity file:
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.3.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
location "0";
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 1 -1 0 0 0 0];

internalField uniform (0 0 0);

boundaryField
{
inlet
{
type fixedValue;
value uniform (1 0 0);
}
outlet
{
type pressureInletOutletVelocity;
value uniform (0 0 0);
}
walls
{
// type fixedValue;
type movingWallVelocity;
value uniform (0 0 0);
}
valve
{
// type fixedValue;
type movingWallVelocity;
value uniform (0 0 0);
}
defaultFaces
{
type empty;
}
ACMI1_blockage
{
type fixedValue;
value uniform (0 0 0);
}
ACMI1_couple
{
type cyclicACMI;
value uniform (0 0 0);
}
ACMI2_blockage
{
type fixedValue;
value uniform (0 0 0);
}
ACMI2_couple
{
type cyclicACMI;
value uniform (0 0 0);
}
ACMI3_blockage
{
type fixedValue;
value uniform (0 0 0);
}
ACMI3_couple
{
type cyclicACMI;
value uniform (0 0 0);
}
ACMI4_blockage
{
type fixedValue;
value uniform (0 0 0);
}
ACMI4_couple
{
type cyclicACMI;
value uniform (0 0 0);
}
}


// ************************************************** *********************** //

and also the pointMotionUy file

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.3.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class pointScalarField;
object pointMotionU;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 1 -1 0 0 0 0];

internalField uniform 0;

boundaryField
{

inlet
{
type uniformFixedValue;
uniformValue constant 0;
}
outlet
{
type uniformFixedValue;
uniformValue constant 0;
}
walls
{

type uniformFixedValue;
uniformValue constant 0;
}
valve
{
type uniformFixedValue;
uniformValue constant -0.01;
}
defaultFaces
{
type empty;
}
couple1
{
type slip;
}
couple2
{
type slip;
}
couple3
{
type slip;
}
couple4
{
type slip;
}
ACMI1_blockage
{
type fixedValue;
value uniform 0;
}
ACMI1_couple
{
type slip;
//type cyclicACMI;
// value uniform 0;
}
ACMI2_blockage
{
type slip;
//type fixedValue;
//value uniform 0;
}
ACMI2_couple
{
type slip;
//type cyclicACMI;
// value uniform 0;
}
ACMI3_blockage
{
type slip;
//type fixedValue;
//value uniform 0;
}
ACMI3_couple
{
type slip;
//type cyclicACMI;
// value uniform 0;
}
ACMI4_blockage
{
type fixedValue;
value uniform 0;
}
ACMI4_couple
{
type slip;
//type cyclicACMI;
// value uniform 0;
}
}

// ************************************************** *********************** //

I put also the toposet dict file here:

/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.3.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object topoSetDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

actions
(
// Get both sides of ami
// ~~~~~~~~~~~~~~~~~~~~~

// Create faceZone for patch couple1
{
name couple1Faces;
type faceSet;
action new;
source patchToFace;
sourceInfo
{
name couple1;
}
}
{
name couple1Faces;
type faceZoneSet;
action new;
source setToFaceZone;
sourceInfo
{
faceSet couple1Faces;
}
}

// Create faceZone for patch couple2
{
name couple2Faces;
type faceSet;
action new;
source patchToFace;
sourceInfo
{
name couple2;
}
}
{
name couple2Faces;
type faceZoneSet;
action new;
source setToFaceZone;
sourceInfo
{
faceSet couple2Faces;
}
}

{
name couple3Faces;
type faceSet;
action new;
source patchToFace;
sourceInfo
{
name couple3;
}
}
{
name couple3Faces;
type faceZoneSet;
action new;
source setToFaceZone;
sourceInfo
{
faceSet couple3Faces;
}
}

// Create faceZone for patch couple2
{
name couple4Faces;
type faceSet;
action new;
source patchToFace;
sourceInfo
{
name couple4;
}
}
{
name couple4Faces;
type faceZoneSet;
action new;
source setToFaceZone;
sourceInfo
{
faceSet couple4Faces;
}
}




// Create cellZone for moving cells in inlet channel
{
name inletChannel;
type cellSet;
action new;
source boxToCell;
sourceInfo
{
box (2.00001 -100 -100) (2.9999 100 100);
}
}
{
name inletChannel;
type cellZoneSet;
action new;
source setToCellZone;
sourceInfo
{
set inletChannel;
}
}
);

// ************************************************** *********************** //


My problem is that when the gate starts to travel down the nodes near the interfaces do not move with the valve movement. so the negative cell volume occurs in the simulation. you can see the the last step of the simulation in Fig 2.

Can any one help me what boundary condition or dynamic mesh method I should use to solve this problem?

Many thanks for your attention.

mturcios777 November 13, 2014 15:44

If you look at the oscillatingInletACMI2D case in the pimpleDyMFoam tutorials, you might be able to use that approach. I tested changing the amplitude of the motion so that the inlet would become disconnected from the main volume, and for incompressible flow it worked ok.

alfa_8C March 16, 2016 09:32

Hello simin

it's quite a while ago since you posted your issue.

Could you resolve this?

Best regards
Antonio

saatt March 21, 2017 21:31

hey ! i have a same question , could you done well ??

alfa_8C March 22, 2017 03:34

not solved yet
 
Hi,

you may follow the progress on this issue on the following link:

http://www.openfoam.org/mantisbt/view.php?id=2057

alfa_8C

keitaro7_14 April 12, 2019 06:49

Luckly, it seems the problem has been solved, but only for the OpenFOAM-dev version.


All times are GMT -4. The time now is 03:38.