ModelInfo.json 配置参考
本目录描述 ModelInfo.json 的当前配置契约。入口从 JSON 根对象开始,各对象类型和数组元素类型均可通过链接继续展开。
文档导航
- 由 JSON Schema 自动生成的机器结构参考
- 下方根类型及各分册说明字段的业务含义、单位和跨字段语义。
JSON Schema 文件布局
model-info.schema.json:根对象、根字段和跨 section 条件。common.schema.json:数值、字符串、通用 object 和复用项类型。solver.schema.json:Solver section。time.schema.json:Time section 及时间控制条件。rigid-body.schema.json:Rigid_Body section 和列表元素。
源码中的多个 Schema 在构建时全部内嵌到 C++ registry,运行时通过 loader 解析
跨文件 $ref,不依赖部署目录。SDK 同时把原始文件安装到
TFluidSDK/share/schema/model-info/v1/,供 Desktop、Server 和工具复用。
约束层级
- 启动校验:
ModelInfoValidator在 Engine lease 和 CUDA 初始化前执行;不满足时直接拒绝启动。 - 运行时约束:C++ 求解器读取对应模块时必须满足;某模块未启用时可不出现。
- Desktop 约束:Desktop 参数编辑器保存前使用的输入约束。文档以 C++ 实际读取字段名为准。
- 未注明兼容拼写时,只应写本文档给出的规范字段名。
- 所有 JSON number 必须是有限数,不能使用
NaN或Infinity。
根类型:ModelInfo
根值必须是 object。当前启动校验允许未知字段,避免破坏已发布算例;未知字段不会自动获得求解器语义。
| 字段 | 必需性 | 类型 | 约束与说明 |
|---|---|---|---|
Version | 必需 | Version | 整数,当前只能为 1。 |
Solver | 必需 | Solver | 求解器、网格来源和模块开关 。 |
Time | 必需 | Time | 时间范围、步长和输出间隔。 |
Property | 必需 | Property | 流体、固体和全局物性。 |
Boundary | 必需 | Boundary | 初值与边界条件列表。 |
Mesh | 条件必需 | Mesh | Solver.mesh_source == "TFluid" 时必需;OpenFOAM 网格可省略。 |
Scheme | 可选 | Scheme | 数值格式、DEM 域、激光和参考压力。 |
Phase | 可选 | Phase | 相分布初始化。 |
Pressure | 可选 | Pressure | 压力场的区域化初始化。 |
Velocity | 可选 | Velocity | 速度场的区域化初始化。 |
Temperature | 可选 | Temperature | 温度场初始化。 |
Porous | 可选 | Porous | 多孔介质参数和分区。 |
Tag | 可选 | Tag | 标签场初始化。 |
Wire | 可选 | Wire | 丝材区域及送丝参数。 |
Mesh_delete | 可选 | MeshDelete | 几何删除与浸没边界预处理。 |
Move_Boundary | 可选 | MoveBoundary | 运动边界几何。 |
Wave | 可选 | Wave | 造波与消波区域。 |
DEM | 可选 | DEM | 球形颗粒、材料组、墙面和伺服。 |
Rigid_Body | 可选 | RigidBody | 非球形刚体、固定体、连接和材料。 |
PFM | 可选 | PFM | 相场断裂参数。 |
Crack | 可选 | Crack | 初始裂纹几何。 |
AMG_TFluid | 可选 | AmgTFluid | TFluid AMG 收敛参数。 |
Restart_ID | 可选 | RestartId | 0 或 1;缺省等价于不重 启。 |
reuse_name_list | 可选 | ReuseNameList | 需要从已有结果复用的变量名数组。 |
文档导航
- 由 JSON Schema 自动生成的机器结构参考
- 公共标量、向量、区域和引用类型
- Version、Solver 和 Time
- Mesh、Mesh_delete、Move_Boundary 和 Wave
- Property、Phase、Pressure、Velocity、Temperature、Porous、Tag 和 Wire
- Boundary、Scheme、PFM、Crack、AMG 和 Restart
- DEM
- Rigid_Body
最小配置
{
"Version": 1,
"Solver": {"solver_type": "single_phase", "mesh_source": "TFluid"},
"Time": {
"start_time": 0,
"end_time": 1,
"time_control": "time_step",
"time_step": 0.001,
"write_interval": 0.1
},
"Mesh": {"part_list": []},
"Property": {},
"Boundary": {}
}
该示例只展示启动校验所需形状;真正运行 TFluid 网格和求解器时,Mesh.part_list、物性和边界内容还必须符合对应模块文档。