CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

[FSI] flexible pipe simulation (boundary condition)

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

Like Tree1Likes
  • 1 Post By Daniel_Khazaei

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 25, 2013, 15:26
Default [FSI] flexible pipe simulation (boundary condition)
  #1
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
Hello guys

I am working on simulation of flexible pipe using icoFsiElasticNonLinULSolidFoam solver.

I have some questions about boundary conditions in this simulation, any help would be appreciated.

1) I want the pipe to be deformed under the load of the flow (Not a prescribed oscillation), what kind of boundary condition should I use for the FSI interface:

this my current selection:

fluid/0/U: fixedValue with uniform (0 0 0)
solid/0/DU: zeroTraction

the main question is about boundary condition of FSI interface in 0/U, should I use movingWallVelocity instead?

2) what kind of boundary condition do you use for the boundary patch which is shown in the attachment and its counterpart on the other side?


regards
Attached Images
File Type: jpg Capture.jpg (65.4 KB, 84 views)
Daniel_Khazaei is offline   Reply With Quote

Old   September 29, 2013, 16:17
Default
  #2
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
any help?
Daniel_Khazaei is offline   Reply With Quote

Old   March 16, 2015, 02:00
Default
  #3
Senior Member
 
Join Date: Jan 2015
Posts: 150
Rep Power: 11
Svensen is on a distinguished road
The same question
Svensen is offline   Reply With Quote

Old   April 28, 2015, 05:47
Default icoFsiElasticNonLinULSolidFoam BCs
  #4
New Member
 
Join Date: Jan 2013
Posts: 7
Rep Power: 13
fa123 is on a distinguished road
i have basically the same setup.
Pipe with elastic walls which should deform according to the interaction with the fluid.
I used boundary conditions from HronTurek tutorial. But the BC in solid/0/DU for the outer wall of the pipe is causing problems.
When i use solidTraction BC for both the FSI interface (inner wall) and outer wall, it would give me:

Code:
--> FOAM Warning : 
    From function eigenValues(const tensor&)
    in file primitives/Tensor/tensor/tensor.C at line 170

When i use solidTraction BC for the FSI interface only, it is runnning but not physical, since the outer wall remains fixed.

solid/0/DU
Code:
    wall_inside   // FSI_interface
    {
        type            solidTraction;
        nonLinear       updatedLagrangian;
        traction        uniform ( 0 0 0 );
        pressure        uniform 0;
        value           uniform (0 0 0);
    }
    wall_outside   // outer wall of the pipe
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
Any ideas how to set the BC for the outer wall of the pipe?
fa123 is offline   Reply With Quote

Old   April 28, 2015, 06:18
Default
  #5
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
Quote:
Originally Posted by fa123 View Post
i have basically the same setup.
Pipe with elastic walls which should deform according to the interaction with the fluid.
I used boundary conditions from HronTurek tutorial. But the BC in solid/0/DU for the outer wall of the pipe is causing problems.
When i use solidTraction BC for both the FSI interface (inner wall) and outer wall, it would give me:

Code:
--> FOAM Warning : 
    From function eigenValues(const tensor&)
    in file primitives/Tensor/tensor/tensor.C at line 170
When i use solidTraction BC for the FSI interface only, it is runnning but not physical, since the outer wall remains fixed.

solid/0/DU
Code:
    wall_inside   // FSI_interface
    {
        type            solidTraction;
        nonLinear       updatedLagrangian;
        traction        uniform ( 0 0 0 );
        pressure        uniform 0;
        value           uniform (0 0 0);
    }
    wall_outside   // outer wall of the pipe
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
Any ideas how to set the BC for the outer wall of the pipe?
Use the same boundary condition for both inner and outer walls. (solidTraction)
Daniel_Khazaei is offline   Reply With Quote

Old   April 28, 2015, 07:44
Default
  #6
New Member
 
Join Date: Jan 2013
Posts: 7
Rep Power: 13
fa123 is on a distinguished road
Quote:
Originally Posted by Daniel_Khazaei View Post
Use the same boundary condition for both inner and outer walls. (solidTraction)

But then i get the error as described above:

Code:
--> FOAM Warning : 
    From function eigenValues(const tensor&)
    in file primitives/Tensor/tensor/tensor.C at line 170
fa123 is offline   Reply With Quote

Old   April 28, 2015, 07:54
Default
  #7
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
Quote:
Originally Posted by fa123 View Post
But then i get the error as described above:

Code:
--> FOAM Warning : 
    From function eigenValues(const tensor&)
    in file primitives/Tensor/tensor/tensor.C at line 170
