Navigation

    CFD中文网

    CFD中文网

    • Login
    • Search
    • 最新
    1. Home
    2. wwzhao
    W
    • Profile
    • Following 0
    • Followers 59
    • Topics 3
    • Posts 390
    • Groups 1

    wwzhao

    @wwzhao

    教授

    3620
    Profile views
    390
    Posts
    59
    Followers
    0
    Following
    Joined Last Online
    Website marinecfd.xyz

    wwzhao Unfollow Follow
    教授

    Best posts made by wwzhao

    • RE: [C++] VectorSpace.H

      这个VectorSpace是OpenFOAM中的primitive type,所有的primitive type都需要能够使用C++的萃取(traits)技术提炼基本信息。

      话说OpenFOAM把C++的高级特性都用上了,这架构设计的水平实在是高!

      posted in OpenFOAM
      W
      wwzhao
    • RE: fvSolution问题

      @mark 这个是正则表达式,不是指针。"U.*" 代表所有以 U 开头的字符串(包括 U 本身)。

      PIMPLE 算法中的最后一次外循环迭代的求解参数用都会在场量后加上 Final,如 UFinal 等。U.* 代表所有循环迭代(包括最后一次循环迭代)都使用相同的求解参数。

      posted in OpenFOAM
      W
      wwzhao
    • RE: 编译自己的求解器遇到问题“undefined reference”

      说明一下:

      1、换行符(\)不能随便用,必须用在行尾。如果用在行中间,那么换行符后面的内容都会被忽略,所以你加的 -lnetPanel 没用。

      2、-lfoo 会找名为 libfoo.so 的库文件,-l:bar.so 则会找 bar.so 文件,这是 gcc 的链接规则。

      posted in OpenFOAM
      W
      wwzhao
    • RE: 关于源项处理方法fvm::su和fvm::sp的疑问

      @浪迹天大

      总结的不错。

      Su Sp 是灵活处理源项的方法,正确使用方法如下:

      1、若源项为负,如你举的例子中的 -30,一般写作 $\frac{-30}{k^{old}}k$,$k^{old}$ 代表上一时刻的值,采用 fvm::Sp 离散后,源项就进入 [A] 中对角元素,使对角元素更占优。

      2、若源项为正,如你举的例子中的 50,则直接用 fvm::Su 离散,源项进入右端项 [b] 中。

      3、若源项是一个有正有负的 volScalarField,则利用 fvm::SuSp 离散,它会判断源项每个网格单元的正负号,然后选择用 Su 还是 Sp 的方法进行处理。

      以上方法的最终目的都是增加矩阵对角占优,使线性方程组的迭代更稳定,更容易收敛。

      posted in OpenFOAM
      W
      wwzhao
    • RE: Can not find patchField entry for XXX 的问题该怎么解决呢

      OUTLET的value这行后面少了个分号。

      posted in OpenFOAM
      W
      wwzhao
    • RE: win10 ubuntu bash 下编译OpenFOAM遇到的问题

      没安装make

      posted in OpenFOAM
      W
      wwzhao
    • RE: 关于laplacian((1/A(U)),p)的疑惑与icoFoam.dep文件的疑惑

      @d-benjamin

      1. 离散格式指定的关键词与其名称有关。

      如果在声明变量的时候指定名称:

      volScalarField rAU(1.0/UEqn.A(), "rAU");
      

      那么可以在字典文件中用以下语句指定离散格式

      laplacian(rAU,p) Gauss linear corrected
      

      在声明rAU时不指定名称:

      volScalarField rAU(1.0/UEqn.A());
      

      那么rAU的名称通过量纲以及符号运算得到,1.0/UEqn.A()的名称为(1|A(U)),因此相应的离散格式应该写作:

      laplacian((1|A(U)),p) Gauss linear corrected
      
      1. 博客的例子OpenFOAM版本太老。OpenFOAM 2.x以前生成的dep依赖文件和源文件同目录,后续版本已经将这些文件移动到其他目录。
      posted in OpenFOAM
      W
      wwzhao
    • RE: 有关GPU计算

      @lhzhu

      在计算大规模问题时,采用多个GPU进行计算,在不同的GPU之间进行数据传输是个问题。不过现在好像已经有这个技术了。

      另外还有GPU和CPU数据传输速率的限制,不过这个在Maxwell架构中似乎已经不成问题了。

      不管怎么说,GPU在高性能计算领域普及开来还有很长一段路需要走。

      posted in OpenFOAM
      W
      wwzhao
    • RE: 程序在并行的时候出现下面的错误,单核运行没有错误

      @Aeronastro

      思路没问题,建议你用OpenFOAM的mpirunDebug来调试并行程序。

      posted in OpenFOAM
      W
      wwzhao
    • RE: projection method 真的比piso快吗?

      @mohui 感谢分享!

      1. 试了一下cavity算例,可以正常跑完。

      2. 将system/fvSolution里面的压力求解器的relTol设为0就可以使残差降下来,不过相应的矩阵求解迭代步要增加。

      posted in OpenFOAM
      W
      wwzhao

    Latest posts made by wwzhao

    • RE: fvSolution问题

      @Micro final就是PIMPLE循环的最后一步。

      posted in OpenFOAM
      W
      wwzhao
    • RE: 不规则多孔介质的网格划分

      @hongjiewang 看起来应该没问题,中间的网格密是因为用refinement region加密过了。

      posted in OpenFOAM
      W
      wwzhao
    • RE: 不规则多孔介质的网格划分

      @hongjiewang 不需要对两个区域分别划分,利用 sHM 可以直接同时生成一整套网格。cellZoneFromSTL.png

      posted in OpenFOAM
      W
      wwzhao
    • RE: 不规则多孔介质的网格划分

      @hongjiewang 不需要merge,只需要一个 case 文件夹就行。

      posted in OpenFOAM
      W
      wwzhao
    • RE: 不规则多孔介质的网格划分

      @hongjiewang 在 不规则多孔介质的网格划分 中说:

      对于一些简单几何模型直接采用topoSet是可行的,对于不规则的还是需要借助stl进行区域的设定。

      你在另一个帖子里问我了,我在这里回复你吧。

      在 snappyHexMeshDict 里面可以通过 STL 文件(必须封闭)指定 cellZone。例如:

      geometry
      {
          sphere
          {
              type triSurfaceMesh;
              file "sphere.stl";
          }
      };
      
      refinementSurfaces
      {
          sphere
          {
              level (0 0);           
              faceZone sphere1;
              cellZone sphere1;
              cellZoneInside inside;
          }
      }
      
      posted in OpenFOAM
      W
      wwzhao
    • RE: 关于snappyHexMesh

      @Stan同学 在 关于snappyHexMesh 中说:

      @wwzhao
      您好,想向您请教个小问题。

      前面这个网址 https://sites.google.com/site/snappywiki/ 里讲到如果要添加边界层,需要指定具体的patch,但是我不太清楚stl文件内部是如何定义各个patch的,请问有什么办法或者用什么软件来打开stl文件从而获取里面的patch信息吗?

      :135:

      在生成stl文件时应该给solid命名,以区分stl中的不同patch。

      @Stan同学 在 关于snappyHexMesh 中说:

      另外想请问您说的每个patch单独保存一个stl文件,这个用CAD软件可以实现吗 ?
      (之前一直是用的CAD导出stl文件,应该是您说的整个区域为一个stl文件)

      这个可以通过FreeCAD实现。

      posted in OpenFOAM
      W
      wwzhao
    • RE: openfoam插值

      插值只对patch进行,和是否并行无关。并行对local patch进行插值。

      posted in OpenFOAM
      W
      wwzhao
    • RE: openfoam插值

      @Samuel-Tu primitivePatchInterpolation

      posted in OpenFOAM
      W
      wwzhao
    • RE: local index to global index

      faceProcAddressing是并行用的,将local face id转换成global face id。

      posted in OpenFOAM
      W
      wwzhao
    • RE: 【红包】OpenFOAM 怎么 homebrew ?

      @heike256 试试 spack。

      posted in OpenFOAM
      W
      wwzhao