|
[Sponsors] |
January 24, 2022, 11:58 |
|
#641 | |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,097
Rep Power: 34 |
Quote:
I suggest you try solids4foam (https://bitbucket.org/philip_cardiff...se/src/master/) instead as the extend-bazaar code was integrated into it and the extend-bazaar code is no longer actively supported. |
||
January 25, 2022, 12:27 |
|
#642 | |
Member
Join Date: Mar 2020
Posts: 66
Rep Power: 6 |
Quote:
|
||
February 4, 2022, 13:09 |
new Boundary condition and post-processing
|
#643 |
Member
Join Date: Mar 2020
Posts: 66
Rep Power: 6 |
Hi,
I have to solve some problems for an FSI simulation with solids4foam. 1) how can I create a new boundary condition for the fluid region? Is there such a thing as OpenFoam's codedFixedValue? 2) for the postProcess I need the WallShearStress, Q, yPlus, turbulence intensity. How can I get them? 3) is there a functions to insert in controlDict to calculate the average flow rate and pressure at the outlets? Thank you |
|
February 5, 2022, 02:16 |
|
#644 |
New Member
Please select...
Join Date: Jan 2022
Posts: 2
Rep Power: 0 |
I recently started working on a project related to FSI of flexible wings. I am using turekHron fsi case from solids4foam. Since for flexible wing, atmospheric conditions are needed. Thus I have changed few boundary conditions in U and p files.
But as soon as change the fluid properties to air (rho-1.23, nu 1.47e-5) and solid material properties of polyethylene foam (rho 33, poisson ratio 0.2, E=8.49e+5) keeping freestream conditions the solution crashes after 2 seconds. Is there anything else I need to consider to look at changing along with these properties that leads to smooth run, since this doesn't seem to a bug? Enclosed: log file: https://drive.google.com/file/d/1wiC...ew?usp=sharing |
|
February 8, 2022, 06:55 |
|
#645 | |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,097
Rep Power: 34 |
Quote:
|
||
February 8, 2022, 07:53 |
PointMotionU+unsNonLinearGeometryTot and clarification on the tutorial documentation
|
#646 |
Member
Join Date: Mar 2020
Posts: 66
Rep Power: 6 |
Hi everyone,
I am doing an FSI analysis with solids4Foam of a deformable tube (hyperelastic model). I want the movements on the wall. I used unsNonLinearGeometryTotalLagrangian as solidModel, so I need to understand how it works PointMotionU for both fluid and solid region. I have already performed a simulation by placing fixedValue for all contours. But I'm not sure I got what I want. I read in the tutorials documentation that "some of the solidsModel use a non-moving mesh formulation so, by default, some models may not move at all when show in paraview". What are these solidsModel? Last edited by Neb; February 8, 2022 at 10:15. |
|
February 11, 2022, 10:23 |
|
#647 | |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,097
Rep Power: 34 |
Quote:
As regards pointMotionU, it doesn't exist for the solid, and for the fluid you just need to set the interface type to fixedValue and this value gets updated by the FSI procedure (ideally this should be a boundary condition but this is the way it is done for now). The rest of the boundary conditions for the fluid can be set whatever way you like, just like using dynamic mesh in a fluid only case. |
||
February 14, 2022, 13:34 |
|
#648 | |
Member
Join Date: Mar 2020
Posts: 66
Rep Power: 6 |
Quote:
Last edited by Neb; February 15, 2022 at 05:22. |
||
February 18, 2022, 09:18 |
|
#649 |
Member
Merlin Williams
Join Date: Nov 2021
Posts: 71
Rep Power: 5 |
Hello everyone,
I am in the process of trying to build an FSI simulation to simulate blood flow in an intracranial aneurysm I have a working CFD simulation and am now trying to get a working CSD simulation before I progress onto the full FSI to test my mesh for the solid domain. However, I cannot get a working CSD simulation to work on my mesh. I started from the pressureisedCylinder fe40 tutorial and have only changed the mesh from the one from the tutorial to the one I am using (attached to this post) and changed the boundary conditions to match the patches for my mesh. I havent changed anything in the fvSolution, fcScheme or controlDict and have only. But the simulation isnt converging. The output is shown below: Code:
Selecting physicsModel solid Selecting solidModel linearGeometryTotalDisplacement Selecting dynamicFvMesh staticFvMesh Creating fixedDisplacement boundary condition Creating solidTraction boundary condition pressure is time-varying limiter coefficient: 1 Creating solidTraction boundary condition limiter coefficient: 1 under-relaxation method: fixed Creating the mechanicalModel Selecting mechanical law linearElastic Creating pointHistory function object. History point ID: 10664 History point coordinates: (-0.0422648 -0.056142 -0.539776) Reference point coordinates: (7 0 0) Time = 10 Evolving solid solver Solving the momentum equation for D setCellDisplacements: reading cellDisplacements Corr, res, relRes, matRes, iters 100, 0.96642, 1.85082, 0, 5 200, 0.99709, 1.82295, 0, 5 300, 0.997185, 1.8237, 0, 5 400, 0.997039, 1.82484, 0, 5 500, 0.996978, 1.82504, 0, 5 600, 0.997064, 1.82414, 0, 5 700, 0.997169, 1.82328, 0, 5 800, 0.997197, 1.82361, 0, 5 900, 0.997057, 1.82473, 0, 5 1000, 0.996976, 1.82508, 0, 5 1100, 0.997054, 1.82428, 0, 5 1200, 0.997158, 1.82331, 0, 5 1300, 0.997205, 1.82352, 0, 5 1400, 0.997075, 1.82461, 0, 5 1500, 0.996976, 1.82511, 0, 5 1600, 0.997047, 1.82442, 0, 5 1700, 0.997146, 1.82336, 0, 5 1800, 0.997211, 1.82344, 0, 5 1900, 0.997093, 1.82449, 0, 5 Floating point exception |
|
February 18, 2022, 11:00 |
|
#650 | |
New Member
Iago Lessa de Oliveira
Join Date: May 2015
Posts: 23
Rep Power: 11 |
Quote:
Iago |
||
February 18, 2022, 13:39 |
|
#651 |
Member
Merlin Williams
Join Date: Nov 2021
Posts: 71
Rep Power: 5 |
The output of checkMesh is below and it doesnt seem too bad i thought:
Code:
Overall number of cells of each type: hexahedra: 7004 prisms: 20 wedges: 0 pyramids: 0 tet wedges: 0 tetrahedra: 0 polyhedra: 28 Checking topology... Boundary definition OK. Point usage OK. Upper triangular ordering OK. Face vertices OK. Number of regions: 1 (OK). Checking patch topology for multiply connected surfaces ... Patch Faces Points Area [m^2] Surface topology solidEnds 148 222 8.2858e-06 ok (non-closed singly connected) fluidInterface 3526 3566 0.000360889 ok (non-closed singly connected) outerSolidFace 3526 3566 0.000429082 ok (non-closed singly connected) Checking geometry... This is a 3-D mesh Overall domain bounding box (-0.0526934 -0.0692914 -0.550554) (-0.0422648 -0.0550044 -0.532973) Mesh (non-empty, non-wedge) directions (1 1 1) Mesh (non-empty) directions (1 1 1) Mesh (non-empty, non-wedge) dimensions 3 Boundary openness (-8.6567e-18 2.50292e-17 -3.33004e-17) Threshold = 1e-06 OK. Max cell openness = 2.31715e-16 OK. Max aspect ratio = 4.43331 OK. Minumum face area = 7.2672e-09. Maximum face area = 4.09604e-07. Face area magnitudes OK. Min volume = 1.27823e-12. Max volume = 5.71463e-11. Total volume = 1.25617e-07. Cell volumes OK. Mesh non-orthogonality Max: 59.9269 average: 11.5378 Threshold = 70 Non-orthogonality check OK. Face pyramids OK. Max skewness = 1.09335 OK. I extruded the outer surface which was one single patch to get the wall mesh. The relaxation factor in fvSolution which I am using is 0.9 for fields "D|DD" and I'm not using one for the equations. |
|
February 18, 2022, 13:44 |
|
#652 |
Member
Merlin Williams
Join Date: Nov 2021
Posts: 71
Rep Power: 5 |
Also what is the purpose of the point history function that is written as reference point coordinates in the initial output from running the solver?
|
|
February 22, 2022, 11:57 |
|
#653 | |
New Member
Iago Lessa de Oliveira
Join Date: May 2015
Posts: 23
Rep Power: 11 |
Quote:
Apart from that, there are several other factor that may affect your solution. To try to get a first converging case, I would also recommend you use a larger elastic modulus (so you get smaller deformations) and change the inner pressure BC (it may be too high depending on the tutorial you extracted the case from). Try to directly use some realistic values for this pressure considering the human cardiac cyle, like an average of 100 mmHg. Also, check the Poisson ratio you are using. If trying to achieve the incompressible behavior (with nu -> 0.5) then the solution may take a lot of iterations to converge, if it converges at all. Try something smaller at first, eg nu between 0.45 and 0.48, it may give some more reasonable computational times. And activate the solution of the pressure diffusion equation in s4f, that helps to quells any oscillations in the solution. Finally, and related to the pressure oscillations problem that may cause the divergence you are getting, I suggest you to use triangular prismatic cells in the wall, instead of hexahedral ones. Apparently, pressure oscillations are more prone to occur in quadrilateral meshes than in triangular ones (for the 2D case) when using displacement-based solvers with the Finite Volume Method (check this paper "Wheel MA. A mixed finite volume formulation for determining the small strain deformation of incompressible materials. International Journal for Numerical Methods in Engineering. 1999;44:1843–61"). Briefly, I was using hexahedral meshes, like yours, and once changed to triangular ones, several cases that were stubbornly diverging, due to the pressure oscillations in small regions, finally worked. Hope this helps! Iago |
||
February 22, 2022, 13:10 |
|
#654 | |
Member
Merlin Williams
Join Date: Nov 2021
Posts: 71
Rep Power: 5 |
Quote:
I was unaware of the effect that poissons ratio could have but I was already using a value of 0.45 for relaxation factor but I have now tried a simulation with a relaxation factor of 0.6 for D|DD, an elastic modulus of 1.6e+12 and realistic pressure ranging from 0 to 16000Pa in 5 seconds. It converged much better with the relaxation factor of 0.6, now only taking around 2200 corrector steps. I had assumed 0.1 would give the best convergence but obviously not as that was taking around 18000 corrector steps and barely converging. Code:
Time = 5 Evolving solid solver Solving the momentum equation for D Corr, res, relRes, matRes, iters 100, 0.000824979, 0.00622766, 0, 8 200, 0.000558005, 0.00313425, 0, 7 300, 0.00041514, 0.00202222, 0, 10 400, 0.000324802, 0.00140024, 0, 16 500, 0.000263683, 0.00101591, 0, 16 600, 0.000219222, 0.000774099, 0, 16 700, 0.000186184, 0.000595204, 0, 16 800, 0.000160003, 0.00047062, 0, 17 900, 0.000137416, 0.000387662, 0, 17 1000, 0.00012029, 0.000345773, 0, 18 1100, 0.000107792, 0.000299383, 0, 18 1200, 9.00661e-05, 0.000248215, 0, 16 1300, 7.49945e-05, 0.000209708, 0, 15 1400, 5.95477e-05, 0.000163253, 0, 6 1500, 4.39609e-05, 0.000201844, 0, 1 1600, 4.15789e-05, 6.73362e-05, 0, 5 1700, 3.46355e-05, 0.000170922, 0, 1 1800, 2.54326e-05, 0.000118597, 0, 5 1900, 2.14851e-05, 0.000183497, 0, 1 2000, 1.84945e-05, 6.22462e-06, 0, 1 2100, 2.28104e-05, 6.42462e-06, 0, 1 2200, 1.02707e-05, 6.42421e-05, 0, 3 The relative residual has converged 2216, 9.8153e-06, 0, 0, 0 Max epsilonEq = 3.88914e-07 Max sigmaEq (von Mises stress) = 643720 ExecutionTime = 212.19 s ClockTime = 214 s That is very interesting about the tet mesh and its effects and I will give that a go but it will take slightly longer. Thank you very much for your help and I will hopefully reply soon with the result of the tetrahedral mesh |
||
February 22, 2022, 13:47 |
|
#655 |
Member
Merlin Williams
Join Date: Nov 2021
Posts: 71
Rep Power: 5 |
Do you know of a method that would be able to create a tetrahedral mesh for the solid domain and make sure that it is coherant with the fluid domain given that the fluid domain was created on cfMesh?
Merlin |
|
February 22, 2022, 15:02 |
|
#656 | |
Member
Mike Tree
Join Date: Feb 2016
Location: Charlotte, NC
Posts: 37
Rep Power: 10 |
Quote:
What do you mean by "coherant"? If you mean that the meshes must share nodes at the fluid-solid interface, then I don't know of any method that you can use outside of a commercial meshing program. I struggled with this as well, and didn't have the extra requirement of my meshes be entirely tets. I ended up using multi-region meshing workflows for snappyHexMesh, but that doesn't really help you because it will create hexes instead of tets. I know it can be done in Pointwise, but that's a commercial code. |
||
February 23, 2022, 05:15 |
|
#657 | |
Member
Merlin Williams
Join Date: Nov 2021
Posts: 71
Rep Power: 5 |
Quote:
Ok thank you for confirming that about specifying the pressure. Although which pressure does solids4Foam use, kinematic or absolute? And yes sorry I did mean that they must share nodes. Ok I'm not completely against commercial meshers as through my university I have access to pointwise, and I can get access to the Ansys student software. So you think adding a tetrahedral solid domain to an already created hexahedral mesh of the fluid domain is possible in pointwise? Thank you, Merlin |
||
February 23, 2022, 06:49 |
|
#658 | ||
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,097
Rep Power: 34 |
Quote:
Like in OpenFOAM, some fluid solvers (fluid models) uses kinematic pressure (incompressible ones) and some use pressure in Pascals. For the solid models in solids4foam they all use pressure in Pascals. The FSI coupling procedure will convert the fluid kinematic pressure to pressure when transferring to the solid, if needed. Quote:
|
|||
February 23, 2022, 07:21 |
|
#659 | |
Member
Merlin Williams
Join Date: Nov 2021
Posts: 71
Rep Power: 5 |
Quote:
Sorry, I meant for the fluid domain which pressure does solids4Foam use. So for example, adapting the 3dTube case, which pressure should be used in the BC? That meshing workflow is what I am currently using but is it possible to specify the element types using extrudeMesh? As I wanted to try create the solid domain using tetrahedral elements because of what Iago said that it can help pressure oscillations. |
||
February 23, 2022, 07:45 |
|
#660 | |
Super Moderator
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,097
Rep Power: 34 |
Quote:
In the solids4foam/tutorials/fluidSolidInteraction/3dTube/3dTube case, icoFluid (i.e. icoFoam approach) is used, so "p" is kinematic pressure. You can check this for any case by examining the dimensions of the p field in the 0 directory. I believe Iago was suggesting to use triangular prisms for the solid, i.e. if the fluid interface has triangles then the extruded mesh will be triangular prisms. extrudeMesh just extrudes the patch 2-D cells so it does not have any control over the type of cells created; it just creates extruded layers of a surface mesh. |
||
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
GPU Linear Solvers for OpenFOAM | gocarts | OpenFOAM Announcements from Other Sources | 37 | August 17, 2022 15:22 |
[Virtualization] OpenFOAM oriented tutorial on using VMware Player - support thread | wyldckat | OpenFOAM Installation | 2 | July 11, 2012 17:01 |
New OpenFOAM Forum Structure | jola | OpenFOAM | 2 | October 19, 2011 07:55 |
Cross-compiling OpenFOAM 1.7.0 on Linux for Windows 32 and 64bits with Mingw-w64 | wyldckat | OpenFOAM Announcements from Other Sources | 3 | September 8, 2010 07:25 |
OpenFOAM Debian packaging current status problems and TODOs | oseen | OpenFOAM Installation | 9 | August 26, 2007 14:50 |