qminimum 串并行对照
输入范围
dyn3d\qminimum.F
dyn3dpar\qminimum_p.F
Mars 运行参与度:条件经过。tracer 输送或物理加和后需要保证最小值时经过。
例程定位
qminimum 对 tracer 场施加非负或最小阈值保护,避免 advection/physics 产生不可接受的负 mixing ratio。串行版还调用 check_isotopes_seq 检查 isotope 关系。
对照表
| 项 | 串行 | 并行 |
|---|---|---|
| 行数 | 191 | 107 |
| 主例程 | qminimum |
qminimum_p |
| isotope 检查 | check_isotopes_seq |
并行一致性由调用链保证或另行检查 |
| 范围 | 全局 tracer | 子域 tracer |
核心流程
- 遍历 tracer 和网格点。
- 与最小阈值比较,必要时截断或重分配。
- 对 isotope 或父子 tracer 做一致性保护。
- 返回修正后的
q。
复现要点
qminimum是保护性修正,会改变严格守恒;分析 tracer budget 时必须记录是否触发。- 阈值和父子 tracer 关系来自 tracer 配置,不应硬编码为单一常数。
待确认
- 并行版 isotope 检查的实际调用位置需结合
advtrac_p和vlspltgen_p。