CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Pre-Processing

oscillating cylinder dynamic mesh

Register Blogs Community New Posts Updated Threads Search

Like Tree29Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 9, 2016, 02:01
Default
  #141
New Member
 
behzad
Join Date: Dec 2010
Posts: 15
Rep Power: 15
arionfard is on a distinguished road
Quote:
Originally Posted by CataV View Post
Hello Behzad
Thank you very much for your help. I saw your changes, comments and log file. Everything seems to be good. So I proved the model that you send me and the log file doesn't show any information about 6-DoF or mass center. Maybe there is a problem with the OF instalation or some libraries are missing, I don't know

For installing OF I used this link https://openfoamwiki.net/index.php/I...M-2.4.0/Ubuntu for Ubuntu 14.04 and install from source

For running I generat the mesh with "blockMesh" and then I enter the command line "pimpleFoam"

I'll be waiting for a comment

Thanks again
You shoud write pimpleDyMFoam. attach your log file.
CataV likes this.

Last edited by arionfard; September 9, 2016 at 03:15.
arionfard is offline   Reply With Quote

Old   September 9, 2016, 03:13
Default
  #142
New Member
 
Jason
Join Date: Dec 2015
Posts: 12
Rep Power: 10
llib11ik is on a distinguished road
Quote:
Originally Posted by CataV View Post
Hello Behzad
Thank you very much for your help. I saw your changes, comments and log file. Everything seems to be good. So I proved the model that you send me and the log file doesn't show any information about 6-DoF or mass center. Maybe there is a problem with the OF instalation or some libraries are missing, I don't know

For installing OF I used this link https://openfoamwiki.net/index.php/I...M-2.4.0/Ubuntu for Ubuntu 14.04 and install from source

For running I generat the mesh with "blockMesh" and then I enter the command line "pimpleFoam"

I'll be waiting for a comment

Thanks again
If you specify 6DOF, should you use "pimpleDyMFoam" rather than "pimpleFoam"?
CataV likes this.
llib11ik is offline   Reply With Quote

Old   September 9, 2016, 23:23
Smile
  #143
New Member
 
Catalina Valencia
Join Date: Sep 2015
Posts: 9
Rep Power: 10
CataV is on a distinguished road
Quote:
Originally Posted by arionfard View Post
You shoud write pimpleDyMFoam. attach your log file.
Dear Behzad
You were right, I had to use pimpleDyMFoam. I'm sorry for that mistake. I'm very grateful for the support you gave me.

Best regards
Cata
CataV is offline   Reply With Quote

Old   October 27, 2016, 23:45
Default
  #144
Senior Member
 
Join Date: Jan 2013
Posts: 134
Rep Power: 13
kkpal is on a distinguished road
Hi!
I want to prescribe the cylinder with this kind of forced motion. Does anyone know how to do this?
Attached Images
File Type: png 1.PNG (19.1 KB, 71 views)
kkpal is offline   Reply With Quote

Old   October 28, 2016, 02:00
Default
  #145
New Member
 
behzad
Join Date: Dec 2010
Posts: 15
Rep Power: 15
arionfard is on a distinguished road
Quote:
Originally Posted by kkpal View Post
Hi!
I want to prescribe the cylinder with this kind of forced motion. Does anyone know how to do this?
What's h?!
arionfard is offline   Reply With Quote

Old   October 28, 2016, 02:38
Default
  #146
Senior Member
 
Join Date: Jan 2013
Posts: 134
Rep Power: 13
kkpal is on a distinguished road
Quote:
Originally Posted by arionfard View Post
What's h?!
h is the vertical displacement.
What I want to do is to prescribe the cylinder with such a vertical motion. The motion is varying in both amplitude and frequency.
I'm trying to use this signal to train a reduced order model based on ARX model.
kkpal is offline   Reply With Quote

Old   October 28, 2016, 02:41
Default
  #147
New Member
 
behzad
Join Date: Dec 2010
Posts: 15
Rep Power: 15
arionfard is on a distinguished road
Quote:
Originally Posted by kkpal View Post
h is the vertical displacement.
You want this as a result of fluid flow or you want to move the cylinder like this and check the feedback?! explain the problem clearly.
arionfard is offline   Reply With Quote

Old   October 28, 2016, 03:07
Default
  #148
Senior Member
 
Join Date: Jan 2013
Posts: 134
Rep Power: 13
kkpal is on a distinguished road
Quote:
Originally Posted by arionfard View Post
You want this as a result of fluid flow or you want to move the cylinder like this and check the feedback?! explain the problem clearly.
I want to move the cylinder like this and check the resulted lift force coefficient.
kkpal is offline   Reply With Quote

