Error message

Deprecated function: The each() function is deprecated. This message will be suppressed on further calls in menu_set_active_trail() (line 2405 of /home/www/rheoworks/includes/menu.inc).

blockMeshDict 文件解析及格式

blockMeshDict 文件是 OpenFOAM 生成网格的方法之一 blockMesh 所需要使用的配置文件,位于 constant/polyMesh/。 以 cavity 为例,其基本结构如下:

convertToMeters 0.1; // 单位转换因子,换算成 m

vertices  // 各关键点坐标 (x y z),编号遵循 C/C++ 规则,从 0 开始
(
    (0 0 0) // 点 0
    (1 0 0)
    (1 1 0)
    (0 1 0)
    (0 0 0.1)
    (1 0 0.1)
    (1 1 0.1)
    (0 1 0.1) // 点 7 
);

blocks // 块的定义
(
    hex (0 1 2 3 4 5 6 7) (20 20 1) simpleGrading (1 1 1) 
    // 以块划分网格,形成块的顶点为 (0 1 2 3 4 5 6 7)
);

edges // 边的定义,可以有 arc, polyLine, ...
(
);

boundary // 边界定义
(
    movingWall
    {
        type wall; // 边界类型
        faces // 面
        (
            (3 7 6 2)
        );
    }
    fixedWalls
    {
        type wall;
        faces
        (
            (0 4 7 3)
            (2 6 5 1)
            (1 5 4 0)
        );
    }
    frontAndBack
    {
        type empty; // 空的边界,表示不做计算
        faces
        (
            (0 3 2 1)
            (4 5 6 7)
        );
    }
);

mergePatchPairs // 
(
);