Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. openfoam添加湍流入口方法?

openfoam添加湍流入口方法?

已定时 已固定 已锁定 已移动 OpenFOAM
52 帖子 12 发布者 49.7k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • D 离线
    D 离线
    dyb
    写于2019年9月24日 02:01 最后由 编辑
    #14

    问题找到了,低版本的Random和高版本的有区别,但是,我不知道怎么 改

    1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    写于2019年9月24日 02:12 最后由 编辑
    #15

    你看看它哪里用到了这个vector函数,搞清楚用这个是想实现什么,然后在你现有OpenFOAM里面的随机数产生器找一下实现同样功能的函数。当然了,前提是你现有的OpenFOAM里面确实包含了他要用到的功能,这个我没法百分百确定,但这种涡方法里面产生随机数大概率就是调用一个函数然后产生一个0到1之间的随机数。

    或者更直接点的,这个湍流入口好像是针对2.3.x(不一定准确)开发的吧,你直接找到2.3.x的源码,看一下这个湍流入口调用的是2.3.x版本里面的哪个函数。这样你就知道在你的版本下应该调用什么函数了。

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

    1 条回复 最后回复
  • S 离线
    S 离线
    sjlouie91
    在 2019年10月14日 10:13 中回复了 cccrrryyy 最后由 编辑
    #16

    @cccrrryyy 请问一下,你在安装到OF4时是直接应用的他们的代码还是修改后才可以在新版本上编译的?

    C 1 条回复 最后回复 2019年10月17日 05:09
  • C 离线
    C 离线
    cccrrryyy 超神
    在 2019年10月17日 05:09 中回复了 sjlouie91 最后由 编辑
    #17

    @sjlouie91 可能改过吧,不记得了。即使是改过应该也就是很小的地方改了一下,按照编译时候出现的错误提示改的,没有额外的东西。

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

    1 条回复 最后回复
  • D 离线
    D 离线
    dyb
    在 2019年11月7日 14:55 中回复了 cccrrryyy 最后由 编辑
    #18

    @cccrrryyy 老师,您好,您这边有InflowGenerator的算例吗,这个值我不知道怎么设置

    C 1 条回复 最后回复 2019年11月14日 08:36
  • C 离线
    C 离线
    cccrrryyy 超神
    在 2019年11月14日 08:36 中回复了 dyb 最后由 编辑
    #19

    @dyb 好久不登录了- -它需要的就是速度、长度尺度和雷诺应力。简单的话速度你给个均一值,长度尺度取水力直径的10%,雷诺应力(RField)我一般都按照 k epsilon 里面 k 的算法(3/2*(refU*turbulentIntensity)^2,turbulentIntensity取个百分之五啥的),RField格式是 uniform (Rxx Rxy Rxz Ryy Ryz Rzz),我一般就把算出来的这个值给Rxx Ryy Rzz。这个雷诺应力的顺序你自己再查一下,应该是这样的。

    边界条件的设定其实没有很重要,大致差不多就行,比如长度尺度我看有人取水力直径的7%的,turbulentIntensity取到百分之二十的。雷诺应力,严格来说其他分量也应该有值,但我一直就给Rxx Ryy Rzz好像也没啥问题。

    这个边界条件只是给一个扰动,真正的湍流应该是靠你场里面的流动产生,所以在边界条件设置上不要过于纠结具体的数值。

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

    D 尚 3 条回复 最后回复 2019年11月14日 11:47
  • D 离线
    D 离线
    dyb
    在 2019年11月14日 11:47 中回复了 cccrrryyy 最后由 编辑
    #20

    @cccrrryyy 谢谢老师

    1 条回复 最后回复
  • D 离线
    D 离线
    dyb
    在 2019年11月19日 14:51 中回复了 cccrrryyy 最后由 编辑
    #21

    @cccrrryyy 老师,这个速度可不可以给定一的速度梯度

    1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    写于2019年11月20日 09:07 最后由 编辑
    #22

    给速度梯度是什么意思?

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

    D 1 条回复 最后回复 2019年11月20日 13:48
  • D 离线
    D 离线
    dyb
    在 2019年11月20日 13:48 中回复了 cccrrryyy 最后由 编辑
    #23

    @cccrrryyy 我的入口是大气边界,有一个风廓线,入口速度沿着高度方向有个速度梯度,按指数变化

    C 1 条回复 最后回复 2019年11月21日 11:55
  • C 离线
    C 离线
    cccrrryyy 超神
    在 2019年11月21日 11:55 中回复了 dyb 最后由 编辑
    #24

    @dyb 那就是速度有一个profile?我一般的做法是直接把这个profile用fixedValue赋值到每个cell上。这个需要你先用writeCellCentres命令导出每个边界的坐标,然后找到入口对应的坐标。我一般拿到这些值后用MATLAB根据位置坐标把速度值赋过去。

    OpenFOAM是有codedFixedValue这种东西的,就可以直接给一个profile的,这个应该操作比较容易。

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

    D 1 条回复 最后回复 2019年11月21日 12:05
  • D 离线
    D 离线
    dyb
    在 2019年11月21日 12:05 中回复了 cccrrryyy 最后由 编辑
    #25

    @cccrrryyy 在open foam中atmBoundaryLayerInletVelocity这个边界是带有风廓线,而InflowGenerator只有扰流没有风廓线,如果这两个边界可以编译到一起用作入口是非常不错。
    atmBoundaryLayerInletVelocity这个边界的源码在OpenFOAM-2.4.0\src\turbulenceModels\incompressible\RAS\derivedFvPatchFields\atmBoundaryLayerInletVelocity这个位置,我虽然在用openfoam但是我不懂编程,我解决不了这个问题![替代文字](f5dc51f4-7198-4535-a263-a361d9761264-image.png 图片地址)
    非常感谢老师的解答,

    星 1 条回复 最后回复 2019年11月21日 13:35
  • 星 离线
    星 离线
    星星星星晴
    在 2019年11月21日 13:35 中回复了 dyb 最后由 编辑
    #26

    @dyb 和你说一个更硬核的方法,对进口的每个cell进行赋值 你可以参照这个,这个方法最大的问题就是你改变一次网格就要重新赋值。但是当你在为边界条件搞得头疼不已,就用这个吧

    http://www.cfd-china.com/topic/2089/分享-搬运-自定义非均匀inlet-u

    游荡

    D C 3 条回复 最后回复 2019年11月21日 13:40
  • D 离线
    D 离线
    dyb
    在 2019年11月21日 13:40 中回复了 星星星星晴 最后由 编辑
    #27

    @星星星星晴 谢谢老师

    1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    在 2019年11月22日 02:19 中回复了 星星星星晴 最后由 编辑
    #28

    @星星星星晴 我上面回复的做法跟你这个一样,你这个很详细~我觉得这样自由度更高一些,实际上写好一个赋值速度的程序之后可以一直用,很快很方便。

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

    D 1 条回复 最后回复 2019年11月22日 03:47
  • D 离线
    D 离线
    dyb
    在 2019年11月22日 03:47 中回复了 cccrrryyy 最后由 编辑
    #29

    @cccrrryyy atmBoundaryLayerInletVelocity这个就是一个可赋值的,这是他生成的场很方便,就是不懂怎把这个入口碧边界和InflowGenerator入口边界结合起来,6249a7c8-01ec-441e-b3c3-83d8758e1713-image.png

    C 1 条回复 最后回复 2019年11月22日 06:31
  • C 离线
    C 离线
    cccrrryyy 超神
    在 2019年11月22日 06:31 中回复了 dyb 最后由 编辑
    #30

    @dyb 把两个结合起来肯定是有办法的,就相当于自己写一个边界条件了。但是我感觉这样需要的代码工作量可能很大,因为两部分代码里面都包含一些实际上你不想要管的东西,比如什么构造函数啊之类的,还要去好好的想每个类里面哪些数据和函数应该做成protected,哪些做成public之类的,种种问题。除非你是一个编程高手很熟悉这些东西,不然真的可能工作量太大了。实际上对inflowGenerator来说你就是需要给一个速度的profile,我觉得这个profile你按照之前那个post里面的方法去给就好了,根据位置去确定每个cell的速度是多少的时候你用atmBoundaryLayerInletVelocity里面提到的那个公式即可。

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

    D 1 条回复 最后回复 2019年11月23日 11:55
  • D 离线
    D 离线
    dyb
    在 2019年11月23日 11:55 中回复了 cccrrryyy 最后由 编辑
    #31

    @cccrrryyy 谢谢老师

    1 条回复 最后回复
  • D 离线
    D 离线
    dyb
    在 2019年11月23日 16:19 中回复了 星星星星晴 最后由 编辑
    #32

    @星星星星晴 谢谢老师,我按照老师的方法已经弄出来了

    S 1 条回复 最后回复 2023年11月29日 07:43
  • Z 离线
    Z 离线
    zxx
    在 2020年3月5日 04:44 中回复了 cccrrryyy 最后由 编辑
    #33

    @cccrrryyy https:Eugene de Villiers的扰动在这里//github.com/wyldckat/perturbU

    C 1 条回复 最后回复 2020年3月6日 04:03
2019年8月2日 00:36

23/52

2019年11月20日 13:48

未读 29
2024年7月27日 02:56
  • 登录

  • 登录或注册以进行搜索。
23 / 52
  • 第一个帖子
    23/52
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]