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中文网

做

做在江湖

@做在江湖
关于
帖子
9
主题
1
群组
0
粉丝
0
关注
0

帖子

最新

  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @CT 很遗憾,没有。我现在转去了别的方向,也不再使用该求解器了。如果只是希望做DSMC模拟而不是必须使用OpenFOAM的话,可以尝试其它开源软件,如Sparta等。


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @coolhhh 我明白了,您不妨试试uniformFixedValue。另外dsmcFoam+的dsmcCloud.C中没有correctBoundaryConditions,我估计是包装在别的函数里了。


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @coolhhh 想请问这个函数的作用是什么,它和evolve函数有什么关系?因为现有设置下boundaryU已经被更新了,但是问题在于其值没有被传递到流场中。函数correctBoundaryConditions作用是读取物理量的边界值并重新设定边界么?


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @coolhhh 在DSMCCloud.C里有使用correctBoundaryConditions()函数,至于我使用的FoamPlus,它的对应文件可能重写了,但是用到了evolve函数。另外我猜想dsmcFoam肯定是有在更新边界值的,不然不能解释boundaryU的变化,但是后者内的信息在每个时间步并没有被求解器重新读取,而是继续沿用 0 时刻的设置。这恐怕是症结所在。


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @coolhhh 在各个时间文件夹里,boundaryU的内容相同:

    boundaryField
    {
        patch1
        {
            type            timeVaryingMappedFixedValue;
            mapMethod       nearest;
            offset          constant (0 0 0);
            value           uniform (1000 0 0);
        }
    

    而按照设置Uy应该是随时间增加的。


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @coolhhh 您好,我有一个新的猜想,根据求解器日志文件log.dsmcFoam+ 第37到77行,生成边界(读取模型、边界上物理量)时对应的时间是初始时刻(0),而后开始时间循环,且之后再没有出现过边界相关的日志信息。猜测 dsmcFoam+ 在开始计算前就将所有边界条件设置好,自动忽略初始时刻以外的边界条件,这就能解释我遇到的问题。可是不太清楚解决方法...


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @coolhhh 您好,关于不同时刻 inlet 的结果,使用 timeVaryingMappedFixedValue 时不同时刻数据没有差异,这显然不太正常。而用 uniformFixedValue 时则有差异。但二者都没能改变 inlet 上的 U 值计算结果(该边界模型,物理量的边界条件和物理量的值分开存放)。同样的设置我在 pimpleFoam 算例中是能实现的,因此大概率还是求解器导致的问题。我现在在尝试读 dsmcFoamPlus 中边界条件的源代码,看看能否找到原因。dsmcFreeStreamInflowFieldPatch.C dsmcFreeStreamInflowFieldPatch.H
    另外我将 endTime 与数据文件夹最大时刻相等,问题仍然存在,我想可以排除这个因素。


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    @coolhhh 谢谢您的建议,不过我尝试了一下,结果还是一样的,dsmcFoam+仍然将我输入的数据当成是定常边界,即仅读取boundaryData中0文件夹下的数据。:135:


  • dsmcFoamPlus定义非定常边界条件的方法
    做 做在江湖

    我希望我算例中的自由来流条件随着时间变化。在 dsmcFoamPlus 中,边界由 boundariesDict 字典文件控制,通过使用其自带的 dsmcFreeStreamInflowFieldPatch 模型,用户可以在 0 文件夹中导入 boundaryXXX 文件,设置速度、温度和密度的各边界上条件。参考:https://github.com/hystrath/hyStrath/issues/84

    boundaryField
    {
        patch1
        {
            type            uniformFixedValue;
            uniformValue	        tableFile;
            uniformValueCoeffs
            {
            	file	     "myFileName";
            }
        }
    }
    

    我在这三个边界控制文件中将入口的 patch 类型设为 uniformFixedValue,并用一个 table 文件存储对应时刻边界上物理量的值,以期望实现一个随时间变化的来流条件。开始运行后,没有出现报错。根据各时间步文件夹中的 boundaryXXX 文件来看,uniformFixedValue 的设置被正确读取,但并没有实际体现在边界的数值(计算结果)上。目前来看,dsmcFoamPlus 会选取 table 文件中某一个时间的值赋给边界,然后定常运算(通常是 0 时刻)。我猜测 dsmcFreeStreamInflowFieldPatch 并不能适用于随时间变化的边界条件。请问有人能帮助我解决这个问题么?

  • 登录

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