Navigation

    CFD中文网

    CFD中文网

    • Login
    • Search
    • 最新
    1. Home
    2. fangyuanaza
    F
    • Profile
    • Following 1
    • Followers 1
    • Topics 22
    • Posts 82
    • Groups 0

    fangyuanaza

    @fangyuanaza

    25
    Profile views
    82
    Posts
    1
    Followers
    1
    Following
    Joined Last Online

    fangyuanaza Unfollow Follow

    Latest posts made by fangyuanaza

    • python进行OpenFOAM流场后处理

      请教各位老师,在做几组流场图对比的时候,不用软件导出来的图,而是导出数据,用python进行绘制,改如何做呢?比如tecplot形式生成的数据。

      posted in OpenFOAM
      F
      fangyuanaza
    • RE: 如何在docker上同时运行python和open foam

      是,问题是如何让新装的python和open foam在一个docker 的container里面,按官网教程装好open foam后,要在生成的container里面加上python,用代码添加,这部分不知道怎么处理,请问有经验分享么?感觉docker是好,但是不太用户友好

      posted in OpenFOAM
      F
      fangyuanaza
    • RE: 如何监测边界与平面相交线的参数

      @李东岳 感谢老师的回答,抱歉才看到回信,最终解决办法是强制读取边界信息,检测距离边界最近的网格点数据并给出。黄色震荡部分是因为插值了内部网格点和边界值的结果。

      posted in OpenFOAM
      F
      fangyuanaza
    • 如何在docker上同时运行python和open foam

      请教各位老师,有没有尝试过在Mac 系统上 M1 芯片上跑过python与openfoam. 用python命令自动运行openfoam. 我目前是在电脑上用docker成功安装了openfoam7,能运行算例,也能编译新的模型,接着在电脑上安装了anaconda2 和anaconda3,因为有时候需要调试旧的代码。在终端测试2和3都能用,但是进入open foam的环境下是没法运行anaconda的,根本原因应该是这三个软件不在一个container里面。那么如何在现有的安装了openfoam的container下安装python2&3,能让python脚本运行open foam算例呢?

      posted in OpenFOAM
      F
      fangyuanaza
    • 如何监测边界与平面相交线的参数

      请教各位老师,我设置了一个hump算例,需要监测其表面压力与摩擦力分布。其中一个方法是在paraview中实现,仅选中hump底面,用plotoverintersection 可以给定一个平面从而在相交曲线上plot实现。但是我需要这是一个自动化的过程,希望在sampleDict中实现,因此,我取出intersection的坐标,直接剪测这些点。出现的问题是这两种方法结果不一致,后者曲线震荡,怀疑是给的点不精确,给出的监测结果是边界与内部网格插值结果,这种情况怎么处理呢?请各位老师指教。下图红线是前者方法画的摩擦力系数图,黄色线是用后者方法画的:
      988eb2e0-220f-491e-afc1-fd31f1b5fd9f-image.png

      posted in OpenFOAM
      F
      fangyuanaza
    • RE: 如何在湍流模型中读取压力场

      @fangyuanaza 解决了这个问题,代码分享如下,以免大家有需要:

      const volScalarFields& p = this->db().objectRegistry::lookupObject<volScalarField>("p")
      

      经过Info输出发现,确实是每一步的压力场

      posted in OpenFOAM
      F
      fangyuanaza
    • RE: 如何在湍流模型中读取压力场

      @李东岳 学生也include 了header volFields.H, 应该就是两步,一是#include “volFields.H”, 第二是:

      volScalarField p
      (
      IOobject
      (
      "p",
      this->runTime_.timeName(),
      this->mesh_,
      IOobject::MUST_READ,
      IOobject::AUTO_WRITE
      ),
      this->mesh_
      );
      

      控制方程也求解了每步的pressure,不清楚问题出在哪里,请老师指点一下

      posted in OpenFOAM
      F
      fangyuanaza
    • RE: 如何在湍流模型中读取压力场

      @李东岳 有的,计算结果中

      Time = 1 GAMG: Solving for p, Initial residual = 1, Final residual = 0.00833422. 
      

      从残差控制可见求解了控制方程的压力

      posted in OpenFOAM
      F
      fangyuanaza
    • 如何在湍流模型中读取压力场

      请教各位老师~ 想在湍流模型中读取压力场,进行运算后置入湍流输运方程中,采取createField.H中的形式,如下:

      volScalarField p
      (
           IOobject
           (
                "p",
                this->runTime_.timeName(),
                this->mesh_,
                IOobject::MUST_READ,
                IOobject::AUTO_WRITE
           ),
           this->mesh_
      );
      

      可以编译通过,但是运行时候报错:
      cannot find file".../../case/1/p".

      目前是steady case, 1100步保存一次结果。 尝试过用READ_IF_MODIFIED. NO WRITE,都不行。受编程指南启发,尝试加上

      dimensionedScalar
      (
             "p",
             dimensionSet (1,-1,-2,0,0,0,0),
             lookupObject<volScalarField>("p")
      )
      

      报错,没有lookupObject. 请问该如何解决这个问题?p应该是public变量,而且确实在不同时间步都储存了。

      posted in OpenFOAM
      F
      fangyuanaza
    • RE: 后处理得到momentum thickness

      @李东岳 谢谢老师回复~ 离散形式应该是
      452d8cbc-8603-4fc9-b4e7-90a20ad532d0-image.png
      本质上我是想请教如果对某个方向的量进行操作,当对某个量的网格点进行计算是是取parameter[celli], 若x方向不进行操作,有没有类似于cell(i,j)这种表达,可以仅对j的量进行操作?

      posted in OpenFOAM
      F
      fangyuanaza