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   March 7, 2014, 14:01
Default oscillating cylinder dynamic mesh
  #1
Member
 
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 12
Scabbard is on a distinguished road
Dear Foamers,

I just start to learn how to use openFoam and now I want to use the dynamic mesh to simulate a flow past an oscillating cylinder. However, for the dynamic mesh, I can only let the cylinder go one direction like the following dynamicMeshDict document.


/*--------------------------------*- 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 solidBodyMotionFvMesh;

motionSolverLibs ( "libfvMotionSolvers.so" );

solidBodyMotionFvMeshCoeffs
{
cellZone Fluid;

solidBodyMotionFunction linearMotion;
linearMotionCoeffs
{
velocity (0 -1 0);
}
}


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

Could you tell me how to make the cylinder oscillating specifically in the flow?

Thank you so much for your help.
Aref.shri likes this.
Scabbard is offline   Reply With Quote

Old   March 24, 2014, 09:53
Default
  #2
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear Scabbard

I just started working in free vibration of cylinder in the flow. Do you get idea how to work in the dynamic cylinder?
Maimouna is offline   Reply With Quote

Old   March 24, 2014, 11:39
Default
  #3
Member
 
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 12
Scabbard is on a distinguished road
Quote:
Originally Posted by Maimouna View Post
Dear Scabbard

I just started working in free vibration of cylinder in the flow. Do you get idea how to work in the dynamic cylinder?
Dear Maimouna

If you give more detail about your question, it will be better

I think you need add on pointDisplacement in your 0 docunment.

However, now I still could not run the case successful. Because it is always diverge. I do not know too much about pimplefoam...
WUYing likes this.
Scabbard is offline   Reply With Quote

Old   March 24, 2014, 11:47
Default
  #4
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Many thanks for your reply.

I already finished the case about flow past a circular cylinder (case attached). Now I would like to make cylinder goes up and down. What are the changes I have to add to my case to get what I'm looking?

Any idea would be welcomed.
Attached Files
File Type: gz circularCylinderNew.tar.gz (4.8 KB, 417 views)
Maimouna is offline   Reply With Quote

Old   March 24, 2014, 12:03
Default
  #5
Member
 
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 12
Scabbard is on a distinguished road
Quote:
Originally Posted by Maimouna View Post
Many thanks for your reply.

I already finished the case about flow past a circular cylinder (case attached). Now I would like to make cylinder goes up and down. What are the changes I have to add to my case to get what I'm looking?

Any idea would be welcomed.
Dear Mainmouna,

I think you need to add on a piontDisplacement in your 0 document to define the cylinder's motion

Quote:
/*--------------------------------*- 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 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 fixedValue;
value uniform (0 0 0);
}
bottom
{
type fixedValue;
value uniform (0 0 0);
}
walls
{
type zeroGradient;
}

cylinder
{
type oscillatingDisplacement;
amplitude (0.1 0 0);
omega 1;
value uniform (0 0 0);
}
}


// ************************************************** *********************** //
and in your constant floder, you need add on a dynamicMeshDict



However, I am not sure could it run successfully, but actually

cylinder
{
type oscillatingDisplacement;
amplitude (0.1 0 0);
omega 1;
value uniform (0 0 0);
}
is defining your cylinder's motions

Hope it help
alirezahd and atanzr like this.
Scabbard is offline   Reply With Quote

Old   March 24, 2014, 12:22
Default
  #6
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Many thanks. I will try that you post.
Maimouna is offline   Reply With Quote

Old   March 25, 2014, 05:29
Default
  #7
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear Scabbard,

just to make sure what's inside dynamicMeshDict file?


My dynamicMeshDict file is shown below
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  1.6                                   |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      dynamicMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dynamicFvMesh   dynamicInkJetFvMesh;//dynamicMotionSolverFvMesh;

motionSolverLibs ( "libfvMotionSolvers.so" );

//solver          velocityComponentLaplacian;

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

dynamicInkJetFvMeshCoeffs
{
amplitude 0.1; //0.5;
frequency 1; //2;
refPlaneX 0;

}

// ************************************************************************* //
But the problem is it stopped at time 19 while the running still complete but never coming after that. It seems to me that is happened because of the divergence problem. Am I right? How could I solve my problem? Any help please...

Last edited by wyldckat; April 5, 2014 at 11:30. Reason: merged posts, 1h apart
Maimouna is offline   Reply With Quote

Old   March 25, 2014, 07:50
Default
  #8
Member
 
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 12
Scabbard is on a distinguished road
Dear Maimouna,

Sry my friend, I am still looking for the meaning of the dynamicMeshDict... If I got any idea, I will post on the forums.
Scabbard is offline   Reply With Quote

Old   March 25, 2014, 08:31
Default
  #9
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Many thanks. I'm looking forward your post.

If I got any I will post it too.

All the best
Maimouna is offline   Reply With Quote

Old   March 25, 2014, 10:16
Default
  #10
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear Bruno,

I was working in flow past a circular cylinder in OpenFOAM 2.2.2. I just finished my case (attached). Now, I'm looking for how to make that cylinder oscillate (up and down)?

What should I changed on my case for free vibration of cylinder in flow. I knew that I have to add pointDisplacement in 0 folder
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | foam-extend: Open Source CFD                    |
|  \\    /   O peration     | Version:  3.0                                   |
|   \\  /    A nd           | Web:         http://www.extend-project.de       |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/

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 (1 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 slip; //zeroGradient;
}

    cylinder
{
    type oscillatingDisplacement;
    amplitude (0.1 0 0);
    omega 1;
    value uniform (0 0 0);
}
}



// ************************************************************************* //
Is pointDisplacement file ok?

Also, I need to add dynamicMeshDict in constant folder. What's included?
Shall I changed my solver from pimpleFoam to pimpleDyMFoam?

Looking forward you help please
Attached Files
File Type: gz circularCylinderNew.tar.gz (4.8 KB, 108 views)

Last edited by wyldckat; March 28, 2014 at 17:53. Reason: merged posts, as the only detail missing was the attachment
Maimouna is offline   Reply With Quote

Old   April 1, 2014, 07:45
Default
  #11
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear Scabbard,

did you get any idea about how making cylinder moving up and down? If any shearing me your idea please.
Maimouna is offline   Reply With Quote

Old   April 2, 2014, 11:27
Default
  #12
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear OF users,

I need your help please to give me hint of how to make cylinder oscillating in the attached case. I spent for that more than 3 weeks and I didn't get the result till today. So, I'm waiting your help my friends.

In that case:
- Mesh was generated by Gmsh.
- U = 1m/s^2, D= 1m, Re = 100.
- Other information in the attached folder.

I'm looking forward to get your help please.
Attached Files
File Type: gz circularCylinderNew.tar.gz (4.8 KB, 100 views)
Maimouna is offline   Reply With Quote

Old   April 5, 2014, 11:59
Default
  #13
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,975
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Greetings to all!

I don't have enough time today to look into this, but I think Maimouna is in the right track.

First of all, let me make a reference to the list of useful threads Maimouna had posted on and I then moved the posts to this thread, for keeping the topic in a single thread:

Let's see... the "pointDisplacement" is meant to be used by only a certain group of mesh motion solvers... If you look for "displacementMotionSolver" in the source code documentation page - http://foam.sourceforge.net/docs/cpp/ - you'll see that there are a few motion solvers that use the "pointDisplacement" field, as shown in the first attached image.
The candidates are:
  • displacementLaplacianFvMotionSolver
  • displacementSBRStressFvMotionSolver
  • sixDoFRigidBodyMotionSolver
Using the boundary condition that Maimouna is using in the "pointDisplacement" field, along with one of these motion solvers, should do the trick.
If we use this command:
Code:
find $FOAM_TUTORIALS -name dynamicMeshDict
it's possible to find all existing tutorials that have a "dynamicMeshDict" file.

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
Attached Images
File Type: png a21330.png (27.2 KB, 293 views)
Haier, Bollonga, alirezahd and 2 others like this.
__________________
wyldckat is offline   Reply With Quote

Old   April 5, 2014, 14:39
Default
  #14
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear Bruno,

many thanks for your post. I'm going to try what you post and I will post if any new result.

Waiting your trying as well.

Best regards
Maimouna is offline   Reply With Quote

Old   April 11, 2014, 14:25
Default
  #15
Member
 
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 12
Scabbard is on a distinguished road
Quote:
Originally Posted by Maimouna View Post
Dear Bruno,

many thanks for your post. I'm going to try what you post and I will post if any new result.

Waiting your trying as well.

Best regards
Dear Maimouna,

Sorry for the late reply, I am still try to get it oscillating, because I am simulating in turbulence so now still the programme can start run but can not converge always got error. so I am not sure now... Sorry

Hope you have already solve the problem.

Best wishes
Scabbard is offline   Reply With Quote

Old   April 11, 2014, 17:38
Default
  #16
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear Scabbard,

yes, I solve my oscillating problem in laminar flow for forced vibration but not in natural vibration. I'm still working to get the result to make comparison between both. Once finished, I'm going to post them both.

All the best.

Maimouna

Kind regards
Maimouna is offline   Reply With Quote

Old   April 12, 2014, 09:49
Default
  #17
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Tampa, US
Posts: 308
Rep Power: 15
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Hello all,
I hope you have a good day.
I am trying to simulate the same thing.
Dear Maimounda, by natural vibration of the cylinder, you mean the vortex induced vibrations causing cylinder to oscillate?

With all the best,
Mojtaba
alirezahd likes this.
__________________
Learn OpenFOAM in Persian
SFO (StarCCM+ FLUENT OpenFOAM) Project Team Member
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   April 12, 2014, 12:11
Default
  #18
Senior Member
 
ok
Join Date: Oct 2013
Posts: 346
Rep Power: 13
Maimouna is on a distinguished road
Dear Mojtaba,

exactly, in the natural vibration don't need to specify a motion for the cylinder. Let the cylinder (within certain constraints) move accordingly to how the forces caused by the fluid act on it.

The difference between forced and natural vibrations is essentially the boundary condition on the cylinder in pointDisplacement file in 0 directory.

I hope that help.

Maimouna
alirezahd likes this.
Maimouna is offline   Reply With Quote

Old   April 17, 2014, 08:19
Default
  #19
Senior Member
 
Joachim Herb
Join Date: Sep 2010
Posts: 650
Rep Power: 21
jherb is on a distinguished road
I think you are looking for "fluid solid interaction" simulations using OpenFOAM. Googling for it, here are some links I found:
http://www.cfd-online.com/Forums/ope...-openfoam.html
http://openfoam-extend.sourceforge.n...re_Interaction
http://training.uhem.itu.edu.tr/file...50927-file.pdf
http://www.personal.psu.edu/rlc138/r...ell_thesis.pdf

At them moment, it looks like it is not supported in standard OpenFOAM but in the extended project.
wyldckat likes this.
jherb is offline   Reply With Quote

Old   April 19, 2014, 09:06
Default
  #20
Member
 
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 12
Scabbard is on a distinguished road
Quote:
Originally Posted by jherb View Post
I think you are looking for "fluid solid interaction" simulations using OpenFOAM. Googling for it, here are some links I found:
http://www.cfd-online.com/Forums/ope...-openfoam.html
http://openfoam-extend.sourceforge.n...re_Interaction
http://training.uhem.itu.edu.tr/file...50927-file.pdf
http://www.personal.psu.edu/rlc138/r...ell_thesis.pdf

At them moment, it looks like it is not supported in standard OpenFOAM but in the extended project.
Thank you so much for your help.
Scabbard 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 18:47.