边界条件

通用边界条件

以下输入使用 bc 前缀定义。

描述

类型

默认值

regions

用于定义边界条件的区域。

字符串

必须在 BC 区域中定义边界条件的类型。

描述

类型

默认值

[region]

用于定义边界条件类型。可用选项包括:

  • ‘pi’ 表示压力入口 BC 类型

  • ‘po’ 表示压力出口 BC 类型

  • ‘mi’ 表示质量入口 BC 类型

  • ‘nsw’ 表示无滑移壁面 BC 类型

  • ‘eb’ 表示包含 EBs 上温度或流体速度(质量入口)的非齐次 Dirichlet BC

字符串

po_no_par_out

允许颗粒退出(默认)或在压力出口反弹

整数

0

流体设置

对于每个边界条件区域,流体输入使用 bc.[region].[fluid] 前缀定义。

描述

类型

默认值

volfrac

体积分数 [如果 bc_region_type=’mi’ 则需要]

实数

0

density

流体密度 [如果 bc_region_type=’mi’ 或 ‘pi’ 则需要]

实数

0

pressure

流体压力 [如果 bc_region_type=’po’ 或 ‘pi’ 则需要]

实数

0

temperature

流体温度 [如果 bc_region_type=’mi’ 或 ‘pi’ 则需要]

实数

0

velocity

速度分量 [如果 bc_region_type=’mi’ 则需要]

多个实数

0 0 0

delp_dir

指定压力降的方向。注意该方向也应是周期性的。

整数

0

delp

压力降(帕)

实数

0

species.[species0]

物质 ‘species0’ 的质量分数 [如果 solve_species=1 且 bc_region_type=’mi’ 或 ‘pi’,则需要]

实数

0

下面是为流体(fluid)指定边界条件的示例。

bc.regions = inflow outflow

bc.inflow = mi
bc.inflow.fluid.volfrac     =  1.0
bc.inflow.fluid.density     =  1.0
bc.inflow.fluid.velocity    =  0.015  0.0  0.0
bc.inflow.fluid.temperature =  300
bc.inflow.fluid.species.O2  =  0.0
bc.inflow.fluid.species.CO  =  0.5
bc.inflow.fluid.species.CO2 =  0.5

bc.outflow = po

bc.outflow.fluid.pressure =  0.0

瞬态边界条件

速度、温度和压力的边界条件也可以通过增加新列作为时间函数来指定。时间值在新的第一列中输入。我们可以通过替换以下内容使上述 mi 边界条件成为时间依赖的:

bc.inflow.fluid.velocity    =  0.0  0.0    0.0  0.0
bc.inflow.fluid.velocity    =  3.0  0.015  0.0  0.0

bc.inflow.fluid.temperature =  0.0  300
bc.inflow.fluid.temperature =  2.99 300
bc.inflow.fluid.temperature =  3.0  500
bc.inflow.fluid.temperature =  4.0  500
bc.inflow.fluid.temperature =  4.01 300

在上述示例中,入口速度在三秒内从零加速到其最终值。在离散时间值之间使用线性插值,并在最后一个时间值处保持不变。温度在 t = 3s 时从 300 突然跃升至 500,然后在 4s 后回落。注意,时间步长不会调整以与瞬态 BC 同步。

../../_images/transient-bc.png

嵌入边界选项

在 MFIX-Exa 中,可以在嵌入边界上设置边界条件。例如,可以在包含在 BC 区域中的嵌入边界的子部分上为流体温度变量设置非齐次 Dirichlet 边界条件(在这种情况下必须是三维的)。我们回忆一下,在 EBs 的其余部分上,默认情况下假设齐次 Neumann 边界条件。

在下表中列出了可能的 EB 边界条件条目。每个条目必须以 bc.[region0]. 为前缀。

描述

类型

默认值

eb.temperature

包含在(三维)区域中的 EBs 上的温度的非齐次 Dirichlet BC 值 [如果 advect_enthalpy=1 且 bc_region_type=’eb’ 则需要]

实数

0.0

下面是为流体 myfluid 指定边界条件的示例。

bc.regions = hot-wall

bc.hot-walls = eb
bc.hot-walls.eb.temperature = 800

除了温度之外,还可以在嵌入边界上为流体设置入口条件。我们回忆一下,在 EBs 的其余部分上,默认情况下假设无滑移速度条件。

在下表中列出了入口 EB 边界条件的可能条目。每个条目必须以 bc.[region0]. 为前缀。与传统的质量入口一样,在适当的情况下必须提供流体温度、压力和物种组成。

描述

类型

默认值

fluid.velocity

(如果不是 volflow 则需要)在包含在(三维)区域内的 EB 面上的流体入口速度 注意如果只指定一个值,则假定该值是 EB 面法线方向上的大小。

多个实数

0 0 0

fluid.volflow

(如果不是 velocity 则需要)在(三维)区域内的流体体积流量入口 BC 假定流动方向与区域中的 EB 表面垂直。

实数

0

fluid.volfrac

(需要)体积分数。

实数

0

eb.normal

(可选)当指定时,只有法线与指定值平行且相反的 EB 面的单元才会被施加入口速度

多个实数

0 0 0

eb.normal_tol

(可选)与 eb.normal 一起使用。它确定选择具有特定法线的单元的公差(以度为单位)。

实数

0

下面是为区域 eb-flow 指定正常入口速度大小的示例。

bc.regions = eb-flow

bc.eb-flow = eb

bc.eb-flow.my_fluid.volfrac  = 1.0
bc.eb-flow.my_fluid.velocity = 0.1

下面是一个示例,其中只有特定单元在 x 方向上被施加速度。

bc.regions = eb-flow

bc.eb-flow = eb

bc.eb-flow.eb.normal_tol = 3.0
bc.eb-flow.eb.normal =  0.9848  0.0000  0.1736  # 10 度

bc.eb-flow.my_fluid.volfrac  = 1.0
bc.eb-flow.my_fluid.velocity = 0.1  0.0  0.0