Old   October 28, 2016, 04:55
Default
  #149
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Quote:
Originally Posted by kkpal View Post
I want to move the cylinder like this and check the resulted lift force coefficient.
Hi,

could you give more details pleases to be able to help. I was working in the forced oscillating cylinder.

Best,
Maimouna
Maimouna is offline   Reply With Quote

Old   October 28, 2016, 06:45
Default
  #150
Senior Member
 
Join Date: Jan 2013
Posts: 134
Rep Power: 13
kkpal is on a distinguished road
Quote:
Originally Posted by Maimouna View Post
Hi,

could you give more details pleases to be able to help. I was working in the forced oscillating cylinder.

Best,
Maimouna
Here is my case file for the forced vibration simulation.
https://drive.google.com/file/d/0ByG...ew?usp=sharing
The circular cylinder is given a vertical displacement specified in "chirp".
The first column is time, and next three columns are displacement vector.

I'm trying with timeVaryingUniformFixedValue boundary condition for the cylinder wall in "0/pointDisplacement". But it does not work well. I guess it might be due to the displacement time history specified in "chirp" is not continuous from one time step to the next, it behaves like a sudden change in vertical position.

For this kind of arbitrary cylinder motion, what is the good way to simulate?
kkpal is offline   Reply With Quote

Old   October 29, 2016, 23:06
Default
  #151
Senior Member
 
Join Date: Jan 2013
Posts: 134
Rep Power: 13
kkpal is on a distinguished road
Quote:
Originally Posted by kkpal View Post
Here is my case file for the forced vibration simulation.
https://drive.google.com/file/d/0ByG...ew?usp=sharing
The circular cylinder is given a vertical displacement specified in "chirp".
The first column is time, and next three columns are displacement vector.

I'm trying with timeVaryingUniformFixedValue boundary condition for the cylinder wall in "0/pointDisplacement". But it does not work well. I guess it might be due to the displacement time history specified in "chirp" is not continuous from one time step to the next, it behaves like a sudden change in vertical position.

For this kind of arbitrary cylinder motion, what is the good way to simulate?
The problem associated with the current setting is that as the cylinder starts to move, the lift force coefficients becomes nonsense, as is shown in the picture (the cylinder starts to move at around t=7.9).
Attached Images
File Type: png illforce.PNG (38.2 KB, 69 views)
kkpal is offline   Reply With Quote

Old   October 31, 2016, 06:23
Default
  #152
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Quote:
Originally Posted by kkpal View Post
Here is my case file for the forced vibration simulation.
https://drive.google.com/file/d/0ByG...ew?usp=sharing
The circular cylinder is given a vertical displacement specified in "chirp".
The first column is time, and next three columns are displacement vector.

I'm trying with timeVaryingUniformFixedValue boundary condition for the cylinder wall in "0/pointDisplacement". But it does not work well. I guess it might be due to the displacement time history specified in "chirp" is not continuous from one time step to the next, it behaves like a sudden change in vertical position.

For this kind of arbitrary cylinder motion, what is the good way to simulate?
Dear Kkpal,

could you try this in pointDisplacement file. It is actually my one in the ''forced oscillation case'' in OF-2.2.2

Code:
FoamFile
{
version   2.0;
format    ascii;
class     pointVectorField;
object    pointDisplacement;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 1 0 0 0 0 0];

internalField uniform (0 0 0);

boundaryField
{
       inlet
{
    type fixedValue;
    value uniform (0 0 0);
}
    outlet
{
    type fixedValue;
    value uniform (0 0 0);
}
    top
{
    type empty;//fixedValue;
    //value uniform (0 0 0);
}
    bottom
{
    type empty;//fixedValue;
    //value uniform (0 0 0);
}
    walls
{
    type fixedValue; //slip; //zeroGradient;
        value (0 0 0);
}

    cylinder
{
    type oscillatingDisplacement;
    amplitude  (0 0.25 0); 
    omega 1.14040;
    value uniform (0 0 0);
}
}



// ************************************************************************* //
I hope that might help.

All the best.
Maimouna
Maimouna is offline   Reply With Quote

Old   November 1, 2016, 08:39
Default
  #153
Senior Member
 
Join Date: Jan 2013
Posts: 134
Rep Power: 13
kkpal is on a distinguished road
Quote:
Originally Posted by Maimouna View Post
Dear Kkpal,

could you try this in pointDisplacement file. It is actually my one in the ''forced oscillation case'' in OF-2.2.2

Code:
FoamFile
{
version   2.0;
format    ascii;
class     pointVectorField;
object    pointDisplacement;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 1 0 0 0 0 0];

internalField uniform (0 0 0);

