Fluids

Fluids

Topics related to Fluent, CFX, Turbogrid and more.

Divergence (possibly) caused by automatic mesh refinement

    • marc.goldbach
      Subscriber

      Hi,

      I am running a VOF simulation where the free surface is refined using automatic mesh refinement, but the simulation is suddenly diverging after about 1000 iterations.  When inspecting the results after divergence, I see no obious signs of high velocities, residuals, etc.  I have noticed that the original mesh had a minimum orthogonal quality of > 0.1, but when checking the mesh after divergence, the minimum orthogonal quality is ~0.03, eventhough I specify a minimum quality of 0.1 in the automatic mesh settings

      Original mesh quality check using Fluent meshing:

      ----------------------------------------

      Cell Quality [Measure : Orthogonal]

      Minimum = 0.10208334, Maximum = 1, Average = 0.95636215.

       

      Marking Cells in Range (0.10208334 0.15208334)...

      Info: Total marked entities in the range is 252, is limited to 15 by max number of allowable cell clusters (10).

      --------------- ----------

       

      Mesh quality after automatic mesh adaption and divergence:

      Minimum Orthogonal Quality =  3.18312e-02 cell 301147 on zone 19062 (ID: 14520292 on partition: 39) at location ( 5.99704e+00,  2.32079e+00,  9.54323e-01)

       

      Maximum Aspect Ratio =  1.05687e+02 cell 31803 on zone 19062 (ID: 21173019 on partition: 58) at location (-5.25139e+00,  5.40401e-03, -1.74540e+00)

       

      I checked the location of the poor quality cell, and it seems to be on the water surface in a very turbulent part of the domain.

      Any suggestions on how to correct?

      I have also tried with the "prismatic adaption" option selected, since my mesh does include solid boundaries with prism layers, but then I get an error after a while when the mesh is updating:

      eversed flow on 9748 faces of pressure-inlet 169.
         419  3.2815e-02  1.0527e-05  1.1973e-05  1.0660e-05  5.2760e-03  2.2468e-03  1.3402e-03 16:27:52 1428
      terminate called after throwing an instance of 'std::runtime_error'
        what():  
       ~~~~~~~~~~~~~~~~~ adapt::BaseMesh::initAnisotropyIndex ~~~~~~~~~~~~~~~~~ 
       Failed to find initial opposing face!
       Partition: 23
       Cell: 57430832 :: polyhedra
       n: 23 
       (
         15529381 :: [2.9153029462865616e+00 2.3716788569593583e+00 1.6824858095966990e+00] {0 0 0}
         80488568 :: [2.9106995584188318e+00 2.3745322681973411e+00 1.6805485417735193e+00] {1 1 0}
         80494791 :: [2.9061045061794402e+00 2.3658542722152580e+00 1.6786988298365557e+00] {1 1 0}
         80488567 :: [2.9152345834174480e+00 2.3657246637854894e+00 1.6824554668049947e+00] {1 1 0}
         15613312 :: [2.9159362300134335e+00 2.3716575584291846e+00 1.6810281321082341e+00] {0 0 0}
         80490989 :: [2.9113164176483997e+00 2.3745323495270014e+00 1.6790830094844111e+00] {1 1 0}
         15613311 :: [2.9066966052833663e+00 2.3774071406248183e+00 1.6771378868605882e+00] {0 0 0}
         15529382 :: [2.9060961705511019e+00 2.3773856794353234e+00 1.6786112739503398e+00] {0 0 0}
         80483965 :: [2.9158685012458170e+00 2.3657247741517073e+00 1.6809977345199560e+00] {1 1 0}
         80497194 :: [2.9067040720456472e+00 2.3658543707577904e+00 1.6772248331972825e+00] {1 1 0}
         80484233 :: [2.9015706020637895e+00 2.3746897130562958e+00 1.6768320751483961e+00] {1 1 0}
         15529378 :: [2.8970450335764766e+00 2.3719937466772683e+00 1.6750528763464525e+00] {0 0 0}
         80482367 :: [2.8973272284199449e+00 2.3719830136342814e+00 1.6743076450496202e+00] {1 0 1}
         15613309 :: [2.8976094232634138e+00 2.3719722805912951e+00 1.6735624137527880e+00] {0 0 0}
         80484232 :: [2.9021530142733898e+00 2.3746897106080569e+00 1.6753501503066881e+00] {1 1 0}
         80482368 :: [2.8969545548016358e+00 2.3660065670793218e+00 1.6750180659789646e+00] {1 1 0}
         80492263 :: [2.8972370967829035e+00 2.3660065940075339e+00 1.6742729815503528e+00] {1 1 1}
         80482366 :: [2.8975196387641713e+00 2.3660066209357464e+00 1.6735278971217413e+00] {1 1 0}
         15529384 :: [2.9151662205483344e+00 2.3597704706116205e+00 1.6824251240132906e+00] {0 0 0}
         80488570 :: [2.9106846554077928e+00 2.3570451476708385e+00 1.6805391448585016e+00] {1 1 0}
         15613313 :: [2.9158007724782009e+00 2.3597919898742297e+00 1.6809673369316780e+00] {0 0 0}
         91869905 :: [2.9109930734626674e+00 2.3570451804965211e+00 1.6798060974676075e+00] {1 1 1}
         80488838 :: [2.9113014915175417e+00 2.3570452133222037e+00 1.6790730500767130e+00] {1 1 0}
       ) {0 0 0} <0> [ Old Active Anisotropic ]
       f: 17 
       (...

      I am running a steady state simulation using the following:

    • Federico
      Ansys Employee

      Hello Marc, 

      can you also show your calcuation controls (from Solution tab > Run Calculation...)?

    • marc.goldbach
      Subscriber

    • Rob
      Forum Moderator

      The prism refinement is for inflation layers and generally assumes you split the whole layer; depending on the version you'll get an error/failure/warning if the end of the prism split isn't terminated at the "end" of a wall. Not something you want to use in this scenario. 

      Is the refinement/coarsening region being updated a lot? Ie is the adaption routine being triggered very frequently in that region? Can you post some images of the mesh?

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