Dynamic Mesh: No Remeshing Happening on Axis Boundaries

JD_JNJD_JN Member

Hello,

I have a 2D axisymmetric rectangular mesh with deforming zones on either sides of a rotating diaphragm as shown.

The bottom boundary is an axis and the problem is axisymmetric. I have enabled smoothing and remeshing.

The diaphragm motion is via a UDF - it checks out.

The issue is, when I define the bottom boundary as "axis" and axisymmetric 2D space, then remeshing does not happen for the axis and FLUENT throws a 'Dynamic Mesh Update Failed' error.

If I define the bottom boundary as "symmetry" with Planar 2D space, then remeshing happens without any issue, but the flow then does not move past the diaphragm as shown below.


The above image was taken midway during the course of diaphragm opening.


So then I had to revert to using axis boundary condition with axisymmetric 2D space.

I think FLUENT does not do remeshing on axis boundaries. If so, then how can I resolve this issue?


Would someone please help me on how to proceed with dynamic mesh in this case? I am out of ideas and I've been stuck with this for over a month now!!

«13

Comments

  • From your figure, I can not see meshes at all replacing the wall. Can you post a screen shot of your mesh at the lower position?

    Also how did you set the remeshing? what is the maximum length scale?

  • JD_JNJD_JN Member

    Hi @YasserSelima ,

    I've updated the mesh with fewer cells inside the dynamic mesh zones as shown below:


    These are my Dynamic Mesh Settings as shown :









    Diaphragm_1 (wall) is associated to the first dynamic mesh zone (left_interf_zone), while Diaphragm_2 (wall) is associated to the second (right_interf_zone).

    Kindly help. If FLUENT does not re-mesh on axis boundaries, how can I proceed with this?

  • JD_JNJD_JN Member

    I would also like to add that the diaphragm is of 0 thickness

  • kkanadekkanade Forum Coordinator

    Make sure you have mesh height set correctly close to the surface mesh size under Meshing Option for Rigid bodies.

    Regards,

    Keyur

    How to access Ansys Online Help Document

    How to show full resolution image

    Guidelines on the Student Community

    How to use Google to search within Ansys Student Community

  • YasserSelimaYasserSelima Member
    edited January 7

    I would like to add that the maximum length scale you are using is too large. I believe that 0.002 refers to the large rectangular mesh at the right/left. Not to the moving zone. Decrease this by an order of magnitude

  • JD_JNJD_JN Member

    Thank you for your kind responses @kkanade @YasserSelima !


    I tried both of your directives but sadly, neither of them helped.

  • JD_JNJD_JN Member

    These are the last couple of messages in the console during the preview mesh motion. At time step 256, the preview becomes stuck and does not proceed further.


  • Is it a remeshing problem, or the flow does not go beyond the diaphragm?

  • In my experience, the decision on when remeshing occurs seems quite indirectly controlled by the user settings, which means it can be frustrating to work with.

    If the mesh deformation works for a decent number of steps AND the motion is predictable, I have successfully used the following technique:-

    1. Create a mesh for every time 100 timesteps (say) in your favorite meshing package.
    2. Use dynamic meshing for the intervening 99 steps
    3. Write out an interpolation file at step 99
    4. Read in the new case for the meshed position at t=100
    5. Read in the interpolation file
    6. Repeat 2 to 5

     

     

     

  • Oh, I also see that your diaphragm is infinitely thin and has a tip. The tip is a discontinuity which fluent is not going to like at all. I suggest giving the diaphragm a thickness and a rounded tip. Have at least a few cells across the thickness.

    If you ultimately want to do FSI, making the diaphragm thicker than reality can be accounted for by adjusting the density and stiffness of the diaphragm material.

  • JD_JNJD_JN Member

    Hi @YasserSelima !

    The issue is a remeshing problem. When I use axis boundaries and an axisymmetric 2D space, FLUENT does not do remeshing on the axis boundaries.

    In an attempt to try to get around this, I tried changing the axis boundaries to symmetry, and changed the axisymmetric 2D space to planar. In this situation, remeshing happens but then the flow does not go beyond the diaphragm. This approach however is not correct as the model is axisymmetric.

    What I'm actually trying to do is to get FLUENT to do remeshing on the axis boundaries.

  • JD_JNJD_JN Member

    Thank you @danbence for your kind response.

    Using interpolation seems like a good idea, but in my case the time step is 2E-8 (it is a transient flow) and the number of time steps vary between 50000 - 62000 depending on the diaphragm pressure ratio.

    Moreover, I have to also repeat all the different cases according to the diaphragm pressure ratios with different fluids. Hence, taking that approach would not be feasible for me. 😔

  • JD_JNJD_JN Member

    @danbence I did not understand by what you meant by a "tip" in the diaphragm?

    The diaphragm is of 0 thickness and is modeled end-to-end in the mesh.

    Here is the geometry in ICEM:


  • JD_JNJD_JN Member

    @danbence

    I did try giving the diaphragm a thickness and by giving clearances around it in a single deforming dynamic zone, which solves the remeshing problem, but then it gives me a host of other modeling problems such as - the clearances above the diaphragm makes the flow obviously go around it, the dynamic zone overlaps between the high and low pressure zones making it not possible to have separate fluids before and after the diaphragm, and solution no longer getting converged.

  • From some of your previous images, it looked like the edge of your diaphragm (a line tip in 2D) was not connected to the top wall.

     

    I am not 100% clear about the scenario, but I think you have two situations

     

    1. Diaphragm is touching the top surface, which prevents flow from the high to low pressure zone
    2. Diaphragm is pushed away from the top surface by the pressure difference and fluid flows past the Diaphragm.

     

    You didn’t want to mesh down to the small (and real) gap between the Diaphragm and the wall, so you actually connected the diaphragm to the top wall. Having the Diaphragm connected or disconnected from the top wall is a topology change and is not possible with dynamic meshing.

     

    I believe all the Fluent demos of dynamic meshing preserve topology. Fluent does have the functionality of “events” which allow you to set up “if… then” logic. I have also read that contact detection is possible in fluent, but have not tried it myself.

     

    If you have sufficient computing resource, I think the simplest thing to do is give the diaphragm a thickness (and rounded edges), have a single dynamic zone and have the mesh resolve sufficiently small clearance that the viscosity of the fluid prevents significant flow though the gap.

     

    If you did intend to have a zero thickness wall with one end hanging in the fluid, fluent really can’t handle that.

     

  • JD_JNJD_JN Member

    Hi @danbence !

    The model that I have is axisymmetric, so I only model half of the full scale model.

    The diaphragm I have provided is of 0 thickness, and it touches the top surface (defined as wall) as well as the bottom surface (defined as axis).

    Due to the pressure difference between the high and low pressure zones, the diaphragm 'bursts' open and the flow happens.

    I am trying to model the bursting of the diaphragm. As it is axisymmetric, I am only considering half of the diaphragm's length which is shown in the images above.

    The bursting motion of the diaphragm is prescribed via a UDF, which gives the diaphragm an angular velocity rotating about a point - which is the top most point of the diaphragm that is touching the top surface (wall).

  • JD_JNJD_JN Member

    When previewing, I can see that the nodes on the axis move, and the nodes above the axis begin to remesh, but then they sort of join together with the nodes of the axis and the whole process stops altogether.

    Perhaps this gif will help see what is happening.

    I have made a gif file from when the flow reaches around 200 time steps. Please look at the nodes where the diaphragm touches the bottom surface (axis).




  • JD_JNJD_JN Member

    Apologies, it appears that the gif file is not animating in the site.

  • JD_JNJD_JN Member

    Update:

    The remeshing issue has partially been resolved. Instead of providing the dynamic zones as deforming, I gave the dynamic zones created by FLUENT (e.g.: int_dynamic_zone_1) , and then it started remeshing.

    However, in the midway of diaphragm motion, the dynamic mesh update fails with 'negative volume' error

  • Nice idea @danbence 

    @JD_JN Make a tiny wall with thickness of zero at the gab between the diaphragm and the wall. Then use events to change boundary type to interface when the diaphragm starts to move.

Sign In or Register to comment.