boundaryField
{
       inlet
{
    type fixedValue;
    value uniform (0 0 0);
}
    outlet
{
    type fixedValue;
    value uniform (0 0 0);
}
    top
{
    type empty;//fixedValue;
    //value uniform (0 0 0);
}
    bottom
{
    type empty;//fixedValue;
    //value uniform (0 0 0);
}
    walls
{
    type fixedValue; //slip; //zeroGradient;
        value (0 0 0);
}

    cylinder
{
    type oscillatingDisplacement;
    amplitude  (0 0.25 0); 
    omega 1.14040;
    value uniform (0 0 0);
}
}



// ************************************************************************* //
I hope that might help.

All the best.
Maimouna
Thank you for the reply. Your method works well.
kkpal is offline   Reply With Quote

Old   April 10, 2017, 19:43
Default
  #154
New Member
 
M. Amirul
Join Date: Mar 2017
Location: Malaysia
Posts: 18
Rep Power: 9
maasyraf3 is on a distinguished road
Quote:
Originally Posted by llib11ik View Post
Thanks, Maimouna! That's a great help!

Regards
Jason
Hi Jason - how we want to generate center of mass data before can plot in gnuplot?

Tq

Amy

Sent from my M631Y using CFD Online Forum mobile app
__________________
Best Regards,
maasyraf3
maasyraf3 is offline   Reply With Quote

Old   April 22, 2017, 06:31
Default
  #155
New Member
 
M. Amirul
Join Date: Mar 2017
Location: Malaysia
Posts: 18
Rep Power: 9
maasyraf3 is on a distinguished road
GREETINGS to all Foamers,

My name is Amy which currently are doing my master research project by dealing with oscillating cylinders. I have went through each replies in this thread and its related link provided, but still I think I dont have the answer.

I really need your series of advices, in regards with my oscillating circular cylinder in dynamic meshing. I use pimpleDyMFoam, OF 4.0 to solve my case

I have provide all the necessary parameters that similar with my experimental works ( actual setup) but after almost 2 weeks, still the simulation in openFoam not favourable to my experiment result. (I attached the video for actual experiment in my university lab)

The GIF file : https://www.cfd-online.com/Forums/at...1&d=1492856466

Has uploaded in youtube link: https://youtu.be/V627hD_ktVA


I did modify and tried various Reynold Number value in order to see the effect to the flow, but still the same result. It seems that the flow "not so smooth" as per actual.

My setup which is mass-spring-damping system are as follows:

1) Diameter of the cylinder is 50 mm ( which equal to 0.05 meter) iwith the total length is 0.65meter. My case only for 1-DOF.

2) The circular cylinder should oscillate (moving) in y-direction only. As the flow passing the cylinder, the lift force from the flow should naturally force the cylinder up and down (viv phenomena) at certain amplitude.

3) System stiffness is 140 N/m. And so I set two spring (70 for each spring) in the openFoam dynamicMeshDict. The sketch by hand as below:






Basically I use
Code:
     - dynamicFvMesh :dynamicMotionSolverFvMesh
     - motionSolverLibs :("libsixDoFRigidBodyMotion.so")
     - solver:            sixDoFRigidBodyMotion
4) The damping of system is 0.08. The mass of the cylinder is 1.32 kg. Density of the water I use 1000 kg/m3.
Kinematic viscosity (v) - 1e-06. And so these values I set in transportProperties file

Code:
transportModel  Newtonian;

nu              nu [ 0 2 -1 0 0 0 0 ] 1e-06;
rho             rho [1 -3 0 0 0 0 0] 1000;
5) Speed of the water is 0.3 m/s.
So, here in 0 file, I set the U 0.3 m/s at inlet and internalField as well. (I dont know it is the right way or not).

By using 0.3 m/s, the Reynold number is 15 000.
I dont know, this value of Re still valid for my case file since I off the turbulenceProperties. Need helps here.

6) In dynamicMeshDict, we should specify the below:

- inner distance and outer distance. I'd like to ask the effect to the oscillation of the cylinder

Code:
    patches         (cylinder);
    innerDistance   0.3;
    outerDistance   2;
- the rho of the rhoInf ? What the exact value I should put? the rho of the cylinder or the fluid?

Code:
    rho             rhoInf;
    rhoInf          1;
7) The issue is - why after simulate is seems so "frozen" and did not work well as per actual experiment? How do I fix this.?

Here I attach all the '0' , ' Constant' and 'System' of my setup. And really appreciate helps and assistance from this forum thread. I dont know, it can be my flow setup is wrong, or my dynamicMeshDict or my transportProperties. or else?

I hope I can resolve this...really. Thanks in advance all !!

Best Regards -
Amy
amirulasyraf.utm@gmail.com

*********************************


My all case Files as below link and quote

0_constant_system_cylinderVIV.zip