Then I guess something else is wrong with your case.

If you are using OpenFOAM extend-3.1 and the new fluid-structure interaction solver which is included in extend-bazaar, you can see a 3dTube FSI test case there!
Daniel_Khazaei is offline   Reply With Quote

Old   April 29, 2015, 08:30
Default
  #8
New Member
 
Join Date: Jan 2013
Posts: 7
Rep Power: 13
fa123 is on a distinguished road
Thanks for the hint.
Unfortunately, there are some problems with compilation of the FSI package from extend-bazaar. I am using foam-extend-3.1.

Typing wmake libso fluidStructureInteraction gives:

Code:
...
stressModels/constitutiveModel/constitutiveModel.C: In constructor 'Foam::constitutiveModel::constitutiveModel(const volSymmTensorField&, const volVectorField&)':
stressModels/constitutiveModel/constitutiveModel.C:116:13: error: no matching function for call to 'Foam::IOReferencer<Foam::solidInterface>::IOReferencer(Foam::IOobject, Foam::solidInterface&)'
stressModels/constitutiveModel/constitutiveModel.C:116:13: note: candidates are:
In file included from /home/user/foam/foam-extend-3.1/src/foam/lnInclude/IOReferencer.H:139:0,
                 from stressModels/constitutiveModel/constitutiveModel.H:53,
                 from stressModels/constitutiveModel/constitutiveModel.C:27:
/home/user/foam/foam-extend-3.1/src/foam/lnInclude/IOReferencer.C:53:1: note: Foam::IOReferencer<Type>::IOReferencer(const Foam::IOobject&, Type*) [with Type = Foam::solidInterface; Foam::IOobject = Foam::IOobject]
/home/user/foam/foam-extend-3.1/src/foam/lnInclude/IOReferencer.C:53:1: note:   no known conversion for argument 2 from 'Foam::solidInterface' to 'Foam::solidInterface*'
/home/user/foam/foam-extend-3.1/src/foam/lnInclude/IOReferencer.C:31:1: note: Foam::IOReferencer<Type>::IOReferencer(const Foam::IOobject&) [with Type = Foam::solidInterface; Foam::IOobject = Foam::IOobject]
/home/user/foam/foam-extend-3.1/src/foam/lnInclude/IOReferencer.C:31:1: note:   candidate expects 1 argument, 2 provided
In file included from stressModels/constitutiveModel/constitutiveModel.H:53:0,
                 from stressModels/constitutiveModel/constitutiveModel.C:27:
/home/user/foam/foam-extend-3.1/src/foam/lnInclude/IOReferencer.H:85:7: note: Foam::IOReferencer<Foam::solidInterface>::IOReferencer(const Foam::IOReferencer<Foam::solidInterface>&)
/home/user/foam/foam-extend-3.1/src/foam/lnInclude/IOReferencer.H:85:7: note:   candidate expects 1 argument, 2 provided
make: *** [Make/linux64GccDPOpt/constitutiveModel.o] Error 1
make: *** Waiting for unfinished jobs...
Anyone else facing this problem?



Edit:
Work-around is to use the constitutiveModel.* files from the actual foam-extend installation.
Attached Files
File Type: c IOReferencer.C (3.4 KB, 5 views)
File Type: h IOReferencer.H (3.9 KB, 3 views)
File Type: c constitutiveModel.C (14.6 KB, 3 views)
File Type: h constitutiveModel.H (7.4 KB, 4 views)

Last edited by fa123; April 30, 2015 at 06:56.
fa123 is offline   Reply With Quote

Old   April 30, 2015, 16:30
Default
  #9
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
yes, you need to revert back to the older version of IOReferencer!
Daniel_Khazaei is offline   Reply With Quote

Old   September 5, 2015, 19:03
Default
  #10
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,980
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
For future reference:
Quote:
Originally Posted by wyldckat View Post
Greetings to all!

Instructions for properly building the Fluid-Structure Interaction toolkit with foam-extend 3.1 is now available here: http://openfoamwiki.net/index.php/Ex...oam-extend_3.1

I've also git'ified the source code: https://github.com/wyldckat/FluidStructureInteraction

Best regards,
Bruno
wyldckat is offline   Reply With Quote

Old   September 8, 2015, 11:37
Default
  #11
Senior Member
 
Join Date: Jan 2015
Posts: 150
Rep Power: 11
Svensen is on a distinguished road
Could anyone post a working example with an elastic FSI pipe ?? Please..
Svensen is offline   Reply With Quote

