2 way fsi remeshing does not work

    • sebastian_w

      Hi, I am trying to simulate a 2 way fsi for a research project at my university.


      There is a balloon made out of a hyperelastic material filled with silicon oil at a pressure of about 15.000 Pa. In the inflated state the balloon is supposed to block the fluid flow through the outer pipe. The balloon itself is held by three rings (one on the left, one in the middle and one on the right). The geometry is rotationally symmetrical and therefore I only took a slice of 1/128 for my mechanical simulation as well as the fluent simulation. In Fluent I am using rotationally periodic boundaries which I set up via TUI to accomplish this (only one side of the periodic boundary remains as "periodic", the other side gets deleted). In the meshing I took care to use match control so that the mesh is the same on both faces where I apply the periodic boundaries.


      Before setting up the FSI, I tested the mechanical part and the fluent part individually. For mechanical, I put an internal pressure into the balloon to set up this part. I figured out what settings I need to deal with the large deformations of the balloon as well as the contact settings etc. and everything is working as it should on this side. I did the same thing with the fluent part by running the simulation with the boundary conditions I plan to use - just without the motion of the balloon wall. On this side, I also got everything to a point where it was working fine and I got the desired outcome. The pressure inside the ballooon is linearly ramped up via an expression over the course of the 1s duration of my transient simulation (from a starting point of 500 Pa up to 15.000 Pa).


      Then I went on to combine these pre-tested parts with System coupling. After setting up the FSI and doing some tweaking, I am now able to inflate the balloon to about 11.000 Pa. But at some point I always get the "negative cell volume error" in the fluent solver because either the fluid-cells next to the rings get squished by the inflating balloon or the cells towards the outside pipe (as you can clearly see from the pictures).


      Here you can see the initial mesh, a side view of the slice and the distorted mesh at the point where the simulation fails: 


      (With different smoothing and/or timestep settings I can get it a bit further, but the general issue remains the same)



      To overcome the problem of the highly distorted cells and negative cell volumes I want to perform remeshing and smoothing on the fluid volume outside of the balloon which flows through the pipe. The smoothing of the mesh seems to work and I can clearly see the effects of the different methods/settings that I can use here. However, despite trying all kinds of settings for now two weeks straight I could never see the remeshing work when I render the mesh motion at the timesteps in CFD Post after the calculation has failed again.

      I have already tried nearly all combinations of settings for the remeshing (for methods based as well as unified remeshing) and for the dynamic mesh zones and went through all of the forum posts I could find and tried out the things suggested there.  For smoothing, diffusion based smoothing with a diffusion parameter of 0 brought out the best results until now. However, in the Fluent help I read that it might be incompatible with region face remeshing (which i also want to use) - therefore I went with spring based smoothing and a spring constant of 0.1 for the moment. This also works just fine.


      Here are my dynamic mesh settings in detail:

      General settings:


      System coupling faces:


      The faces adjacent to the Fluid-Structure-Interface were set as deforming:

      (here I have the issue that Fluent interchanges the values for min and max length scale in the local remeshing settings for the outer fluid domain and draws a red box around them as soon as I close and open Fluent again; I have read about that in another post but there was no solution for that)


      Implicit update + contact detection:

       I am also planning on using [B]contact detection[/B] to model the closure of the balloon against the wall. Therefore I have set a contact offset in mechanical (and also checked that it works) and put the same value into the "contact detection" setting in Fluent.

      (however, the values for the implicit update seem to get overwritten by system coupling somehow); Leaving the Implicit update or contact detection out didn't seem to change anything.




      What I also noticed (as you can see in the first picture at the top right) is that my mesh does not stay in a plane on the periodic boundaries - maybe because I have set these faces to the type "deforming" and the geometry definition to "faceted" and not "plane". But whenever I tried plane and set a point of the face and the normal vector, I got an error about "projection out of reasonable limits" when trying to solve, so I left it as faceted until now.


      The mesh quality is not that great - especially in the lower region with hex mesh which gets very sharp to the bottom. But this region does not seem to be the problem. As you can see I used a Tet mesh for the upper part for the remeshing to work.


      So my problem is that I really have to get the remeshing to work, because otherwise I will probably not come any further in my simulation. I would be very happy for any ideas on what I could have done wrong in my dynamic mesh/remeshing settings (or anywhere else). Maybe it is something really simple that I overlooked until now that is causing my remeshing not to be triggered. As this is my first project with Ansys/ FEM in general, I might have overlooked something.


      Here is some general info on my analysis settings:

      Mechanical: 1 substep

      Fluent: Max. 500 iterations per time step

      Both: Transient

      System coupling: 0,01 s timestep; 1s duration; max 15 coupling iterations per step


      My current Ansys Version is 2022 R1


      Thanks you very much for your help! 😀

    • RM
      Ansys Employee


      As you are new to Ansys, I recommend going over this tutorial in the Ansys documentation that shows a 2-way FSI simulation with Fluent and Mechanical. https://ansyshelp.ansys.com/account/secured?returnurl=/Views/Secured/corp/v221/en/sysc_tut/sysc_tut_reedvalve_fluent.html

      In remeshing tab,

      A good starting point for the length scales are 0.4Lmin, 1.4Lmax.

      Decreas maximum skewness from its default value. Keeping remshing interval low (if kept high will cause negative cell volume detected error)

      Also, try to improve the quality of initial mesh

    • sebastian_w

      Many thanks for your reply!

      I already went through the basic tutorials.

      After further trial and error I was now finally able to see the remeshing work, but only when I remove the periodic boundaries and the "Match control" in the meshing for both sides of the periodic domain. Also I removed the lower domain (with the hex mesh) for now - so this part could also be the source of the problem.


      So it seems like the periodic boundaries with conformal mesh might be causing the trouble in my case. However, I could not read anywhere in the documentation that remeshing with periodic boundaries is not supported. Unfortunately I need the periodic boundaries and cannot compute the whole domain because of low computational resources. I might try with non-conformal mesh on the periodic boundaries and see if this allows the remeshing.

      Did I maybe miss something and remeshing is not compatible at all with periodic boundaries?



    • RM
      Ansys Employee


      There is no such limitation with periodic boundary.

      Do you impose a stationary condition for the boundary define as periodic?
      I'll suggest you to refine remeshing inputs. 

Viewing 3 reply threads
  • You must be logged in to reply to this topic.