0 files

U :

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       volVectorField;
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform (0.01 0 0);

boundaryField
{
    topAndBottom
    {
    type            noSlip;
    }

    inlet
    {
    type            fixedValue;
    value        uniform (0.01 0 0);
    }

    outlet
    {
    type            zeroGradient;
    }
    
    frontAndBack
    {
        type            empty;
    }


    cylinder
    {
        type            movingWallVelocity;
        value           uniform (0 0 0);
     }

}

// ************************************************************************* //
Pressure ,p
Code:
{
    version     2.0;
    format      ascii;
    class       volScalarField;
    object      p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0;

boundaryField
{
    
    topAndBottom
    {
        type            zeroGradient;
    } 

    outlet
    {
        type            zeroGradient;
    }

    inlet
    {
        type            zeroGradient;
    }

    frontAndBack
    {
        type            empty;
    }

    cylinder
    {
        type            zeroGradient;
    }

}

// ************************************************************************* //
pointDisplacement

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       pointVectorField;
    location    "0.01";
    object      pointDisplacement;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 0 0 0 0 0];

internalField   uniform (0 0 0);

boundaryField
{
    topAndBottom
    {
        type            uniformFixedValue;
        uniformValue    (0 0 0);
    }

    inlet
    {
        type            uniformFixedValue;
        uniformValue    (0 0 0);
    }

    outlet
    {
        type            uniformFixedValue;
        uniformValue    (0 0 0);
    }

    cylinder
    {
        type            calculated;
        value           uniform (0 0 0);
    }

    frontAndBack
    {
        type            empty;
    }
}
Next, is the dynamicMeshDict file

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      dynamicMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dynamicFvMesh      dynamicMotionSolverFvMesh;

motionSolverLibs ("libsixDoFRigidBodyMotion.so");

solver            sixDoFRigidBodyMotion;

diffusivity       linear inverseDistance 1 (cylinder);

sixDoFRigidBodyMotionCoeffs
{
    patches         (cylinder);
    innerDistance   0.3;
    outerDistance   2;

    mass            1.32;
    centreOfMass    (0 0 0);
    momentOfInertia (0.1 0.1 0.1);
    orientation
    (
        1 0 0
        0 1 0
        0 0 1
    );
    angularMomentum (0 0 0);
    g               (0 -9.81 0);
    rho             rhoInf;
    rhoInf          1;
    report          on;

    solver
    {
        type symplectic;
    }

    constraints
    {
        yLine
        {
            sixDoFRigidBodyMotionConstraint line;
            centreOfRotation    (0 0 0);
            direction           (0 1 0);
        }

        zAxis
        {
            sixDoFRigidBodyMotionConstraint axis;
            axis                (0 0 1);
        }
    }

    restraints
    {
        verticalSpring1
        {
            sixDoFRigidBodyMotionRestraint linearSpring;

            anchor          (0 0.20 0.0025);
            refAttachmentPt (0 0.05 0.0025);
            stiffness       70;
            damping         0.08;
            restLength      0.05;
        }

        verticalSpring2
        {
            sixDoFRigidBodyMotionRestraint linearSpring;

            anchor          (0 -0.20 0.0025);
            refAttachmentPt (0 -0.05 0.0025);
            stiffness       70;
            damping         0.08;
            restLength      0.05;
        }


    }
}


// ************************************************************************* //
next - transportProperties

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

transportModel  Newtonian;

nu              nu [ 0 2 -1 0 0 0 0 ] 1e-06;
rho             rho [1 -3 0 0 0 0 0] 1000;          


// *************************************************************************
turbulenceProperties


Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      turbulenceProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

simulationType  laminar;


// ************************************************************************* //
RAS properties

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      RASProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

RASModel        laminar;


turbulence      off;

printCoeffs     on;


// ************************************************************************* //
and now - the system files

the controlDict:

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application     pimpleDyMFoam;

startFrom       latestTime;

startTime       0;

stopAt          endTime;

endTime         60;

deltaT          5e-06;

writeControl    adjustableRunTime;

writeInterval   0.1;

purgeWrite      0;

writeFormat     binary;

writePrecision  6;

writeCompression off;

timeFormat      general;

timePrecision   6;

runTimeModifiable true;

adjustTimeStep  yes;

maxCo           0.5;

functions
{
    #include "cuttingPlane"
}

// ************************************************************************* //
the decomposeParDict:

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      decomposeParDict;
}

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

numberOfSubdomains 6;

method          scotch;
// method          ptscotch;

simpleCoeffs
{
    n               (4 1 1);
    delta           0.001;
}

hierarchicalCoeffs
{
    n               (3 2 1);
    delta           0.001;
    order           xyz;
}

