跳转到内容

任务配置参数

本文档列出 TopMat 各任务类型在 POST /api/v2/task 接口中需要传入的 task_config 字段。enginetitleomp_threadsno_cache 等外层字段请参考任务接口

task_config 示例:单点平衡计算
{
"task_type": "point_calculation",
"tdb_code": "TOPDB-B-C-Si-Zr-Hf-La-Y-Ti-O.TOPDB",
"task_path": "examples/framework_demo/result/point_calculation_1",
"condition": {
"components": ["HF", "C"],
"activated_phases": ["LIQUID", "HCP_A3_HF"],
"temperature": 300,
"pressure": 101325,
"compositions": { "HF": 0.7, "C": 0.3 },
"topthermo_outputs": ["T", "P", "phase_name", "x(*)", "G", "H", "S"]
}
}
字段类型必填说明
task_typestring固定为 point_calculation
tdb_codestring热力学数据库代码,可通过数据库接口发现。
task_pathstring结果输出路径。
condition.componentsstring[]参与计算的组分列表。
condition.activated_phasesstring[]允许参与平衡计算的相,空数组表示不限制。
condition.temperaturenumber计算温度(K)。
condition.pressurenumber计算压力(Pa),必须大于 0。
condition.compositionsobject各组分摩尔分数,如 { "HF": 0.7, "C": 0.3 }
condition.topthermo_outputsstring[]需要输出的热力学量。
condition.outputs_list_templatestring[]可选输出项的有序模板;自定义输出项应追加在模板末尾。
task_config 示例:线计算
{
"task_type": "line_calculation",
"tdb_code": "TOPDB-B-C-Si-Zr-Hf-La-Y-Ti-O.TOPDB",
"task_path": "examples/framework_demo/result/line_calculation_1",
"condition": {
"components": ["HF", "C"],
"compositions_start": { "HF": 0.8, "C": 0.2 },
"compositions_end": { "HF": 0.8, "C": 0.2 },
"temperature_start": 300,
"temperature_end": 3000,
"pressure": 101325,
"points": 101,
"activated_phases": [],
"topthermo_outputs": ["T", "P", "phase_name", "x(*)", "G", "H", "S"]
}
}
字段类型必填说明
task_typestring固定为 line_calculation
tdb_codestring热力学数据库代码,可通过数据库接口发现。
condition.componentsstring[]参与计算的组分列表。
condition.compositions_startobject起始成分。
condition.compositions_endobject终止成分。
condition.temperature_startnumber起始温度(K)。
condition.temperature_endnumber终止温度(K)。
condition.pressurenumber固定压力(Pa),必须大于 0。
condition.pointsinteger扫描点数,必须为正整数;存在变量范围变化时至少为 2。
condition.activated_phasesstring[]允许参与计算的相。
condition.topthermo_outputsstring[]需要输出的热力学量。
condition.outputs_list_templatestring[]可选输出项的有序模板;自定义输出项应追加在模板末尾。
task_config 示例:二元相图计算
{
"task_type": "binary_equilibrium",
"tdb_code": "TOPDB-B-C-Si-Zr-Hf-La-Y-Ti-O.TOPDB",
"task_path": "examples/framework_demo/result/binary_equilibrium_1",
"activated_elements": ["C", "HF"],
"condition": {
"components": ["C", "HF"],
"compositions_start": { "C": 1.0, "HF": 0.0 },
"compositions_end": { "C": 0.0, "HF": 1.0 },
"temperature_start": 1000,
"temperature_end": 6000,
"pressure": 101325,
"activated_phases": ["GAS", "LIQUID", "HCP_A3_HF", "DIAMOND_A4", "HFC", "BCC_A2", "GRAPHITE"]
}
}
字段类型必填说明
task_typestring固定为 binary_equilibrium
tdb_codestring热力学数据库代码,可通过数据库接口发现。
activated_elementsstring[]Web 控制台使用的激活元素列表,应与 condition.components 一致且包含 2 个元素。
order_disorderobject有序–无序相边界高级配置;省略时不覆盖计算核心的默认策略。
condition.componentsstring[]二元体系的两个组分。
condition.compositions_startobject起始成分。
condition.compositions_endobject终止成分。
condition.temperature_startnumber起始温度(K)。
condition.temperature_endnumber终止温度(K)。
condition.pressurenumber固定压力(Pa),必须大于 0。
condition.activated_phasesstring[]允许参与计算的相。

order_disorder 支持 enabledtrace_boundariesstability_filterplot_boundaries 等布尔开关;phase_scope 可为 order_disorderalltrace_method 当前仅支持 branch_continuation。容差、采样点数、细化层数和绘图参数的精确类型与约束见 OpenAPI 规范中的 OrderDisorderConfig

