Fluids

Fluids

Topics related to Fluent, CFX, Turbogrid and more.

Dynamic Mesh: No Remeshing Happening on Axis Boundaries

    • JD_JN
      Subscriber

      Hello,

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

    • YasserSelima
      Subscriber
      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?nAlso how did you set the remeshing? what is the maximum length scale?n
    • JD_JN
      Subscriber
      nI've updated the mesh with fewer cells inside the dynamic mesh zones as shown below:nnThese are my Dynamic Mesh Settings as shown :nnnnnnnnnnnnnnDiaphragm_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).nKindly help. If FLUENT does not re-mesh on axis boundaries, how can I proceed with this?n
    • JD_JN
      Subscriber
      I would also like to add that the diaphragm is of 0 thicknessn
    • Keyur Kanade
      Ansys Employee
      Make sure you have mesh height set correctly close to the surface mesh size under Meshing Option for Rigid bodies. nRegards,nKeyurnHow to access Ansys Online Help DocumentnHow to show full resolution imagenGuidelines on the Student CommunitynHow to use Google to search within Ansys Student Communityn
    • YasserSelima
      Subscriber
      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 magnituden
    • JD_JN
      Subscriber
      Thank you for your kind responses!nnI tried both of your directives but sadly, neither of them helped.n
    • JD_JN
      Subscriber
      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.n n
    • YasserSelima
      Subscriber
      Is it a remeshing problem, or the flow does not go beyond the diaphragm? n
    • danbence
      Subscriber
      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.nIf the mesh deformation works for a decent number of steps AND the motion is predictable, I have successfully used the following technique:-nCreate a mesh for every time 100 timesteps (say) in your favorite meshing package.nUse dynamic meshing for the intervening 99 stepsnWrite out an interpolation file at step 99nRead in the new case for the meshed position at t=100nRead in the interpolation filenRepeat 2 to 5n n n n
    • danbence
      Subscriber
      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.nIf 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.n
    • JD_JN
      Subscriber
      !nThe issue is a remeshing problem. When I use axis boundaries and an axisymmetric 2D space, FLUENT does not do remeshing on the axis boundaries.nIn 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.nWhat I'm actually trying to do is to get FLUENT to do remeshing on the axis boundaries.n
    • JD_JN
      Subscriber
      Thank you for your kind response.nUsing 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. nMoreover, 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. n
    • JD_JN
      Subscriber
      ArrayI did not understand by what you meant by a tip in the diaphragm?nThe diaphragm is of 0 thickness and is modeled end-to-end in the mesh. nHere is the geometry in ICEM:nn
    • JD_JN
      Subscriber
      nI 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.n
    • danbence
      Subscriber
      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.n nI am not 100% clear about the scenario, but I think you have two situationsn nDiaphragm is touching the top surface, which prevents flow from the high to low pressure zonenDiaphragm is pushed away from the top surface by the pressure difference and fluid flows past the Diaphragm.n nYou 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.n nI 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.n nIf 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.n nIf you did intend to have a zero thickness wall with one end hanging in the fluid, fluent really can?t handle that.n n
    • JD_JN
      Subscriber
      !nThe model that I have is axisymmetric, so I only model half of the full scale model.nThe 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). nDue to the pressure difference between the high and low pressure zones, the diaphragm 'bursts' open and the flow happens.nI 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.nThe 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).n
    • JD_JN
      Subscriber
      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. nPerhaps this gif will help see what is happening.nI 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).n
    • JD_JN
      Subscriber
      Apologies, it appears that the gif file is not animating in the site.n
    • JD_JN
      Subscriber
      Update:nThe 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.nHowever, in the midway of diaphragm motion, the dynamic mesh update fails with 'negative volume' errorn
    • YasserSelima
      Subscriber
      Nice idea @danbence nMake 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. n
    • JD_JN
      Subscriber
      Thank you for that suggestion!nnI've made a small wall of zero thickness close to the diaphragm and wall, and then changed its type to interface when the diaphragm motion starts.nThis has stopped the axis from deforming, but the negative cell volume detected error persists.n I tried reducing the time step from 2E-8 to 1E-8 (any further decrease is not feasible), however the error remains.nThe negative volume occurs in 1 cell, and then the dynamic mesh update fails.nnnn
    • JD_JN
      Subscriber
      correction: I made small wall of zero thickness close to the diaphragm and *axis (bottom boundary) n
    • danbence
      Subscriber
      If you try the zero thickness wall than gets changed to be an interface, you will STILL need the diaphragm to have a thickness and be rounded. Otherwise, as soon as you change it from wall to interface, there will be a discontinuity at the edge of the diaphragm.n nAlso a useful hint for anyone doing dynamic meshing. Don’t wait for fluent to throw an error of negative cell volume. It is likely the simulation has got into trouble long before that. Whenever doing dynamic meshing, create report of the min orthogonal quality for the volume (3d) or area (2d) and tick the plot tick box so you can see the quality during the solve process. If the quality reduces below 0.05, stop the sim and fix the model. This tip would have saved me many hours of wasted simulation time n nWhat *MIGHT* be happening with your simulation is that it does not look like fluent is remeshing because fluent does not change the mesh if the newly created mesh is no better than before in terms of its quality metric. If the original mesh is very poor, fluent *MIGHT* reject all its attempts at improvementsn
    • JD_JN
      Subscriber
      ! Thank you so much for your kind response.nAs you can see in the below image, I've already tried that. Doing as you suggested definitely clears off the improper remeshing problem (negative volume error).nHowever I also have to provide different fluids in the high pressure and low pressure regions as marked in figure.nnnAs the single deforming zone overlaps between the High pressure and Low pressure regions, how do I then provide 2 different fluids in one cell zone (i.e. in the single deforming zone) ? I tried searching for answers, however I couldn't find any. That is why I tried with the 0 thickness diaphragm.nThank you in advance.n
    • danbence
      Subscriber
      I can;t advise on multiple fluid types. If they are the same fluid type at different pressure, you can use patch with registersnnArray
    • YasserSelima
      Subscriber
      I agree with don't use different fluids if they are same fluid. If you do, Fluent will continue calculating void fraction of each in every cell.n
    • JD_JN
      Subscriber
      Thank you for your kind response!nI have to use one type of fluid in the high pressure region and another different fluid in the low pressure region. nIf it were a single fluid, I can simply patch the pressure and temperature as rightly said. nHowever as I have to use 2 different kinds of fluids in the 2 regions, hence the difficulty in implementing a single deforming zone.n
    • YasserSelima
      Subscriber
      can you divide this cell into two? or even assume it is occupied by the higher pressure fluid? n
    • danbence
      Subscriber
      I have never tried multi-phase simulations, but it does look like you can patch a single zone with multiple fluidsnhttps://www.youtube.com/watch?v=w71rXDRvWZsnlook at about 4 mins in.n
    • JD_JN
      Subscriber
      Yes I had tried doing that with VOF, however the VOF model only works with pressure based solver and not density based. As the flow here is unsteady, and also as there are flow discontinuities (shock formation), the scheme I use is a density based explicit solver.nHence I cannot use the VOF model to try and patch different fluids into the single deforming zone.n
    • JD_JN
      Subscriber
      ArrayI suppose I'll try giving it a shot using the separate zones in FLUENT by adaption of region. Is that what you had in mind?n
    • JD_JN
      Subscriber
      Array I did separation of the dynamic zone by region in FLUENT settings as you can see here:nnnI'm in a fix! Arraynn
    • YasserSelima
      Subscriber
      LOLnconsider this cell in the high pressure zone. hopefully this worksn
    • danbence
      Subscriber
      I think you need advice from someone with experience in multi-phase flows.nProbably not what you want to hear, but the software Converge CFD looks interesting. It deals with complex moving geometries, FSI, multiphase and claims to deal with meshing automatically.n
    • JD_JN
      Subscriber
      Thank you for the suggestion!nI'm sticking with FLUENT for now, as I have no time to start looking into other CFD packages. nI'm wondering whether 'overset meshing' is required for this overlapping of one zone over the other problem - something which I have no experience in.n
    • JD_JN
      Subscriber
      Array Pardon me, but I did not understand by what you meant.nI tried splitting the dynamic zone by both high pressure region and low pressure region, and in both cases either one of the splits of the dynamic mesh zone goes missing when I try to view the contours of pressure, temperature etc..n
    • YasserSelima
      Subscriber
      I meant that if you are going to have flow from high to low pressure when the diaphragm check out, Why don't you treat this cell before separating zones as part of the high pressure region?.
    • JD_JN
      Subscriber
      Yes, the left half of the deforming cell zone is part of the high pressure region, and the right half of the deforming cell zone is part of the low pressure region.nThat's how I tried to separate the deforming zone by region.n
    • danbence
      Subscriber
      It seems like your road block is initializing the system. If the multi-phase model you have chosen does not allow patching of different fluids in one zone (seems strange), then I suggest trying:-nbuild the domain with separate zones for the two fluids.nIn the gap between the diaphragm and the top/bottom walls, place a 0 thickness wallnInitialize the separate zones with the two fluidsnRemove the 0 thickness walls separating the two fluids nRemoving these separating walls by turning them into the ?interface? type, or even use the ?merge zones? command. I have not tried this myself.n n
    • YasserSelima
      Subscriber
      Adding to comment, And you don't have to make a round tip ... Make the tip as a line and the gab as two cells, one from each zone. After changing the type to interface, the two zones should be connected and deforming. n
    • JD_JN
      Subscriber
      Thank you very much for the suggestion!nI have one question though - wouldn't trying to create 2 zones with the finite thickness diaphragm in the middle, and creating a 0 thickness wall at the gap between the 2 zones cause problems in blocking?nI mean, when we have 2 zones instead of one, the diaphragm will no longer be a single part, instead the left side of it will have to be associated with the left dynamic (deforming) zone and the right part of it would have to be associated with the the right dynamic (deforming) zone.nWouldn't that be a problem?nAlso, it's not that I cannot patch separate fluids in multi-phase model onto one zone, it's that the scheme that I'm using is not available in the pressure based solver which is required for the multi-phase model. The scheme that I'm using is available only for the density based solver, which the multi-phase VOF model isn't compatible with.n
    • JD_JN
      Subscriber
      Do you have any method to solve the blocking problem that I mentioned to ? n
    • YasserSelima
      Subscriber
      No issue with the dynamic zone thing. Fluent will remesh all the adjacent zones. nBut I am not sure about the density based model. I never used it. Can you batch both fluids in both zones and make the void fraction very close to zero.?n
    • JD_JN
      Subscriber
      Array As you would know, for the VOF model to be utilized, the solver must be pressure based. I am using a density based solver because the scheme I use requires it.nAnd so I cannot use VOF.nBut if creating 2 separate zones works, then we can have different fluids in those 2 zones.nI tried to make 2 separate dynamic zones, however now the finite thickness diaphragm (diaphragm_walls) is being read as different parts in FLUENT.nnn
    • JD_JN
      Subscriber
      As you can see, after rebuilding the domain by splitting the single deforming zones and creating 2 separate zones, 'diaphragm_walls' is now being read as different parts in FLUENT:nnAlso, the solution stops converging when running the simulation. It stops solving with the following message on the console:nnn
    • JD_JN
      Subscriber
      The circled regions in the diaphragm are the 0 thickness walls made to act as interfaces once the flow starts, as suggested.n
    • YasserSelima
      Subscriber
      The wall and wall shadow appears when you define fluid and solid on the two sides of a line. My understanding is that your diaphragm moves as rigid body and you don't solve mechanics. So, you can just build it as a gab between the two dynamic zone, So, you don't get the wall shadow. nI understand your point of not being able to use VOF if you have to use density based solver. Not sure what two phase models could be used with density based. I never tried to use it. I know it is designed for high Mach numbers. n
    • YasserSelima
      Subscriber
      The three partitions message is not an error message. You are using three nodes and fluent divide the work between the nodes.n
    • danbence
      Subscriber
      Ok, I?m confused. It is sounding like your root problem is less to do with dynamic meshing and more to do with solving multi-phase flows.n Looking at the fluent theory guide, it saysn ?In ANSYS Fluent, three different Euler-Euler multiphase models are available: the volume of fluid (VOF) model, the mixture model, and the Eulerian model?n Are any of these models compatible with the density based explicit solver ?n n n
    • JD_JN
      Subscriber

      It seems like your road block is initializing the system. If the multi-phase model you have chosen does not allow patching of different fluids in one zone (seems strange), then I suggest trying:-build the domain with separate zones for the two fluids.In the gap between the diaphragm and the top/bottom walls, place a 0 thickness wallInitialize the separate zones with the two fluidsRemove the 0 thickness walls separating the two fluids Removing these separating walls by turning them into the “interface” type, or even use the “merge zones” command. I have not tried this myself. /forum/discussion/comment/103051#Comment_103051

      @YasserSelima, Yes, you are correct. The diaphragm moves as a rigid body in the deforming zone, and there is no solving of mechanics.nI built the diaphragm as a gap between the 2 dynamic zones initially, and it gets read just fine in FLUENT. But when I tried to do what @danbence, has suggested here, I'm getting the diaphragm being read as separate parts in FLUENT.nSpecifically, it happens when I try to do point #2 here in this comment : 'In the gap between the diaphragm and the top/bottom walls, place a 0 thickness wall'.nMaybe I'll try running a simulation anyway, defining all those separated parts as rigid bodies undergoing the same motion.n
    • JD_JN
      Subscriber
      nfor the density based solver, none of the said multiphase models are compatible (unfortunately, in my case ). nIt must be a pressure based solver for any of them to get activated.n
    • danbence
      Subscriber
      Oh. So why persist with Fluent, if you know that it does not support multi-phase with the solver you require ?n n
    • YasserSelima
      Subscriber
      nGood luck with that!nnnSometime you have to stick to what is available until you can secure alternatives. n
    • JD_JN
      Subscriber
      Yeah, what said n
    • JD_JN
      Subscriber
      Hi Array Array !nSo I made the domain as was suggested - I made 0 thickness walls in the gap between the diaphragm and the top & bottom boundaries, and separated the deforming dynamic zone into 2 zones, as can be seen here :nnnHowever, now when I try to preview the mesh motion, the remeshing preview pauses indefinitely after around 290 time steps (it has to go till 6100 time steps) with the partitioning message in the console.nAlso, now it says, Warning: Maximum skewness exceeds 0.95, Warning: Minimum orthogonal quality below 0.05 during the mesh motion preview at around the said time step.nIf I use the same mesh, but as a single deforming zone instead of 2, and without the 0 thickness walls in the gap, the remeshing happens with no issues.nKindly advise!nn
    • YasserSelima
      Subscriber
      You have the solution. Make it one cell and consider it in the high pressure zone. n
    • JD_JN
      Subscriber
      You mean to change the walls type to interface, if I'm not mistaken?nI have done that using events, and the remeshing does not progress further after around said 290 time stepn
      • chaoz
        Subscriber

        Hi, have you solved your problem in the end?

        • JD_JN
          Subscriber

          Yes, I did! I probably should have updated that here couple of years ago haha. I was able to resolve it back then by giving a finite thickness to the diaphragm and providing clearances at the top and bottom of the diaphragm. I had to play around with the clearance values as I wanted it to be as small as possible.

          Hope this helps! Cheers!

    • YasserSelima
      Subscriber
      sorry, I miss understood your point. I thought it worked for 3 dynamic zones!nNo, don't go back to single zone. try playing with the re-meshing parameters. try to use layering and see what you getn
    • YasserSelima
      Subscriber
      Also decreasing the time step would help avoiding skewed mesh. It will give fluent an opportunity to remesh n
Viewing 59 reply threads
  • The topic ‘Dynamic Mesh: No Remeshing Happening on Axis Boundaries’ is closed to new replies.