manualCoeffs
{
    dataFile        "cellDecomposition";
}


// ************************************************************************* //
the fvschemes:

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default         Euler;
}

gradSchemes
{
    default         Gauss linear;
}

divSchemes
{
    default         none;
    div(phi,U)      Gauss linear;
    div((nuEff*dev(T(grad(U))))) Gauss linear;
    div((nuEff*dev2(T(grad(U))))) Gauss linear;
}

laplacianSchemes
{
    default         Gauss linear corrected;
    laplacian(diffusivity,cellMotionU) Gauss linear uncorrected;
}

interpolationSchemes
{
    default         linear;
}

snGradSchemes
{
    default         corrected;
}

fluxRequired
{
    default         no;
    pcorr           ;
    p               ;
}


// ************************************************************************* //
the fvsolution:

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    pcorr
    {
        solver          GAMG;
        tolerance       0.02;
        relTol          0;
        smoother        GaussSeidel;
        nPreSweeps      0;
        nPostSweeps     2;
        cacheAgglomeration no;
        nCellsInCoarsestLevel 10;
        agglomerator    faceAreaPair;
        mergeLevels     1;
    }

    p
    {
        solver          GAMG;
        tolerance       0;
        relTol          0.01;
        smoother        GaussSeidel;
        nPreSweeps      0;
        nPostSweeps     2;
        cacheAgglomeration no;
        nCellsInCoarsestLevel 10;
        agglomerator    faceAreaPair;
        mergeLevels     1;
    }

    pFinal
    {
        $p;
        tolerance       1e-06;
        relTol          0;
    }

    U
    {
        solver          smoothSolver;
        smoother        symGaussSeidel;
        tolerance       1e-05;
        relTol          0.1;
    }

    UFinal
    {
        $U;
        tolerance       1e-05;
        relTol          0;
    }

    cellMotionUx
    {
        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-08;
        relTol          0;
    }
    cellMotionUxFinal
    {
        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-08;
        relTol          0;
    }

    "cellDisplacement.*"
    {
        solver          GAMG;
        tolerance       1e-5;
        relTol          0;
        smoother        GaussSeidel;
        cacheAgglomeration true;
        nCellsInCoarsestLevel 10;
        agglomerator    faceAreaPair;
        mergeLevels     1;
    }

}

PIMPLE
{
    correctPhi          yes;
    nOuterCorrectors    2;
    nCorrectors         1;
    nNonOrthogonalCorrectors 0;
pRefCell 1001; 
pRefValue 0; 
}

relaxationFactors
{
    fields
    {
    }
    equations
    {
        "U.*"           1;
    }
}

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

The GIF file of the "not so smooth" oscillation
oscillatingCylinder.jpg

https://www.cfd-online.com/Forums/at...1&d=1492857765

the youtube link for the not so smooth simulation of mine:
https://youtu.be/HPNi8obU4aM
Attached Images
File Type: jpg sketch.jpg (53.9 KB, 525 views)
File Type: jpg VIV_experimental.jpg (10.6 KB, 90 views)
__________________
Best Regards,
maasyraf3

Last edited by wyldckat; April 23, 2017 at 14:35. Reason: Changed [QUOTE][/QUOTE] to [CODE][/CODE] and merged posts that were a few minutes apart
maasyraf3 is offline   Reply With Quote

Old   April 22, 2017, 21:20
Default
  #156
New Member
 
M. Amirul
Join Date: Mar 2017
Location: Malaysia
Posts: 18
Rep Power: 9
maasyraf3 is on a distinguished road
And this is my blockMeshDict file

Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 0.05;

