fluent吧 关注:19,187贴子:98,041
  • 25回复贴,共1

为什么动网格出现负体积之一?

只看楼主收藏回复

在做动网格的时候,经常出现负体积,和发散现象类似,原因多且没有标准答案,解决它之前,有必要了解负体积的原理,如果正常的网格,发生严重变形和扭曲,那就会出现负体积现象,
那么怎样才能让网格在运动过程中,不会产生负体积呢?那就是让网格运动变形在合理范围内,进一步量化要求,就是斜度不能大于0.95,首先从源头上划网格的时候就要保证网格斜度不能大于0.9,一旦大于0.9的话,网格稍微有点运动就会大于0.95,首先是在状态栏中红色警告提示斜度超过0.95了,再过会残差曲线立即飙升直至发散,最终提示负体积,立即挂掉。也就是划网格时必须给予足够的冗余让网格运动,如果网格划分在0.9以下,为什么也会出现负体积呢?那是因为每个时间步内网格运动的幅度值,超过了网格尺寸本身就会发生负体积,假如网格尺寸是1mm,一个时间步长内,运动幅度超过了1mm,这样必然造成负体积现象,最好控制到它的一半在0.5mm之内,那么怎样才能做到这点呢,首先根据木桶最短板原理要知道最小网格的尺寸是多少,假设是S,再要知道网格运动过程中最大的速度是多大,如果是指定的主动运动,那还好办,特别是6dof被动运动,那要经常大量调试计算才能知道,假设速度V,那么理论上动网格时间步长,则是S/2*V(距离除以速度等于时间),需要注意这只是动网的时间步长最大值,通常由于实际模型的复杂性,可能还要远小于这个值才能不发生负体积,这需要前期调试才能找到适合的时间步长。
千辛万苦找到动网格的时间步长之后,是不是下面设置跑运算就行了?当然不是,如果把流场的复杂性加上,时间步长可能还要减小一至三个数量级才能保证收敛不发散,可以参考我以前关于时间步长的文章,所以,动网格计算量非常巨大,时间长,这点必须要有充分的思想准备。上面所阐述的一切必须建立在正确的动网格方案和合理的设置基础上,如果前面方案和设置都错了,时间步长再小也是白搭,反之如果确定自己的方案和设置没有问题,那么直接通过估算把时间步长改小就能解决负体积问题。


IP属地:安徽1楼2024-12-10 16:54回复
    自顶一下


    IP属地:安徽来自iPhone客户端2楼2024-12-17 07:39
    回复
      2025-08-23 10:19:17
      广告
      不感兴趣
      开通SVIP免广告
      感谢感谢!


      IP属地:上海3楼2024-12-22 10:42
      回复
        请教大佬,最小的网格尺寸需要考虑边界层网格吗


        IP属地:上海4楼2024-12-22 10:44
        收起回复
          在动网格瞬态计算中,边界层网格应该怎么考虑呢


          IP属地:上海5楼2024-12-22 10:44
          收起回复
            谢谢大佬,受益颇多。还有个问题想请教下,用6dof动网格寻找合适的时间步长时,预览网格运动的时间步数是否需要和正式计算时一致呢?比如我正式计算可能要算100万步,那预览网格运动的也要100万步吗?


            IP属地:湖南6楼2024-12-23 20:57
            收起回复
              请教一下lz,我动网格做的是桨叶旋转,在运动的时候只看到网格一步步被压扁成负体积,网格画完最小正交质量0.2-0.3之间,是网格质量太差的原因吗,调小时间步的话到固定时间点附近就负体积


              IP属地:浙江7楼2024-12-27 19:56
              收起回复
                请问怎么限制这个角度呢


                IP属地:北京来自Android客户端8楼2024-12-31 23:01
                收起回复
                  2025-08-23 10:13:17
                  广告
                  不感兴趣
                  开通SVIP免广告
                  所以就是需要在划分网格时让网格尽和斜度尽可能的变小嘛


                  IP属地:山东9楼2025-01-14 18:01
                  收起回复
                    您好,能帮忙看一下我的问题吗


                    IP属地:辽宁10楼2025-01-17 14:34
                    回复