task_config 示例:热力学性质计算
{
"task_type": "thermodynamic_properties_next",
"tdb_code": "TOPDB-B-C-Si-Zr-Hf-La-Y-Ti-O.TOPDB",
"task_path": "examples/framework_demo/result/thermodynamic_properties_next_1",
"condition": {
"components": ["HF", "C"],
"compositions_start": { "HF": 0.8, "C": 0.2 },
"compositions_end": { "HF": 0.8, "C": 0.2 },
"temperature_start": 300,
"temperature_end": 3000,
"pressure": 101325,
"points": 101,
"activated_phases": [],
"topthermo_outputs": ["T", "P", "phase_name", "x(*)", "G", "H", "S", "Cp"]
}
}
字段类型必填说明
task_typestring固定为 thermodynamic_properties_next
tdb_codestring热力学数据库代码,可通过数据库接口发现。
condition.componentsstring[]参与计算的组分列表。
condition.compositions_startobject起始成分。
condition.compositions_endobject终止成分。
condition.temperature_startnumber起始温度(K)。
condition.temperature_endnumber终止温度(K)。
condition.pressurenumber固定压力(Pa),必须大于 0。
condition.pointsinteger温度扫描点数,必须为正整数;存在变量范围变化时至少为 2。
condition.activated_phasesstring[]允许参与计算的相。
condition.topthermo_outputsstring[]需要输出的热力学量,如 Cpmu(*) 等。
condition.outputs_list_templatestring[]可选输出项的有序模板;自定义输出项应追加在模板末尾。
task_config 示例:Scheil 凝固模拟
{
"task_type": "scheil_solidification",
"tdb_code": "TOPDB-B-C-Si-Zr-Hf-La-Y-Ti-O.TOPDB",
"task_path": "examples/framework_demo/result/scheil_solidification_1",
"condition": {
"components": ["SI", "ZR"],
"compositions": { "ZR": 0.4, "SI": 0.6 },
"start_temperature": 4000.0,
"temperature_step": 1.0,
"pressure": 101325,
"activated_phases": [],
"inhibit_phases": []
}
}
字段类型必填说明
task_typestring固定为 scheil_solidification
tdb_codestring热力学数据库代码,可通过数据库接口发现。
condition.componentsstring[]参与计算的组分列表。
condition.compositionsobject合金初始成分。
condition.start_temperaturenumber凝固起始温度(K)。
condition.temperature_stepnumber温度步长(K)。
condition.pressurenumber计算压力(Pa),必须大于 0。
condition.activated_phasesstring[]允许参与计算的相。
condition.inhibit_phasesstring[]强制抑制的相。
task_config 示例:三维相图计算
{
"task_type": "binary_cpt_diagram",
"tdb_code": "TOPDB-B-C-Si-Zr-Hf-La-Y-Ti-O.TOPDB",
"task_path": "examples/framework_demo/result/3d_phase_diagram_1",
"condition": {
"components": ["HF", "C"],
"activated_phases": [],
"x_component": "C",
"composition_start": 0,
"composition_end": 1,
"composition_step": 0.05,
"temperature_start": 500,
"temperature_end": 1000,
"temperature_step": 50,
"pressure_start": 1000000000,
"pressure_end": 5000000000,
"pressure_points": 5,
"pressure_scale": "linear",
"include_tielines": false,
"tieline_stride": 5,
"map_options": {
"GLOBAL_MIN_PDENS": 100
}
},
"ui_metadata": {
"module": "three_dimensional_phase_diagram",
"axis_config": {
"x": { "variable": "composition", "component": "C" },
"y": { "variable": "pressure" },
"z": { "variable": "temperature" }
},
"backend_task_type": "binary_cpt_diagram"
}
}
字段类型必填说明
task_typestring固定为 binary_cpt_diagram(Web 控制台「三维相图计算」的后端任务类型)。
tdb_codestring热力学数据库代码,可通过数据库接口发现。
condition.componentsstring[]参与计算的二元组分列表,当前版本必须且只能填 2 个元素。
condition.activated_phasesstring[]允许参与计算的相。
condition.x_componentstring组分轴对应的组元。
condition.composition_startnumber组分扫描起始值(0–1)。
condition.composition_endnumber组分扫描结束值(0–1),必须大于起始值。
condition.composition_stepnumber组分扫描步长。
condition.temperature_startnumber温度扫描起始值(K)。
condition.temperature_endnumber温度扫描结束值(K),必须大于起始值。
condition.temperature_stepnumber温度扫描步长(K)。
condition.pressure_startnumber压力扫描起始值(Pa)。
condition.pressure_endnumber压力扫描结束值(Pa),必须大于起始值。
condition.pressure_pointsnumber压力扫描点数,整数且 ≥ 2。
condition.pressure_scalestring压力生成方式,linearlog
condition.include_tielinesboolean是否包含结线。
condition.tieline_stridenumber结线采样间隔。
condition.map_options.GLOBAL_MIN_PDENSnumber全局最小点密度。
ui_metadata.axis_configobject三维显示轴映射,x / y / z 分别对应 composition / temperature / pressure 之一,其中 composition 必须指定 component

以下任务类型尚未开放,暂无稳定配置参数:

  • physical_vapor_deposition
  • cutting_process
  • spinodal_decomposition
  • solidification
  • solution_treatment
  • aging
  • directional_solidification