vertices
(
//z=0
//inner circle
   (5 0 0) //0
   (3.535533906 3.535533906 0) //1
   (0 5 0) //2
   (-3.535533906 3.535533906 0) //3
   (-5 0 0) //4
   (-3.535533906 -3.535533906 0) //5
   (0 -5 0) //6
   (3.535533906 -3.535533906 0) //7

//outer circle
   (15 0 0) //8
   (10.60660172 10.60660172 0) //9
   (0 15 0) //10
   (-10.60660172 10.60660172 0) //11
   (-15 0 0) //12
   (-10.60660172 -10.60660172 0) //13
   (0 -15 0) //14
   (10.60660172 -10.60660172 0) //15

//rectangle
   (200 0 0) //16
   (200 10.60660172 0) //17
   (200 50 0) //18
   (10.60660172 50 0) //19
   (0 50 0) //20
   (-10.60660172 50 0) //21
   (-25 50 0) //22
   (-25 10.60660172 0) //23
   (-25 0 0) //24
   (-25 -10.60660172 0) //25
   (-25 -50 0) //26
   (-10.60660172 -50 0) //27
   (0 -50 0) //28
   (10.60660172 -50 0) //29
   (200 -50 0) //30
   (200 -10.60660172 0) //31


//z=1
//inner circle
   (5 0 1) //32
   (3.535533906 3.535533906 1) //33
   (0 5 1) //34
   (-3.535533906 3.535533906 1) //35
   (-5 0 1) //36
   (-3.535533906 -3.535533906 1) //37
   (0 -5 1) //38
   (3.535533906 -3.535533906 1) //39

//outer circle
   (15 0 1) //40
   (10.60660172 10.60660172 1) //41
   (0 15 1) //42
   (-10.60660172 10.60660172 1) //43
   (-15 0 1) //44
   (-10.60660172 -10.60660172 1) //45
   (0 -15 1) //46
   (10.60660172 -10.60660172 1) //47

//rectangle
   (200 0 1) //48
   (200 10.60660172 1) //49
   (200 50 1) //50
   (10.60660172 50 1) //51
   (0 50 1) //52
   (-10.60660172 50 1) //53
   (-25 50 1) //54
   (-25 10.60660172 1) //55
   (-25 0 1) //56
   (-25 -10.60660172 1) //57
   (-25 -50 1) //58
   (-10.60660172 -50 1) //59
   (0 -50 1) //60
   (10.60660172 -50 1) //61
   (200 -50 1) //62
   (200 -10.60660172 1) //63
);

blocks
(
    hex (1 0 8 9 33 32 40 41) (10 10 1) simpleGrading (1 8 1) //Block 0
    hex (2 1 9 10 34 33 41 42) (10 10 1) simpleGrading (1 8 1) //Block 1
    hex (3 2 10 11 35 34 42 43) (10 10 1) simpleGrading (1 8 1) //Block 2
    hex (4 3 11 12 36 35 43 44) (10 10 1) simpleGrading (1 8 1) //Block 3
    hex (5 4 12 13 37 36 44 45) (10 10 1) simpleGrading (1 8 1) //Block 4
    hex (6 5 13 14 38 37 45 46) (10 10 1) simpleGrading (1 8 1) //Block 5
    hex (7 6 14 15 39 38 46 47) (10 10 1) simpleGrading (1 8 1) //Block 6
    hex (0 7 15 8 32 39 47 40) (10 10 1) simpleGrading (1 8 1) //Block 7
    hex (8 16 17 9 40 48 49 41) (10 10 1) simpleGrading (2 1 1) //Block 8
    hex (9 17 18 19 41 49 50 51) (10 10 1) simpleGrading (2 2 1) //Block 9
    hex (10 9 19 20 42 41 51 52) (10 10 1) simpleGrading (1 2 1) //Block 10
    hex (11 10 20 21 43 42 52 53) (10 10 1) simpleGrading (1 2 1) //Block 11
    hex (23 11 21 22 55 43 53 54) (10 10 1) simpleGrading (1 2 1) //Block 12
    hex (24 12 11 23 56 44 43 55) (10 10 1) simpleGrading (1 1 1) //Block 13
    hex (25 13 12 24 57 45 44 56) (10 10 1) simpleGrading (1 1 1) //Block 14
    hex (26 27 13 25 58 59 45 57) (10 10 1) simpleGrading (1 0.5 1) //Block 15
    hex (27 28 14 13 59 60 46 45) (10 10 1) simpleGrading (1 0.5 1) //Block 16
    hex (28 29 15 14 60 61 47 46) (10 10 1) simpleGrading (1 0.5 1) //Block 17
    hex (29 30 31 15 61 62 63 47) (10 10 1) simpleGrading (2 0.5 1) //Block 18
    hex (15 31 16 8 47 63 48 40) (10 10 1) simpleGrading (2 1 1) //Block 19
);

edges
(
    //inner cylinder surface
    arc 0  1  (4 3 0) 
    arc 32 33 (4 3 1) 

    arc 1  2  (3 4 0) 
    arc 33 34 (3 4 1) 

    arc 2  3  (-3 4 0) 
    arc 34 35 (-3 4 1) 

    arc 3  4  (-4 3 0) 
    arc 35 36 (-4 3 1)

    arc 4 5 (-4 -3 0)
    arc 36 37 (-4 -3 1)

    arc 5 6 (-3 -4 0)
    arc 37 38 (-3 -4 1)

    arc 6 7  (3 -4 0) 
    arc 38 39 (3 -4 1) 

    arc 7 0  (4 -3 0) 
    arc 39 32 (4 -3 1)

    //outer cylinder surface
    arc 8  9  (12 9 0) 
    arc 40 41 (12 9 1) 

    arc 9 10  (9 12 0) 
    arc 41 42 (9 12 1) 

    arc 10 11  (-9 12 0) 
    arc 42 43 (-9 12 1) 

    arc 11 12  (-12 9 0) 
    arc 43 44 (-12 9 1)

    arc 12 13 (-12 -9 0)
    arc 44 45 (-12 -9 1)

    arc 13 14 (-9 -12 0)
    arc 45 46 (-9 -12 1)

    arc 14 15  (9 -12 0) 
    arc 46 47 (9 -12 1) 

    arc 15 8  (12 -9 0) 
    arc 47 40 (12 -9 1)

);

