|
[Sponsors] |
[solids4Foam]solidDirectionMixed or fixedNormalDisplacement? |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
October 30, 2019, 06:18 |
[solids4Foam]solidDirectionMixed or fixedNormalDisplacement?
|
#1 |
New Member
Join Date: Nov 2018
Location: Japan
Posts: 17
Rep Power: 7 |
Hello everyone!
I am currently working on a fsi problem with solids4Foam and I have a small question about boundary conditions. I want to apply load on the solid patch but I want the solid to move towards only one direction. I thought I can do this with some sort of direction mixed boundary conditions and I found solidDirectionMixed and fixedNormalDisplacement. Problem here is that I do not know how to use these boundary conditions and the difference between them. I would be appreciate if someone could help me. |
|
October 30, 2019, 06:37 |
|
#2 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,089
Rep Power: 34 |
Hi,
For each Cartesian direction, it is possible to apply a force or displacement (not both). So what exactly do you wish to apply? e.g. force in normal direction, zero displacement in tangential direction , or zero displacement in normal direction, zero force in tangential directions. Philip |
|
October 30, 2019, 06:53 |
|
#3 |
New Member
Join Date: Nov 2018
Location: Japan
Posts: 17
Rep Power: 7 |
Hello,
I want to apply traction in y-direction but I want to constrain the movement of the solid body in x-direction as well. |
|
October 30, 2019, 07:53 |
|
#4 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,089
Rep Power: 34 |
||
October 31, 2019, 00:42 |
|
#5 |
New Member
Join Date: Nov 2018
Location: Japan
Posts: 17
Rep Power: 7 |
Hello Philip,
My case looks basically a journal bearing so normal vectors are pointing towards outside of the shaft. Force is applied on the end on the shaft. Is it possible to constrain the displacement or the rotation of the shaft? |
|
October 31, 2019, 05:41 |
|
#6 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,089
Rep Power: 34 |
What is the unit normal of the boundary where you want to apply the boundary condition? I can't advise without this information.
|
|
October 31, 2019, 07:07 |
|
#7 |
New Member
Join Date: Nov 2018
Location: Japan
Posts: 17
Rep Power: 7 |
Hello
I'm not quite sure if I understand your question correctly but here is the picture of the shaft inside the journal bearing. The blue part is where I wanna apply the force and the white part is the fluid-solid interface. Other parts are just solidTraction so that they deform freely. shaft.jpg |
|
October 31, 2019, 09:00 |
|
#8 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,089
Rep Power: 34 |
So just so I am clear, on the blue patch you want to apply a traction in the y direction and set the displacement to zero in the x direction; is that correct?
This can be done with a modified version of the fixedDisplacementZeroShear boundary condition: the valueFraction controls the "fixed" (displacement) direction and then you can set the displacement with refValue and traction iteratively via refGradient. |
|
October 31, 2019, 10:27 |
|
#9 |
New Member
Join Date: Nov 2018
Location: Japan
Posts: 17
Rep Power: 7 |
Thanks Philip! That is exactly what I wanted to know!
But what about solidDirectionMixed boundary condition and fixedNormalDisplacement? How are they different? |
|
November 1, 2019, 06:13 |
|
#10 |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,089
Rep Power: 34 |
solidDirectionMixed is the same as directionMixed except that solidDirectionMixed implements non-orthogonal correction.
fixedDisplacementZeroShear derives from solidDirectionMixed. It applies a user-specified vector displacement in the patch normal direction, where only the normal component of this vector is used; and it then applies zero force/traction in the patch tangential directions. fixedNormalDisplacement is the same as fixedDisplacementZeroShear, just a different implementation/implementor; I plan to remove it. I have just created a new boundary condition called displacementOrTraction, which I have pushed to the development branch. This boundary condition can act as displacement or traction or displacement in a direction or traction in a direction for each face, depending on how the valueFraction and specifyNormalDirection fields are set. You can achieve the behaviour you want with the following settings: Code:
patchName { type displacementOrTraction; constantTraction uniform (0 1e6 0); // or whatever you like constantDisplacement uniform (0 0 0); valueFraction uniform (1 0 0 0 0 0); // X direction is displacement, Y and Z are traction } It is available now on the development branch, which I will merge with the master once I have performed the usual checks. Philip |
|
November 11, 2019, 09:01 |
|
#11 |
New Member
Join Date: Nov 2018
Location: Japan
Posts: 17
Rep Power: 7 |
Hello Philip!
Sorry for being late to reply but I just checked your boundary condition worked just like what I wanted! Thank you very much! |
|
September 9, 2021, 00:42 |
|
#12 |
Member
Francisco T
Join Date: Nov 2011
Location: Melbourne, Australia
Posts: 64
Blog Entries: 1
Rep Power: 14 |
Hi Phillip
I have a probably related question. I would like to restrict the movement of a boundary to only +y (assuming at t=0, y = 0) This is because at y- in real life, there is another surface (contact). But I dont want to model the contact. Maybe I dont have another option but modelling the contact, and hence include friction, right? Cheers Fran |
|
|
|