跳到主要内容

ModelInfo v1 JSON Schema 结构参考

返回根类型

本页由 schemas/model-info/v1/*.schema.json 自动生成,记录 C++、Desktop、Server 和工具可共同使用的机器可读结构契约。物理意义、单位和模块细节仍以其他手写分册为准。

JSON Schema 负责类型、required、enum、数组元素和局部范围。跨字段大小关系、数组索引引用、文件存在性以及 GPU/运行环境条件由 C++ ModelInfoValidator 校验。

根对象​

TFluid 算例的根结构契约。各核心 section 由同目录的独立 Schema 定义。

字段必需性类型结构约束说明
Version必需integer,固定值 1—ModelInfo 格式版本。
Solver必需Solver——
Time必需Time——
Property必需ObjectSection——
Boundary必需ObjectSection——
Mesh条件必需ObjectSection——
Scheme可选ObjectSection——
Phase可选ObjectSection——
Pressure可选ObjectSection——
Velocity可选ObjectSection——
Temperature可选ObjectSection——
Porous可选ObjectSection——
Tag可选ObjectSection——
Wire可选ObjectSection——
Mesh_delete可选ObjectSection——
Move_Boundary可选ObjectSection——
Wave可选ObjectSection——
DEM可选ObjectSection——
Rigid_Body可选RigidBody——
PFM可选ObjectSection——
Crack可选ObjectSection——
AMG_TFluid可选ObjectSection——
Restart_ID可选integer:0、1—0=从初始条件启动,1=复用已有结果。
reuse_name_list可选array<ReuseName>—从已有结果复用的变量名称。

FiniteNumber​

有限 JSON number。

类型结构约束
number≥ -1.7976931348623157e+308;≤ 1.7976931348623157e+308

PositiveNumber​

严格大于 0 的有限 JSON number。

类型结构约束
FiniteNumber> 0

NonEmptyString​

至少包含一个字符的 JSON string。

类型结构约束
string长度 ≥ 1

ObjectSection​

由对应求解模块继续解释的 object。

类型结构约束
object—

ReuseName​

字段必需性类型结构约束说明
variable_name必需NonEmptyString——

Solver​

求解器类型、网格来源和模块开关。

字段必需性类型结构约束说明
solver_type必需NonEmptyString——
mesh_source必需string:TFluid、OpenFOAM、openfoam—TFluid 内建网格或 OpenFOAM 网格。openfoam 是已发布算例兼容拼写。

Time​

时间范围、时间步控制和结果输出间隔。

字段必需性类型结构约束说明
start_time必需FiniteNumber——
end_time必需FiniteNumber——
time_control必需string:time_step、courant_number、Courant_number、file_input——
time_step必需PositiveNumber——
write_interval必需PositiveNumber——
courant_number可选PositiveNumber——
file_name可选NonEmptyString——

RigidBody​

非球形刚体、固定体、边界体和材料列表。

字段必需性类型结构约束说明
property_list可选array<object>——
rigid_body_list可选RigidBodyEntryList——
fixed_body_list可选RigidBodyEntryList——
boundary_body_list可选RigidBodyEntryList——

RigidBodyEntry​

刚体列表元素;property_ID 的数组上界由 C++ 语义校验。

字段必需性类型结构约束说明
property_ID可选integer≥ 0—

RigidBodyEntryList​

类型结构约束
array<RigidBodyEntry>—