boundary
(
    inlet
    {
        type patch;
        faces
        (
          (22 23 55 54)
          (23 24 56 55)
          (24 25 57 56)
          (25 26 58 57)
        );
    }

    outlet
    {
        type patch;
        faces
        (
          (30 31 63 62)
          (31 16 48 63)
          (16 17 49 48)
          (17 18 50 49)
        );
    }
   
    topAndBottom
    {
        type patch;
        faces
        (
          (18 19 51 50)
          (19 20 52 51)
          (20 21 53 52)
          (21 22 54 53)

          (26 27 59 58)
          (27 28 60 59)
          (28 29 61 60)
          (29 30 62 61)
        ); 
    }
    

    cylinder
    {
        type wall;
        faces
        (
          (1 0 32 33)
          (2 1 33 34)
          (3 2 34 35)
          (4 3 35 36)
          (5 4 36 37)
          (6 5 37 38)
          (7 6 38 39)
          (0 7 39 32)
        );
    }

    frontAndBack
    {
        type empty;
        faces
        (
//circular faces
          (0 1 9 8)
          (32 40 41 33)

          (1 2 10 9)
          (33 41 42 34)

          (2 3 11 10)
          (34 42 43 35)

          (3 4 12 11)
          (35 43 44 36)

          (4 5 13 12)
          (36 44 45 37)

          (5 6 14 13)
          (37 45 46 38)

          (6 7 15 14)
          (38 46 47 39)

          (7 0 8 15)
          (39 47 40 32)

//rectangular faces
          (8 9 17 16)
          (40 48 49 41)

          (9 19 18 17)
          (41 49 50 51)

          (9 10 20 19)
          (41 51 52 42)

          (10 11 21 20)
          (42 52 53 43)

          (11 23 22 21)
          (43 53 54 55)

          (11 12 24 23)
          (43 55 56 44)

          (12 13 25 24)
          (44 56 57 45)

          (13 27 26 25)
          (45 57 58 59)

          (13 14 28 27)
          (45 59 60 46)

          (14 15 29 28)
          (46 60 61 47)

          (15 31 30 29)
          (47 61 62 63)

          (15 8 16 31)
          (47 63 48 40)
        );
    }
);

mergePatchPairs
(
);

// ************************************************************************* //
Is it because of my meshing is not suffice?

Or because of my turbulence is "off" mode?
__________________
Best Regards,
maasyraf3

Last edited by wyldckat; April 23, 2017 at 14:34. Reason: Changed [QUOTE][/QUOTE] to [CODE][/CODE] and merged posts that were a few minutes apart
maasyraf3 is offline   Reply With Quote

Old   July 15, 2017, 09:15
Default
  #157
New Member
 
aref shahryari
Join Date: Jul 2017
Posts: 10
Rep Power: 8
Aref.shri is on a distinguished road
Hi all!
I'm working with an example in OLAFOAM OF300_400 named wavemakerFlume. I've added a body (caisson) to the domain which has no motion yet. Now I want to add a 6-DOF motion to the body that moves with the wave in additional to an oscillating flap (wave maker that existed in the example before) and have two different kinds of movement. Does anybody have any idea how to set dynamicMeshDict file?
Aref.shri is offline   Reply With Quote

Old   October 28, 2017, 19:22
Default How to apply the [B]moveDynamicMesh[/B] solver to sixDoFRigidBody dynamic mesh solver
  #158
New Member
 
Jianming
Join Date: Dec 2016
Posts: 3
Rep Power: 9
Jim_Hao is on a distinguished road
Quote:
Originally Posted by wyldckat View Post

In addition, you can use the moveDynamicMesh solver, which only moves the mesh and does not do any flow simulation. This is useful for figuring out how the mesh is moving along time.
Oh, and there was a thread that had a neat example case... where instead of a cylinder, it was a moving wall... actually, here's two:

Beyond this, I'll have to test things myself and that will take quite some time.

Best regards,
Bruno
Hi, I'm new to FOAM, I also want to realize a simulation for a free oscillating flat plate. I want to use this moveDynamicMesh solver to check my dynamic mesh settings. But it shows a fatal error "Could not find U:U or p in database." I tried with the tutorial case for the moveDynamicMesh utility, it works, but when I tried this solver for the wingMotion case in the tutorial, it shows this Fatal error like above. I'm just wondering, if you guys also met this error before, and how to correct using this solver?
Thanks
Jim_Hao is offline   Reply With Quote

