Skip to content

OpenFOAM

OpenFOAM交流区

5.2k 主题 30.9k 帖子
  • 2 帖子
    3k 浏览
    chpjz0391C

    我感觉系统不同,时间也会多少有点不同吧 就算同样的配置。 虚拟机win系统,ubuntu直接跑 感觉ubuntu跑得快。虚拟机毕竟你要分配内存给他,而你用ubuntu直接跑直接调用系统内存。所以我觉得直接跑省时间。

  • 5 帖子
    6k 浏览
    chpjz0391C

    @cfd-china 这个东西之前是写给DPMFoam的。。然后我搬到我这边了。。就出现这样了。

  • 21 帖子
    19k 浏览

    @cfd-china 非常感谢您的指导,但依旧希望您有空的时候帮忙设置一下我的那个算例,对我们这些新手的参考作用确实非常大

  • 关于李东岳老师icoFoam求解器解析细节问题

    10
    10 帖子
    14k 浏览
    金石为开

    @李东岳 东岳老师我想说一下自己的理解,不知道对不对:最后速度更新的时候,U = HbyA - rAUfvc::grad(p)中HbyA是通过HbyA = rAUUEqn.H();//公式(15)得出的吧,也就是Ur,预测的速度而不是n+1步的速度对不?我还没看SIMPLE,不过按照我的理解是不是HbyA要随着速度变化不断更新?那内迭代的最终截止条件是什么呢?非常感谢!

  • wmake时候出错,求大神指导

    8
    8 帖子
    9k 浏览

    @cfd-china 我在文件里找到了#include "compressible/turbulentModel/turbulenceModel.H这行代码,修改成#include "turbulenceModel.H这样后出现了差不多的报错0_1464072322810_upload-7effb60a-4303-444d-8e08-203e98037205

  • 1 帖子
    2k 浏览
    chpjz0391C

    最近找了好多方法来求浓度,都不行,但是controlDic下面的function功能好像可以实现这个功能,有谁有相关经验么?@散漫守望2016

  • 16 帖子
    14k 浏览

    @sejabs 主要是就找到这个例子是比较接近我要做的模型,其他的尚未找到

  • 8 帖子
    11k 浏览
    W

    @cfd-china 我试试,谢谢

  • OF怎么冻结流场来节省模拟时间?

    14
    14 帖子
    13k 浏览
    chpjz0391C

    @wwzhao 好没关系 谢谢您

  • 怎样在主程序中添加correct() 函数?

    4
    4 帖子
    4k 浏览
    M

    怎样在主程序中添加correct( ); 来在更新类中的 rho1()rho2() p()

  • 关于代码里面token类

    2
    2 帖子
    3k 浏览
    C

    暂时还没研究过这个类:sad: ....

  • 2 帖子
    4k 浏览
    C

    @gzh3369

    如果公式是这样的话:$x=\frac{\sum V_i x_i}{\sum V_i}$。可以这样:

    forAll(x, celli)//对所有的体x进行计算 { x[celli] = x[celli] *mesh.V()[celli];//此处即为每个网格的x*网格体积 } scalar sumx = gSum(x);//对所有的x*网格体积进行加和 scalar V = gSum(mesh.V());//计算总网格体积 scalar Final = sumx/V;//计算体均湍流动能耗散率 Info << runTime.timeName() <<" volume average x is "<<x<<endl;//输出结果
  • 4 帖子
    4k 浏览
    WayneW

    楼主好人 w-y10@foxmail.com

  • 改写函数变为类之后代码反而变快

    1
    1 帖子
    1k 浏览
    C

    据我所知,在面向对象由于添加了RTTI机制、构造函数机制会使得程序相对于使用一个函数变得稍微慢。当然这个慢我们基本看不到。

    在实际使用中,在我改写一个非常复杂的函数为一个类的时候,反而程序变得更快了。这是什么原因造成的?

    比如我执行这个外挂函数:

    ... A(a, b, c, d, e, f, g, h, e, j, k, m, n, z); ...

    反而不如把他改写为类快:

    ... A B(a, b, c, d, e, f, g, h, e, j, k, m, n, z); B.calculateA(); ...

    目前的认知存在于类要比公式慢一点点。不过这个认知被自身的测试推翻了。

    Any ideas?

    :sunglasses:

  • 怎么理解OpenFoam中的runTimeSelection机制?

    2
    2 帖子
    4k 浏览
    X

    @金石为开 本质上是 hashTable 的使用。在基类里调用宏函数 declareRunTimeSelectionTable 创建了一个 hashTable,其 key 的类型为 “word”,value 类型为函数指针,这个函数指针指向一个返回派生类临时对象的智能指针(autoPtr)。

    在派生类里,每次调用 addToRunTimeSelectionTable 的时候,相当于往 hashTable 里添加一组元素。

    在求解器里,创建的是基类的智能指针,这个指针指向基类中定义的 New 函数的返回值。New 的作用是选择具体的派生类,这里涉及到C++的一个特性,即基类指针可以指向派生类。New 函数根据你在算例里提供的模型的名字(typeName),去 hashTable 里匹配,然后将匹配到的派生类的对象返回。这样,就实现了模型的选择。

    具体参考:http://xiaopingqiu.github.io/2016/03/12/RTS1/

  • 5 帖子
    6k 浏览
    H

    @cfd-china 多谢啦,我试试!

  • 诸如inletOutlet等混合边界条件的inletValue如何给

    3
    3 帖子
    6k 浏览
    C

    @Aeronastro

    在tutorial中,通常如此:

    outlet { type inletOutlet; inletValue uniform (0 0 0); value uniform (20 0 0); }

    这可以有效地防止回流
    如果直接给定zeroGradient,可以出现回流;

    可以拿一个回流特别明显的算例来试试,比如一个涡旋伸展后方的流动。进口速度(1,0,0),出口的inletValue是(-1,0,0)。看是否不可压缩算例能否守恒。

    :kiss:

  • 运行出错..有知道的吗

    7
    7 帖子
    7k 浏览
    W

    @mark 信息量太少,我无法判断问题原因。不过你可以根据截图中的back trace去找错误。

  • 2 帖子
    3k 浏览
    chpjz0391C

    nparticles 是不是就是那个颗粒数量?

  • 压力入口边界条件

    4
    4 帖子
    5k 浏览
    M

    0_1462776631144_QQ截图20160509145537.png

    dimensions [0 1 -1 0 0 0 0];

    internalField uniform (0 0 0);

    boundaryField
    {

    INLET
    {
        type fixedValue;
     
       value uniform (0 0 0);
    }

    WALL { type fixedValue; value uniform (0 0 0); } OUTLET { type pressureInletOutletVelocity; inletValue uniform (0 0 0); value uniform (0 0 0); }

    }

    // ************************************************************************* //
    ```
    这样写对不对?