首页/文章/ 详情

OpenFOAM|07 Case文件结构

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
优秀教师/意见领袖/博士学历/特邀专家
平台推荐
内容稀缺
4年前浏览3152

本文描述OpenFOAM中的文件组织结构。

  • OpenFOAM使用非常特殊的目录结构来运行案例
  • 应始终遵循目录结构,否则OpenFOAM会发出警告
  • 为防止出错,案例目录通常位于路径$WM_PROJECT_USER_DIR/RUN中,但这不是强制性的,但通常建议这么做。用户可以把案例文件复制到任何位置
  • 案例目录名称由用户自己指定(请勿使用空格或奇怪符号)
  • 使用的求解器不同,子目录中可能需要不同的文件
  • 记住始终在案例目录(名称为CASE_NAME的目录)的顶层运行求解器

典型的文件组织结构如下图所示。

case文件夹中包含三个子目录:

  • 0文件夹:包含边界条件与初始条件
  • constant文件夹:包含网格参数、物理属性、湍流模型参数、物理模型参数等
  • system文件夹:包含运行时控制参数与求解器数值格式等

1 0文件夹

0文件夹中包含有求解器计算所需的边界条件与初始条件。如上图中0文件中包含文件U与文件p,其中分别存储边界上的速度与压力值。0文件夹表示存储的是0时刻的数据,若为瞬态计算,在计算过程中还会生成以时间为名称的新的文件夹。

如示例中的p文件内容:

FoamFile
{
   version     2.0;
   format      ascii;
   class       volScalarField;
   object      p;
}
// * * * * * * * * * * * * * * * //
dimensions      [0 2 -2 0 0 0 0];
internalField   uniform 0;
boundaryField
{
   movingWall
   {
       type            zeroGradient;
   }

   fixedWalls
   {
       type            zeroGradient;
   }

   frontAndBack
   {
       type            empty;
   }
}

文件中指定了各边界(movingWall、fixedWalls以及frontAndBack)上的压力值,如上的示例中,利用关键字internalField uniform 0指定了全局压力为0,并指定movingWall边界与fixedWalls边界的压力为zeroGradient

在p文件中,通过dimensions关键字指定了压力的量纲,需要注意这里的量纲是单位质量的压力,其单位为帕斯卡与密度单位的商,即m2/s2

在文件头中指定了文件版本、格式类型、物理量类型以及对象。

FoamFile
{
   version     2.0; //指定版本为2.0
   format      ascii; //指定文件存储格式为ascii
   class       volScalarField; //指定物理量类型为标量场
   object      p; //指定对象为压力p
}

对于U文件,则指定了各边界对应的速度信息。如下面的U文件:

FoamFile
{
   version     2.0;
   format      ascii;
   class       volVectorField;//指定物理场为矢量场
   object      U;
}
// * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0]; //指定物理量单位为m/s

internalField   uniform (0 0 0); //指定计算区域内部速度为0

boundaryField
{
   movingWall
   {
       type            fixedValue;
       value           uniform (1 0 0);
   }

   fixedWalls
   {
       type            noSlip;
   }

   frontAndBack
   {
       type            empty;
   }
}

2 constant文件夹

constant文件夹通常用于指定网格参数、物性参数等。

如前面的示例中,网格数据存储在子文件夹polyMesh中,该文件夹下包含的文件(boundary、faces、neighbour、owner、points)存储了网格细节。

物性参数存储在文件transportroperties中,如下面的示例中指定了运动粘度为0.01 m2/s。

FoamFile
{
   version     2.0;
   format      ascii;
   class       dictionary;
   location    "constant";
   object      transportProperties;
}
// * * * * * * * * * * * * * * //
nu              [0 2 -1 0 0 0 0] 0.01;

需要注意的是,当选用的求解器不同时,constant文件夹中可能需要补充额外的文件,如选择了湍流模型,则可能需要在constant文件夹中添加湍流参数文件。

3 system文件夹

system文件夹中包含了所有计算过程中需要进行设置与控制的参数。如前面的示例中,system文件夹中包含了4个文件:

  • blockMeshDict:指定blockMesh所需的网格控制参数
  • controlDict:指定计算求解参数,如时间步长、时间步数、输入输出时间、场数据的读取与写入等
  • fvSchemes:指定有限体积法的离散格式
  • fvSolution:指定方程组矩阵求解器、残差以及其他算法控制


仿真体系网格处理代码&命令OpenFOAM
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2020-11-04
最近编辑:4年前
CFD之道
博士 | 教师 探讨CFD职场生活,闲谈CFD里外
获赞 2566粉丝 11299文章 734课程 27
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