Old   October 7, 2020, 02:02
Default
  #159
Member
 
Sachin
Join Date: Aug 2014
Location: India
Posts: 84
Rep Power: 11
Sachin m is on a distinguished road
Quote:
Originally Posted by agnip View Post
Hi everybody!
I'm simulating free decay tests of a vertical floating cylinder in OF 2.3.0, with interDyMFoam. The cylinder is moored to the bottom with four linear springs.
it works, but it seems to be not realistic, because the motion is almost not dampened.
Did anybody work on this topic? can you suggest me the reason or the way to solve the problem?

Thank you very very much in advance.




Hi.

Could you share the case setup?

Agnese

Could you share the case setup?
Sachin m is offline   Reply With Quote

Old   February 6, 2022, 15:47
Default
  #160
New Member
 
zink
Join Date: Oct 2015
Posts: 29
Rep Power: 10
ansab_sindhu is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Hi Maimouna,

I'll write this post as a diary of my progress while examining your files and the case at hand. I'm using the case from post #48 as a base, then replaced the files you indicated in the post above. I used OpenFOAM 2.2.x, but should also with 2.2.2... at least I hope so.
  1. Unpacked your case and replaced the files.
  2. Did some cleaning up, removing backup files "*~" and fixed indentation inside some files.
  3. Then opened the files for the tutorial case "mesh/moveDynamicMesh/simpleHarmonicMotion" from OpenFOAM 2.2.x.
  4. Then searched for the source code of the linear spring:
    Code:
    find $FOAM_SRC -name "*linearSpring*"
    With that I found the file "linearSpring.H" and this in particular:
    Code:
            //- Anchor point, where the spring is attached to an immovable
            //  object
            point anchor_;
    
            //- Reference point of attachment to the solid body
            point refAttachmentPt_;
    
            //- Spring stiffness coefficient (N/m)
            scalar stiffness_;
    
            //- Damping coefficient (Ns/m)
            scalar damping_;
    
            //- Rest length - length of spring when no forces are applied to it
            scalar restLength_;
    Seems pretty clear what each coefficient stands for.
  5. Then I started comparing the "pointDisplacement" field set-up between cases and removed all what seemed excessive to me, since I was still trying to figure things out. Then boosted the U inlet to 100.0 m/s and simplified the BCs to the usual fixed value + zeroGradient inlet and outlet. Oh, and I relaxed a lot the damping and stiffness, so that I could clearly see where the cylinder were floating to. The case I ended up is attached as "freeOscillatingCylinder_v0.1.tar.gz". You'll notice I reduced the time settings to simulate 0.1 s only, saving each 0.01. Quick and dirty results gets us faster through the trial-and-error phase.
I think that now you can start working towards your desired test case. Study the files inside the attached case.
Run the attached case to get a feeling of how my thinking in trying to isolate-and-conquer each setting, one at a time.


Then start from this case to do small changes. First gradually change and test the "horizontalSpring" parameters to suit your case. Then try adding back the "verticalSpring". Then reduce the inlet speed from 100 to 10 and later to 1.

Always run in between changes, to see the results. This way you'll slowly but steadily find how to properly configure your case.

Only when things seem to be working properly, should you start turning on the additional features, such as the functions objects and the long run times.

Best regards,
Bruno

Hi,
Can anyone answer the following queries:


Should the value of inner distance be equal to diameter or radius?
What’s the recommended value of outerDistance? The boundary of whole domain or somewhat in between the cylinder and main boundary ?
Should the constraint of line be applied for 2-DoF? When I removed the line constraint condition, the simulation diverges… do I need to refine the mesh ?
Should the value of refAttachmentPt be equal to cylinder diameter or zero?

Will really appreciate your guidance...
ansab_sindhu is offline   Reply With Quote

Reply


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
Dynamic Mesh "Shadow Wall" thezack FLUENT 0 June 4, 2013 22:09
dynamic mesh for drop interface IndrajitW FLUENT 0 March 30, 2013 08:03
dynamic mesh refinement and rhoCentralFoam ChrisA OpenFOAM Running, Solving & CFD 1 March 21, 2013 08:00
[snappyHexMesh] snappyHexMesh won't work - zeros everywhere! sc298 OpenFOAM Meshing & Mesh Conversion 2 March 27, 2011 21:11
Icemcfd 11: Loss of mesh from surface mesh option? Joe CFX 2 March 26, 2007 18:10


All times are GMT -4. The time now is 13:14.