Old   January 26, 2016, 01:51
Default
  #12
Senior Member
 
Join Date: Jan 2015
Posts: 150
Rep Power: 11
Svensen is on a distinguished road
Can anyone post a working example with an elastic FSI pipe ?
Svensen is offline   Reply With Quote

Old   January 26, 2016, 17:39
Default
  #13
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
Quote:
Originally Posted by Svensen View Post
Can anyone post a working example with an elastic FSI pipe ?
OpenFOAM-3.1ext and later come with FSI library including 3 tutorials!
One of them is exactly what you need mate...
Daniel_Khazaei is offline   Reply With Quote

Old   January 27, 2016, 01:15
Default
  #14
Senior Member
 
Join Date: Jan 2015
Posts: 150
Rep Power: 11
Svensen is on a distinguished road
Not so easy ) Yes, you are right, there are some working tutorials in foam-extend-3.1, but the problem is when you change some parameters, like density or geometry, the solution explodes. For short, these examples are "working" if you change nothing, if you make some adjustments then they crash.

The example of this thing is here: http://www.cfd-online.com/Forums/ope...onditions.html

Your first post in this topic was about simulation of an elastic pipe using OpenFOAM. Do you get a working example of it ?
Svensen is offline   Reply With Quote

Old   January 27, 2016, 05:50
Default
  #15
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
Quote:
Originally Posted by Svensen View Post
Not so easy ) Yes, you are right, there are some working tutorials in foam-extend-3.1, but the problem is when you change some parameters, like density or geometry, the solution explodes. For short, these examples are "working" if you change nothing, if you make some adjustments then they crash.

The example of this thing is here: http://www.cfd-online.com/Forums/ope...onditions.html

Your first post in this topic was about simulation of an elastic pipe using OpenFOAM. Do you get a working example of it ?
Yes, the problem was due to the wrong selection of boundary conditions!

regarding the instability:
That is completely normal with FSI simulation when the coupling is strong between fluid and solid. When you change the material properties and make the coupling stronger, you need to tweak the case setting to get a stable simulation!

You can try:
- Lowering the starting relaxation factor on the interface
- Tightening the coupling by reducing the FSI interface residual
- reducing convergence criterion for pressure, velocity,....
Chanikya_Valeti likes this.
Daniel_Khazaei is offline   Reply With Quote

Old   January 29, 2016, 15:56
Default
  #16
Senior Member
 
Join Date: Jan 2015
Posts: 150
Rep Power: 11
Svensen is on a distinguished road
Quote:
Originally Posted by Daniel_Khazaei View Post
Yes, the problem was due to the wrong selection of boundary conditions!
can you post a correct boundary condition parameters. I have a back-reflection from my outlet boundary...
Svensen is offline   Reply With Quote

Old   May 5, 2016, 07:08
Default
  #17
New Member
 
Join Date: Mar 2014
Posts: 9
Rep Power: 12
Nikolac is on a distinguished road
I'm having very similar problems ... much help is apparently not being offered on these issues, so I'm just posting this to hopefully add information so somebody might figure it out at some point.

What I find striking is that divergence occurs even when nothing is happening at all, when everything should just be at rest. I want to simulate the interaction between a fluid and an elastic structure when the fluid is set in motion by a submerged deforming body. My simulation is just fine when I have only the fluid and use an adapted pimpleDyMFoam solver. For some reason it doesn't work in the fsi setting even when no coupling is present between fluid and solid (e.g. by commenting out the corresponding bits from the fsiFoam solver or by adjusting th fsiProperties dictionary). The solution diverges even when I set the motion of my body to zero, so nothing should move. Spurious and growing fluid velocities nevertheless occur at walls with the "movingWallVelocity" boundary condition, an effect I have not observed when simulating the fluid only. The cause of this appears to be in the fsi.moveFluidMesh() step, although I haven't yet figured out where. I furthermore don't understand why it happens for my geometry but not for example for the "3dTube" case ... the only difference I can see is in the geometry, not the BC etc..
Nikolac is offline   Reply With Quote

Reply

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
Domain Imbalance HMR CFX 5 October 10, 2016 05:57
Radiation interface hinca CFX 15 January 26, 2014 17:11
Constant Heat Flux Boundary Condition on Long Thin Pipe CGramlich SU2 3 April 22, 2013 08:25
Boundary condition setting regarding turbine simulation using CFX Lacerlacer CFX 11 March 12, 2012 09:32
asking for Boundary condition in FLUENT Destry FLUENT 0 July 27, 2010 00:55


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