高级

测试 / 调试

以下输入必须以 “mfix.” 为前缀。

描述

类型

默认值

verbose

MFIX-Exa 例程中的详细程度

Int

0

ooo_debug

如果为真,则打印当前所在例程的名称

Bool

False

only_print_grid_report

不进行模拟的时间推进。仅生成网格报告并退出。

Bool

False

以下输入必须以 “amrex.” 为前缀。

描述

类型

默认值

fpe_trap_invalid

如果遇到无效的浮点异常,则中止。

Int

0

fpe_trap_zero

如果计算出除以零,则中止。

Int

0

fpe_trap_overflow

如果检测到溢出,则中止。

Int

0

GPU 内存

以下输入必须以 “amrex.” 为前缀。

描述

类型

默认值

the_arena_is_managed

如果遇到无效的浮点异常,则中止。

Int

0

the_arena_init_size

如果检测到溢出,则中止。

Int

0

abort_on_out_of_gpu_memory

如果计算出除以零,则中止。

Int

0

负载均衡

注意,当运行粒状模拟时,即没有流体相, mfix.dual_grid 必须为 0。因此, particles.max_grid_size (在每个方向上)没有意义。因此,应该为粒子负载均衡设置流体网格和块大小。也可能需要将阻塞因子设置为 1。

以下输入必须以 “mfix.” 为前缀,并确定我们如何进行负载均衡:

描述

类型

默认值

dual_grid

如果为真,则使用 “dual_grid” 方法进行负载均衡

Bool

False

regrid_int

重新网格的频率(在 0 级的步数) 如果 regrid_int = -1,则不会发生重新网格

Int

-1

load_balance_fluid

仅当 (dual_grid) 为真时相关;如果是这样,我们也重新网格化网格数据

Int

0

load_balance_type

用于负载均衡的策略 选项为 “KnapSack”, “SFC”, 或 “Greedy”

String

KnapSack

knapsack_weight_type

如果使用 Knapsack 负载均衡,则使用的加权函数 选项为 “RunTimeCosts” 或 “NumParticles”

String

RunTimeCosts

knapsack_nmax

如果使用 knapsack 算法,每个 MPI 进程的最大网格数

Int

128

greedy_dir

贪婪算法切割超载盒子的方向

Int

0

greedy_min_grid_size

在贪婪负载均衡算法中的最小粒子网格大小

Int

2

greedy_3d

使用贪婪算法在 3D 中划分粒子网格

Bool

False

overload_tolerance*

贪婪算法中最大工作负载与平均工作负载之间的比率

Real

1.2

underload_tolerance*

贪婪算法中最小工作负载与平均工作负载之间的比率

Real

0.8

grid_pruning

从基础网格中移除所有覆盖的网格;这可能导致不连通的网格

Bool

False

* 贪婪划分算法使用容差设置每个排名的预期工作负载范围,但不严格执行它们。算法创建一个尽可能平衡的划分,即使划分不符合容差。

为了允许用户在运行完整模拟之前验证生成的流体网格的分解,支持输入选项 mfix.only_print_grid_report。默认情况下,它是 False。当设置为 True 时,运行使用最小内存打印网格覆盖报告并在此后立即退出。

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

描述

类型

默认值

max_grid_size_x

粒子网格数组中每个网格在 x 方向的最大单元数(0 级) 如果 dual_grid 为真

Int

32

max_grid_size_y

粒子网格数组中每个网格在 y 方向的最大单元数(0 级) 如果 dual_grid 为真

Int

32

max_grid_size_z

粒子网格数组中每个网格在 z 方向的最大单元数(0 级) 如果 dual_grid 为真。

Int

32