CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    钝体建筑扰流的大涡模拟

    OpenFOAM
    9
    69
    3033
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • H
      HITSC30 @gtian 最后由 编辑

      @gtian 在 钝体建筑扰流的大涡模拟 中说:

      @coolhhh 什么是脉动风?怎么加的?

      师兄这个我回答一下,平均风指的是随着时间风速不发生改变。脉动风指的是随着时间的改变,风速是会发生改变的。脉动风当前有两种主流的生成方法,一种是域前模拟法类似于风洞试验,前面有一个模拟带,好像该种方法是满足纳维斯托克斯方程。再者是合成法,主流的包括傅里叶合成法,常见的如中科大黄教授的DSRFG,西安大略的CDRFG和华南理工的NSRFG,我师兄也做得这个方面。涡合成法,该方向只知道SEM和罗银师兄的MSEM。我们当前的算例是基于CDRFG生成的脉动风速。

      1 条回复 最后回复 回复 引用
      • H
        HITSC30 @gtian 最后由 编辑

        @gtian 该类型可能更符合大气边界层风速的剖面特性。主要常见的是指数率和对数率两种形式

        1 条回复 最后回复 回复 引用
        • C
          coolhhh 最后由 编辑

          @gtian 几个问题个人理解如下:

          不可压下得到的p是p/rho

          这是我们一直犯的初级错误,也导致了找问题花了一个多月,非常感谢指正。推导的量纲如下:

          0文件夹的p量纲为 $m^2s^{-2}$
          $\frac{p}{\rho}$的单位为 $\frac{Pa}{kg/m^3}=\frac{kg/(s^2m)}{kg/m^3}=m^2s^{-2}$

          因此不可压缩湍流输出的p本质是$\frac{p}{\rho}$,希望大家都能避开这个初级错误。

          我之前没有算过风压这类问题,还挺有兴趣的。我对这个u_h,也是非常疑惑。我用的u_h是柱体中心横截面上(u_h)_max。之所以有疑惑,是关于这个u_h的选择位置的,因为我们一般算cp用到是远场处的速度(我之前做过3900圆柱绕流,https://doi.org/10.1063/5.0012358)。事实上,柱体上方会有一个强剪切区,流动分离后会形成回流区。柱体侧边同理。因此,我很疑惑的是u_h 是如何定义的? 是 h高度处的最大速度吗?如果有流动分离,即使在初始边界上设置了u_h,那么这个u_h也会发生变化啊。反倒是都用,2/3高度处的流场数据(pmean-0)/ (0.5* u_0.667 ^2),我觉得更合理。因为不可压流p就是p/rho,可以看一下文件的量纲,所以就不需要在除密度了。

          我们的研究方向为结构风工程,一般计算风压系数用的是无干扰状态下建筑物顶部高度处来流的速度$U_{H}$,在建筑物高度范围内是最大的风速,因此用$U_{H}$计算得到的平均风压系数最大值一般都不超过1。

          还有,尽量不要用smagorinsky做亚格子模型,因为这个亚格子模型中的系数C是个定值。他会有两个问题,1.边界上,会overestimate边界附近的粘度。2. 是全场是一个固定系数的话,会忽视掉能量的反级串backscatter现象。one-equation或者dynamic的亚格子模型都比smagorinsky要好一些。对于静压力,我试一下你给的那个边界条件跑一下看看。还有就是关于总用时的。我一般分成两部分,一部分是从初识态到流场稳定(200-300个t*)。第二阶段,统计过程,100-300个t*。t*=特征长度/特征速度。比如H/u*,摩擦速度可以用sqrt(压差阻力/横面积)得到。

          (1)目前对湍流模型还只停留在使用阶段,研究不深,非常感谢指导。
          (2)现在这个静压力问题找到了,非常感谢。根据我之前的大量尝试,在计算平均风剖面结果时候,基本无论用什么湍流模型、离散格式、矩阵求解器、有无壁面函数,结果基本都是一致的。
          (3)计算用时我也没有考虑到那么详细,你的研究非常专业。我之前是这么设置的:前面计算不稳定的时间,设置时间比计算域长度除以参考风速得到的时间再长点,大概让风场能跑完整个计算域;统计时间的长度,用的是模型缩尺比和速度缩尺比,折算到原型大概10min的长度,满足结构风工程一般采样时长要求来定的,当然计算资源足够的话,模拟越长越好。根据之前的计算经验,这么设置计算结果与实验值的吻合程度还算比较好。

          什么是脉动风?怎么加的?

          (1)根据《风工程与结构抗风设计》(武岳, 2014),脉动风定义如下。
          2.jpg

          (2)脉动风生成方法可参考综述文章:Inflow Turbulence Generation Methods。

          我主要研究的是Synthetic Random Fourier Method,加载过程例如:先用CDRFG方法生成脉动风速时程数据,用OpenFOAM自带的边界条件timeVaryingMappedFixedValue,这个边界条件是根据入口坐标插值得到每个时刻的瞬时风速实现脉动风的加载,可参考 LES定义入口速度的问题(DSRFG方法)。

          还有一个问题是关于inlet边界条件的。一般认为入口处是一条大气边界层的速度型曲线。比如:https://www.openfoam.com/documentation/guides/latest/doc/guide-bcs-inlet-atm-atmBoundaryLayer.html。 为什么入口的速度是一个指数型呢?

          我们的研究领域主要是结构风工程。风工程中对平均风剖面主要分为对数率和指数率。《风工程与结构抗风设计》(武岳, 2014)中的相关描述如下。目前大部分结构风工程风洞实验室都采用的是指数率的剖面风场来做风洞实验,TPU数据库也是用的指数率剖面。

          3.jpg
          4.jpg
          5.jpg

          最后,再次感谢大家的讨论和帮助,感谢李老师,感谢CFD中文网

          C 1 条回复 最后回复 回复 引用
          • S
            Sloan 最后由 编辑

            很好的算例,不知道后来算的怎么样了呢,好奇来学习一下,谢谢!

            H 1 条回复 最后回复 回复 引用
            • C
              cccrrryyy 教授 @coolhhh 最后由 编辑

              @coolhhh 好奇问个问题,我现在机缘巧合也转到风工程这块来了,风电行业。

              你们在仿真的时候对粗糙度怎么考虑?我看到一些风电行业的商业软件对粗糙度的植入是采用体积力源项的方式,但大部分学术论文中还是以壁面函数为主。这块你们怎么考虑的?

              另外粗糙度和网格之间是否需要有一些关系,壁面函数一般是有适用范围的,跟网格特别是第一层网格高度应该是一个强相关的量吧?

              I don't want to survive, I want to thrive.

              C 1 条回复 最后回复 回复 引用
              • C
                coolhhh @cccrrryyy 最后由 编辑

                @cccrrryyy

                1. 我们目前模拟的是高层建筑大涡模拟,不同地貌的粗糙度,对应不同的平均风剖面和湍流强度剖面形状。目前直接在入口施加平均风叠加脉动风,使用no-slip壁面,不采取其他操作,近壁面的平均风随着发展可能会有增大趋势,如下图所示。总体上这对于高层建筑的风压模拟结果影响不大。
                  2.jpg
                  (引自:Chen, L., et al., Consistency improved random flow generation method for large eddy simulation of atmospheric boundary layer. Journal of Wind Engineering and Industrial Aerodynamics, 2022. 229: p. 105147.)

                2.有一种保持粗糙度的方式是地表布置粗糙元,如下图所示。对应的另外种方式就是施加浸没边界方式(也就是体积力源项)。我对这块没有研究,个人的疑惑是如何根据不同的粗糙地表直接选择合适的粗糙元或体积力源项来实现平均风的自保持,还是说需要试错的方式来确定?
                1.jpg
                (引自:Bervida, M., et al., Synthetic generation of the atmospheric boundary layer for wind loading assessment using spectral methods. Journal of Wind Engineering and Industrial Aerodynamics, 2020. 196: p. 104040.)

                3.也有文章说合适的壁面函数可以实现平均风的自保持。个人理解壁面函数的作用是用半经验公式近似模拟近壁面较粗糙网格的流动情况。OpenFOAM提供了几种壁面函数,觉得是没有考虑到风工程中不同地貌粗糙度问题。同样的疑惑是,当模拟不同粗糙度的风场,壁面函数如果能起到作用,那壁面函数是否得根据模拟的不同粗糙场地对应修改,然后还需要自定义植入?

                C 1 条回复 最后回复 回复 引用
                • C
                  cccrrryyy 教授 @coolhhh 最后由 编辑

                  @coolhhh 感谢分享。我们目前用的是壁面函数的套路,就是对风场地表的网格施加壁面函数。OpenFOAM现在有nutkAtmRounghWallFunction,指定粗糙度即可,支持非均匀的。

                  这个壁面函数只是为了模拟出近壁面对数廓线的速度分布,其实没有太强的物理背景,也没有被详细的验证过,肯定是有些问题的。

                  I don't want to survive, I want to thrive.

                  李东岳 C 2 条回复 最后回复 回复 引用
                  • 李东岳
                    李东岳 管理员 @cccrrryyy 最后由 编辑

                    @cccrrryyy 大佬你这面稳定、中性、非稳定大气玩的多么,我最近在搞这个。楼上那个大佬说的【地表布置粗糙元】我最近看sci也看见一些,不过还没考虑那快。

                    CFD高性能服务器 http://dyfluid.com/servers.html

                    C 1 条回复 最后回复 回复 引用
                    • C
                      coolhhh @cccrrryyy 最后由 编辑

                      @cccrrryyy 感谢大佬,看了OpenFOAM壁面函数nutkAtmRounghWallFunction的用法,应该是对应模拟对数率平均风剖面设置的,但如果是想模拟指数率的风剖面,好像不能直接使用?
                      3.jpg

                      C 1 条回复 最后回复 回复 引用
                      • C
                        cccrrryyy 教授 @李东岳 最后由 编辑

                        @李东岳 工业上主要还是中性为主,所以目前都是在搞中性的。非中性的那些在行业内目前应用不多,属于有经验的工程师(高阶玩家,有好几年风资源经验的才会对当地的热稳定度有深刻的理解)才会考虑到的因素,因为热稳定度其实无时无刻不在变化,很难在RANS下的框架下去工程应用。

                        另外就是热稳定度的判别需要基于有多层(至少两层)温度传感器的测风数据,目前工程应用中这种测风数据不多。

                        I don't want to survive, I want to thrive.

                        李东岳 1 条回复 最后回复 回复 引用
                        • C
                          cccrrryyy 教授 @coolhhh 最后由 编辑

                          @coolhhh 理论上确实是,但我在想壁面函数这么一点影响是不是有可能对流场影响不大?我们主要关注风机高度处的流动,现在都到100多米了,可能和你们不一样,你们关注风压的话对壁面要求应该会很高吧?

                          I don't want to survive, I want to thrive.

                          C 1 条回复 最后回复 回复 引用
                          • 李东岳
                            李东岳 管理员 @cccrrryyy 最后由 编辑

                            @cccrrryyy 是,我看他们也都是搞得中性居多。我最近也在梳理相关算法,有一些需要算非中性的算法,要改NS方程以及湍流模型。

                            大佬还在国外么。

                            CFD高性能服务器 http://dyfluid.com/servers.html

                            C 1 条回复 最后回复 回复 引用
                            • 李东岳
                              李东岳 管理员 最后由 编辑

                              我在这个文章里面看,他们这么处理的:壁面粗糙元的高度就是第一层网格的高度

                              CFD Modeling of Non-Neutral Atmospheric Boundary Layer Conditions

                              屏幕截图 2023-01-13 103119.jpg

                              CFD高性能服务器 http://dyfluid.com/servers.html

                              1 条回复 最后回复 回复 引用
                              • 李东岳
                                李东岳 管理员 最后由 编辑

                                http://www.iawe.org/Proceedings/7APCWE/M2D_1.pdf

                                这个文章里面讨论了指数率的风剖面,我看对于nut可以直接用。 @coolhhh

                                CFD高性能服务器 http://dyfluid.com/servers.html

                                C 1 条回复 最后回复 回复 引用
                                • C
                                  coolhhh @cccrrryyy 最后由 编辑

                                  @cccrrryyy 试过LES计算高层建筑风压,建筑壁面和计算域底面都用nutUSpaldingWallFunction;以及只有建筑壁面用nutUSpaldingWallFunction,计算域底面不用壁面函数,设置no-slip wall。对比的计算结果没有什么明显区别,与实验值对比结果也还好,所以觉得近地面的流动对高层建筑模拟基本没影响。也对比过加密建筑周边网格,使得建筑物壁面Y+基本小于1,设置no-slip wall,计算建筑物表面风压结果与nutUSpaldingWallFunction计算结果也差不多

                                  C 1 条回复 最后回复 回复 引用
                                  • C
                                    coolhhh @李东岳 最后由 编辑

                                    @李东岳 感谢李老师分享,看了这篇文章主要适用于RANS模型,目前对这块还没有研究。我主要研究的是LES大涡模拟入口湍流生成方法,由于入口湍流生成方法有很多种,生成的风场性质也都不同,湍流发展过程可能也有不一样的特点。针对不同入口风场,源项、或壁面函数、或粗糙元布置方式应该也要对应修改,使得每个瞬时的近地面速度发生预期的调整,最后要求计算得到的平均风和湍流强度符合预期值,目前感觉实现一种通用的设置方式还是比较困难。

                                    1 条回复 最后回复 回复 引用
                                    • C
                                      cccrrryyy 教授 @李东岳 最后由 编辑

                                      @李东岳 工程上肯定是中性为主,实在是条件有限没办法做非中性,另外非中性自身的理论体系感觉不如中性完善。

                                      我早就回国啦,李老师最近也开始搞风工程么?有机会交流下:140:

                                      I don't want to survive, I want to thrive.

                                      1 条回复 最后回复 回复 引用
                                      • C
                                        cccrrryyy 教授 @coolhhh 最后由 编辑

                                        @coolhhh 那看来nutUSpaldingWallFunction确实是个牛逼的东西。我之前做过一些LES,最终也是选择这个壁面函数,不过没看到过在它里面再植入粗糙度进去。

                                        I don't want to survive, I want to thrive.

                                        1 条回复 最后回复 回复 引用
                                        • H
                                          HITSC30 @Sloan 最后由 编辑

                                          @Sloan 您好,抱歉长时间没有登陆。数值模拟算出的TPU风荷载数据在结果上,如下图所示。第一张图代表2/3H高度处的平均风压和脉动风压;第二张图代表不同时间步长下误差分布在10%、20%、30%范围内的概率。
                                          ![c9be7d7b-14f4-416a-ad2f-dd41c71b80a3-E]S5{78G1ME24M$D165E$)O.png](/assets/uploads/files/1676947031870-c9be7d7b-14f4-416a-ad2f-dd41c71b80a3-e-s5-78g1me24m-d165e-o.png)
                                          81e24904-4f44-4008-8d91-273a88f6cfde-@R7TUY70708JL5R)6ST)X4N.png

                                          H 1 条回复 最后回复 回复 引用
                                          • H
                                            HITSC30 @HITSC30 最后由 编辑

                                            @HITSC30
                                            646382e6-e2a3-4792-afda-e088d712c781-6Z996FS7F$M4ZUP%U7KHH%T.png

                                            B 1 条回复 最后回复 回复 引用
                                            • B
                                              BznW @HITSC30 最后由 编辑

                                              @HITSC30 您好!最近刚刚接触openfoam不久,也在尝试这样一个湍流边界层下的建筑风压的一个LES算例,同样遇到了您最开头说的边界层网格设置太小出现发散的问题,(我用的SHM参照香港城市大学一篇文章设置的网格,似乎感觉网格效果还好?附图如后)感觉y+与Co数同时满足大涡模拟的要求似乎只能设置十分小的时间步长?但这又不是我们想看到的情况,我试着采用pimpleFoam求解器(据说可以满足大时间步长下的瞬态计算要求)顶着20左右的库朗数得到了顺风向脉动力矩系数远大于平均力矩系数十余倍的“荒谬”结果,我的时间步长与网格大小与一篇使用Fluent计算的文章设置是一样的,但却得不到预见的结果甚至是发散,这让我感到很苦恼又很奇怪。很高兴看到了这篇帖子,看完您们的讨论后很有收获,但似乎还是不太清楚您最后究竟是如何解决得这一问题?是采用譬如说是设置壁面函数的LES,或者是您将时间步长设置的足够小来完成了整个计算?以及是否方便分享下您解决问题后的案例设置以供学习参考?:xinxin: 61a58c3a21eeabd12ff613ea7edc1e4.png 49272ab56a3f21f5f5c09a912a5e268.png cf0d19146cccf3a9a2a952c714d204e.png

                                              H 1 条回复 最后回复 回复 引用
                                              • H
                                                HITSC30 @BznW 最后由 编辑

                                                @BznW 您好,所用的case在上文百度网盘链接中。具体发现的原因是,OpenFOAM相对于Fluent计算网格要求更为严格,部分网格fluent可以计算的情况下,FOAM存在发散现象。

                                                B 1 条回复 最后回复 回复 引用
                                                • B
                                                  BznW @HITSC30 最后由 编辑

                                                  @HITSC30 感谢回复!没有看到上文有网盘连接嘞,只看到了您最初的设置,请问您最终是如何解决这一问题了呢?设置了更小的时间步长吗,还是更换了网格,以及有没有出现十分大的压力波动现象呢?

                                                  H 1 条回复 最后回复 回复 引用
                                                  • H
                                                    HITSC30 @BznW 最后由 编辑

                                                    @BznW
                                                    前期我们模拟TPU114模型设置,见下载地址:
                                                    链接:https://pan.baidu.com/s/161fNMd9disZoZtW-CZgaRg
                                                    提取码:rznq

                                                    B 1 条回复 最后回复 回复 引用
                                                    • B
                                                      BznW @HITSC30 最后由 编辑

                                                      @HITSC30 好的,感谢!

                                                      1 条回复 最后回复 回复 引用
                                                      • First post
                                                        Last post