GCM def 配置体系
路径
LMDZ.MARS\deftank\
类型
配置集合目录(含运行配置文件、垂直坐标定义、示踪物定义、化学反应速率、XIOS 输出配置、运行脚本和机器相关作业脚本)。
作用
deftank 目录集中存放了 LMDZ.MARS GCM 运行所需的所有配置文件和示例运行脚本。这是复现模型运行的关键入口目录——缺少其中任何一个必要的 def 文件,模型将无法启动。
根据 README,运行 GCM 至少需要四个 def 文件:
run.def—— 动力核心 + 总运行控制callphys.def—— 物理参数化开关与参数traceur.def—— 示踪物(tracer)列表z2sig.def—— 垂直坐标定义
目录中按不同 GCM 配置版本(GCM5、MCD5、GCM6、MCD6)提供了后缀变体(如 callphys.def.GCM5、callphys.def.MCD6),使用前需重命名为无后缀的基础名称。
目录结构总览
deftank/
README # 目录说明
run.def.* # 动力核心运行控制(6 个变体 + 1 个 1D 版本)
callphys.def.* # 物理参数化配置(6 个变体)
traceur.def.* # 示踪物列表(9 个变体)
z2sig.def.* # 垂直坐标定义(3 个变体)
chemthermos_reactionrates.def # 热层化学反应速率常数
run0 # 串联模拟主脚本
run_mcd # 按火星月分步运行的包装脚本
launch_1Dchained.sh # 1D 链式模拟启动脚本
launch_orb_1Dchained.sh # 1D 轨道链式模拟启动脚本
xios/ # XIOS 输出系统配置
iodef.xml # XIOS 总配置
context_pcm_physics.xml # XIOS 物理上下文
field_def_physics.xml # 物理场定义
file_def_physics.xml # 输出文件定义
adastra/ # AdAstra 集群作业脚本
ciclad/ # Ciclad 集群作业脚本
irene/ # Irène 集群作业脚本
mesu/ # Mesu 集群作业脚本
occigen/ # Occigen 集群作业脚本
spirit/ # Spirit 集群作业脚本
源码依据:deftank/README
1. run.def —— 动力核心运行控制
作用
控制 GCM 动力核心的时间积分方案、水平耗散、垂直坐标类型、物理调用频率、zoom 网格和 sponge 层等。run.def 还通过 INCLUDEDEF=callphys.def 指令引入物理配置。
关键字段
| 字段 | 示例值 | 含义 | 影响模块 |
|---|---|---|---|
planet_type |
mars |
行星类型 | 全局 |
nday |
9999 |
模拟总天数(9999 = 无限运行) | 动力核心 |
day_step |
480 (GCM5) / 960 (GCM6) |
每天动力步数(必须为 iperiod 倍数) | 动力核心 |
iperiod |
5 |
Matsuno 步间隔 | 动力核心时间方案 |
iconser |
120 |
动力诊断输出间隔(步) | 动力核心输出 |
idissip |
1 |
耗散应用间隔 | 动力核心耗散 |
lstardis |
.true. |
耗散算子类型(star / non-star) | 动力核心耗散 |
hybrid |
.true. |
使用混合垂直坐标(否则 sigma) | 动力核心 |
nitergdiv |
1 |
gradiv 侧向耗散迭代次数 | 动力核心耗散 |
nitergrot |
2 |
nxgradrot 侧向耗散迭代次数 | 动力核心耗散 |
niterh |
2 |
divgrad 侧向耗散迭代次数 | 动力核心耗散 |
tetagdiv |
3000. (GCM5) / 2500. (GCM6) |
u, v 最短波长耗散时间尺度 (s) | 动力核心耗散 |
tetagrot |
9000. (GCM5) / 5000. (GCM6) |
u, v (nxgradrot) 耗散时间尺度 (s) | 动力核心耗散 |
tetatemp |
9000. (GCM5) / 5000. (GCM6) |
h (divgrad) 耗散时间尺度 (s) | 动力核心耗散 |
coefdis |
0. |
gamdissip 系数 | 动力核心耗散 |
purmats |
.false. |
时间推进方案(.true.=Matsuno, .false.=Matsuno-Leapfrog) | 动力核心 |
physic |
.true. |
是否调用物理 | 动力-物理耦合 |
iphysiq |
10 (GCM5) / 5 (GCM6) |
每多少动力步调用一次物理 | 动力-物理耦合 |
grireg |
.true. |
使用规则经纬网格 | 动力核心 |
clon, clat |
63., 0. |
zoom 中心经纬度 | 动力核心(zoom 网格) |
grossismx, grossismy |
1., 1. |
zoom 增强因子(1=无 zoom) | 动力核心(zoom 网格) |
fxyhypb |
.false. |
zoom 函数类型(.true.=双曲, .false.=正弦) | 动力核心(zoom 网格) |
callsponge |
.true. |
启用 sponge 层 | 上边界 |
nsponge |
3 |
sponge 层覆盖顶层数 | 上边界 |
mode_sponge |
2 |
sponge 模式(0/1/2,见注释) | 上边界 |
tetasponge |
30000 |
sponge 层时间尺度 (s) | 上边界 |
INCLUDEDEF |
callphys.def |
引入物理配置文件 | 物理模块 |
GCM6 vs GCM5 差异
GCM6 的 run.def 相比 GCM5 新增了高度相关耗散系数:
| 字段 | GCM6 新增 | 含义 |
|---|---|---|
dissip_fac_mid |
2 |
中层大气(~20-70km)耗散系数 |
dissip_fac_up |
10 |
高层大气(~100km+)耗散系数 |
源码依据:deftank/run.def.32x24x25.GCM5、deftank/run.def.64x48x54.GCM6
1D 版本特殊字段
run.def.1d 包含 1D 模型 testphys1d 特有的字段(替代 GCM 3D 动力控制):
| 字段 | 示例值 | 含义 |
|---|---|---|
day0 |
0 |
初始日期(火星 sol;Ls=0 时为 0) |
time |
0. |
初始本地时间(小时) |
day_step |
48 |
每天物理步数 |
ndt |
669 |
运行 sol 数 |
psurf |
610. |
表面气压 (Pa) |
tauvis |
0.2 |
参考可见光尘埃 opacity(610 Pa 处) |
latitude |
0. |
纬度(度) |
albedo |
0.2 |
裸地反照率 |
inertia |
400 |
土壤热惯量 (SI) |
u, v |
10., 0. |
地转风分量 (m/s) |
co2ice |
0. |
地表 CO2 冰初始量 (kg/m²) |
ichoice |
5 |
初始温度廓线类型(1-8) |
tref |
200 |
参考温度 (K) |
源码依据:deftank/run.def.1d
2. callphys.def —— 物理参数化配置
作用
这是 GCM 中最重要的配置文件,控制所有物理参数化的开关(辐射、湍流、对流、凝结、重力波、尘埃、水循环、光化学、热层等)及相关参数。
关键字段
通用选项
| 字段 | GCM5 示例 | GCM6/MCD6 示例 | 含义 |
|---|---|---|---|
outputs_per_sol |
4 |
8 |
每 sol 输出的 diagfi.nc 数量 |
diurnal |
.true. |
.true. |
日变化(否则日平均太阳加热) |
season |
.true. |
.true. |
季节变化(否则 Ls 保持 start 中的值) |
callstats |
.true. |
.true. |
保存统计到 stats.nc |
calleofdump |
无 | .false. |
保存 EOF 廓线到 profiles |
datadir |
/users/lmdz/WWW/planets/mars/datadir |
./datadir |
外部输入数据目录 |
check_physics_inputs |
.false. |
.false. |
进入物理前检查输入场 |
check_physics_outputs |
.false. |
.false. |
物理结束后检查输出场 |
尘埃方案
| 字段 | GCM5 示例 | GCM6 示例 | MCD5 示例 | MCD6 示例 | 含义 |
|---|---|---|---|---|---|
iaervar |
26 |
8 |
24 |
8 |
尘埃场景(1/2/3/4/6/7/8/24-35) |
tauvis |
0.2 |
0.2 |
0.1 |
0.2 |
恒定尘埃可见光 opacity(iaervar=1 时) |
iddist |
3 |
3 |
3 |
3 |
尘埃垂直分布(0-3) |
topdustref |
55. |
55. |
55. |
55. |
尘埃顶高度 (km)(iddist=1 时) |
GCM6/MCD6 新尘埃字段:
| 字段 | 示例值 | 含义 |
|---|---|---|
dustiropacity |
tes |
尘埃 IR opacity 参考波长(tes: 9.3μm / mcs: 21.6μm) |
reff_driven_IRtoVIS_scenario |
.true. |
IR→VIS 转换系数依赖有效半径 |
freedust |
.true. |
freedust 模式 |
dustscaling_mode |
2 |
dust scaling 模式(0/1/2) |
dustinjection |
1 |
启用 dust injection 方案 |
coeff_injection |
0.25 |
dust injection 系数 |
rdstorm |
.true. |
Rocket Dust Storm 方案 |
coeff_detrainment |
0.02 |
RDS detrainment 系数 |
topflows |
.true. |
次网格坡风夹卷尘埃 |
物理参数化开关
| 字段 | GCM5 | GCM6 | MCD5 | MCD6 | 控制内容 |
|---|---|---|---|---|---|
callrad |
.true. |
.true. |
.true. |
.true. |
辐射传输 |
callnlte |
.true. |
.true. |
.true. |
.true. |
NLTE 辐射方案 |
nltemodel |
0 |
0 |
2 |
2 |
NLTE 15μm 方案(0/1/2) |
callnirco2 |
.true. |
.true. |
.true. |
.true. |
CO2 近红外吸收 |
nircorr |
0 |
0 |
1 |
1 |
NIR NLTE 修正(0/1) |
calldifv |
.true. |
.true. |
.true. |
.true. |
湍流垂直扩散 |
calladj |
.true. |
.true. |
.true. |
.true. |
对流调整 |
calltherm |
.true. |
.true. |
.true. |
.true. |
热力学 |
callrichsl |
.true. |
.true. |
.true. |
.true. |
Richardson 层 |
callcond |
.true. |
.true. |
.true. |
.true. |
CO2 凝结 |
callsoil |
.true. |
.true. |
.true. |
.true. |
土壤热传导 |
calllott |
.true. |
.true. |
.true. |
.true. |
Lott 重力波/次网格地形 |
calllott_nonoro |
无 | .true. |
无 | .true. |
非地形重力波(GCM6/MCD6 新增) |
极冠反照率
| 字段 | 示例值 | 含义 |
|---|---|---|
TESicealbedo |
.true. |
用 TES 观测极冠地表反照率 |
TESice_Ncoef |
1.6 |
北极冠反照率系数 |
TESice_Scoef |
1.6 |
南极冠反照率系数 |
max_icecap_albedo |
0.83 |
极冠最大允许反照率 |
辐射传输选项
| 字段 | 示例值 | 含义 |
|---|---|---|
iradia |
1 |
辐射传输计算间隔(物理步数) |
callg2d |
.false. |
输出交换系数矩阵(仅诊断) |
rayleigh |
.false. |
Rayleigh 散射(暂应为 .false.) |
示踪物/尘埃/水选项
| 字段 | GCM5 | GCM6 | MCD5 | MCD6 | 含义 |
|---|---|---|---|---|---|
dustbin |
2 |
2 |
2 |
2 |
输运尘埃 bin 数 |
active |
.true. |
.true. |
.true. |
.true. |
尘埃辐射活跃 |
doubleq |
.true. |
.true. |
.true. |
.true. |
用质量+数浓度预测尘埃尺寸 |
submicron |
.false. |
.false. |
无 | .false. |
亚微米尘埃 |
lifting |
.true. |
.true. |
.true. |
.true. |
GCM 表面风抬升 |
reff_lift_dust |
2.5e-6 |
2.5e-6 |
2.5e-6 |
2.5e-6 |
抬升尘埃有效半径 (m) |
callddevil |
.false. |
.false. |
.false. |
.false. |
尘卷风抬升 |
scavenging |
.true. |
.true. |
.true. |
.true. |
H2O 降雪清除 |
scavco2cond |
无 | .true. |
无 | .true. |
CO2 凝结清除(GCM6/MCD6 新增) |
sedimentation |
.true. |
.true. |
.true. |
.true. |
重力沉降 |
activice |
.true. |
.true. |
.true. |
.true. |
水冰辐射活跃 |
water |
.true. |
.true. |
.true. |
.true. |
水循环 |
microphys |
.true. |
.true. |
.true. |
.true. |
水冰云微物理 |
nuice_sed |
0.15 |
0.15 |
0.15 |
0.15 |
冰粒沉降对数正态分布有效方差 |
caps |
.true. |
.true. |
.true. |
.true. |
两极永久极冠 |
mteta |
0.95 |
注释掉 | 0.95 |
注释掉 | 水接触参数(GCM5 固定) |
temp_dependent_m |
注释掉 | .true. |
注释掉 | .true. |
温度依赖接触参数(GCM6/MCD6) |
cloud_adapt_ts |
注释掉 | .true. |
注释掉 | .true. |
自适应云时间步(GCM6/MCD6) |
CLFvarying |
无 | .false. |
无 | .false. |
次网格云(GCM6/MCD6) |
CLFfixval |
无 | 1 |
无 | 1 |
固定云量(GCM6/MCD6) |
光化学和热层选项
| 字段 | GCM5 | GCM6 | MCD5 | MCD6 | 含义 |
|---|---|---|---|---|---|
photochem |
.false. |
.false. |
.true. |
.true. |
光化学 |
callthermos |
.false. |
.false. |
.true. |
.true. |
热层 |
callconduct |
.false. |
.false. |
.true. |
.true. |
热传导 |
callmolvis |
.false. |
.false. |
.true. |
.true. |
分子粘性 |
callmoldiff |
.false. |
.false. |
.true. |
.true. |
分子扩散 |
moldiff_scheme |
无 | 无 | 无 | 1 |
分子扩散方案(MCD6 新增) |
thermochem |
.false. |
.false. |
.true. |
.true. |
热层光化学 |
calleuv |
.false. |
.false. |
.true. |
.true. |
EUV 加热 |
solvarmod |
0 |
0 |
0 |
0 |
太阳变率方法(0=固定, 1=E10.7 观测) |
fixed_euv_value |
140 |
140 |
140 |
140 |
固定 E10.7 值(80-320) |
solvaryear |
24 |
24 |
24 |
24 |
太阳变率对应火星年(MY23-32) |
euveff |
0.21 |
0.21 |
0.21 |
0.21 |
UV 加热效率(实验值 0.19-0.23) |
散射体数量
| 字段 | GCM5 | GCM6 | MCD5 | MCD6 | 含义 |
|---|---|---|---|---|---|
naerkind |
2 |
4 |
2 |
4 |
散射体种类数(须与前序选项一致) |
源码依据:deftank/callphys.def.GCM5、deftank/callphys.def.GCM6、deftank/callphys.def.MCD5、deftank/callphys.def.MCD6
GCM5 / MCD5 / GCM6 / MCD6 主要差异总结
| 特性 | GCM5 | MCD5 | GCM6 | MCD6 |
|---|---|---|---|---|
| 垂直层数 | 25-32 | 49 | 54 | 73 |
| 垂直坐标文件 | z2sig.def.MCD5 |
z2sig.def.MCD5 |
z2sig.def.MCD6 |
z2sig.def.MCD6 |
| 顶层高度 | ~120 km | ~300 km | ~120 km | ~250 km |
| 光化学+热层 | 关 | 开 | 关 | 开 |
| NLTE 方案 | 旧 (nltemodel=0) | 新 (nltemodel=2) | 旧 (nltemodel=0) | 新 (nltemodel=2) |
| NIR 修正 | nircorr=0 | nircorr=1 | nircorr=0 | nircorr=1 |
| 非地形重力波 | 无 | 无 | 有 | 有 |
| 新尘埃方案 | 无 | 无 | 有 | 有 |
| 水微物理改进 | 无 | 无 | 有 | 有 |
3. traceur.def —— 示踪物列表
作用
定义 GCM 中输运的化学/气溶胶种类列表。文件格式简单:第一行为 tracer 总数,后续每行一个 tracer 名称。模型根据此列表分配 tracer 数组维度。
变体及其内容
| 文件 | Tracer 数 | 主要内容 |
|---|---|---|
traceur.def.co2 |
1 | co2(仅 CO2) |
traceur.def.GCM6 |
11 | co2, dust (4 bins), h2o_ice, h2o_vap, ccn (2 bins) —— GCM6 水+尘埃配置 |
traceur.def.MCD5 |
39 | 完整化学 + 电离层 + 尘埃 + 水 + CCN |
traceur.def.MCD6 |
43 | MCD5 全套 + stormdust (2 bins) + topdust (2 bins) |
traceur.def.watercycle.GCM5 |
7 | co2, dust (2 bins), h2o_ice, h2o_vap, ccn (2 bins) |
traceur.def.chemistry.GCM5 |
28 | 化学种类 + dust + 水(无电离层种类) |
traceur.def.ionosphere.GCM5 |
18 | 电离层种类(含带电粒子) |
traceur.def.co2clouds.GCM5 |
11 | CO2 云相关 tracer |
traceur.def.isotopes.GCM5 |
16 | 同位素 tracer(HDO 等) |
典型 MCD6 tracer 列表(43 种)
中性化学: co2, co, o, o1d, o2, o3, h, h2, oh, ho2, h2o2, n2, ar, n, no, no2, n2d, he
水+气溶胶: h2o_ice, h2o_vap, dust_number, dust_mass, stormdust_number, stormdust_mass,
topdust_number, topdust_mass, ccn_number, ccn_mass
电离层: co2plus, oplus, o2plus, coplus, cplus, nplus, noplus, n2plus, hplus,
hco2plus, hcoplus, h2oplus, h3oplus, ohplus, elec
源码依据:deftank/traceur.def.*
读取位置
已核验两条主要读取路径:3D/物理侧由 libf/phymars/tracer_mod.F90:176-181 查找并解析旧式 traceur.def;1D 列模式由 libf/phymars/dyn1d/init_testphys1d_mod.F90:177-209 直接打开 traceur.def,读取首行 tracer 数和后续 tracer 名称。完整 tracer 索引链见 tracer_mod、initracer 和 init_testphys1d_mod。
4. z2sig.def —— 垂直坐标定义
作用
定义模型的垂直分层(hybrid 坐标或 sigma 坐标)。文件格式为数值表,第一行为大气标高参考值 (km),后续每行给出 sigma 层界面值。
变体
| 文件 | 层数 | 对应配置 |
|---|---|---|
z2sig.def.MCD5 |
32 或 49 层 | GCM5、MCD5 |
z2sig.def.MCD6 |
54 或 73 层 | GCM6、MCD6 |
z2sig.def.hr |
高分辨率 | 高分辨率运行 |
选择指南
- 54 层(MCD6):运行到 ~120 km(水+尘埃循环模拟)
- 73 层(MCD6):运行到 ~250 km(包含化学和热层)
源码依据:deftank/README、deftank/z2sig.def.MCD6
5. chemthermos_reactionrates.def —— 热层化学反应速率
作用
定义热层/电离层光化学模块中 ~40 个化学反应的 Arrhenius 速率参数。文件格式为 Fortran 风格注释 + 每行三个数值(A, B, C),对应反应速率公式:
k = A × (T/300)^B × exp(C/T)
覆盖的反应类型
- 中性氧/氢化学(HO_x, O_x)
- 氮化学(NO_x, N(²D))
- CO_x 化学
- 电离层离子化学(CO₂⁺, O⁺, O₂⁺, N₂⁺, NO⁺, H⁺ 等)
- 电子复合反应
源码依据:deftank/chemthermos_reactionrates.def
6. XIOS 输出配置(xios/)
作用
XIOS (XML Input/Output Server) 库控制 GCM 的并行 I/O 输出。需要四个 XML 文件。
文件说明
| 文件 | 作用 |
|---|---|
iodef.xml |
XIOS 总配置:buffer 大小、server 模式、日志级别、引用物理上下文 |
context_pcm_physics.xml |
物理上下文定义(由 iodef.xml 引用) |
field_def_physics.xml |
物理场定义:每个输出变量的网格、单位、维度 |
file_def_physics.xml |
输出文件定义:文件名、频率、包含哪些场 |
关键配置项(iodef.xml)
| 参数 | 默认值 | 含义 |
|---|---|---|
print_file |
true |
XIOS 写入独立文件 |
buffer_size_factor |
4 |
buffer 大小因子 |
buffer_size |
85000000 |
内部 buffer 大小 |
using_server |
false |
是否分离 server/client 模式 |
info_level |
100 |
XIOS 日志详细度(0=无输出,100=详细) |
源码依据:deftank/README、deftank/xios/iodef.xml
7. 运行脚本
run0 —— 串联模拟主脚本
Bash 脚本,实现链式 GCM 模拟:
- 检查
gcm.e可执行文件 - 读取
num_run获取上次数值 - 将
start${numold}.nc/startfi${numold}.nc复制为start.nc/startfi.nc - 运行
./gcm.e > lrun${numnew} - 检查输出(
restart.nc/restartfi.nc) - 重命名输出文件(
diagfi.nc→diagfi${numnew}.nc等) - 更新
num_run - 若未达
nummax,递归调用自身继续下一个 run
关键参数:nummax=1(默认只跑 1 段;可修改以进行多段链式模拟)
run_mcd —— 按月运行包装脚本
每月-模拟循环的包装脚本。利用 run0 和 run.def.ref 将一年划分为 12 个火星月(约 30° Ls/月),每个月运行 nday 不等的天数(由于火星轨道偏心率导致各月长度不同,从 46 到 66 sol)。内置崩溃恢复逻辑。
机器专用子目录
每个子目录包含该集群的作业提交脚本:
| 子目录 | 目标机器 | 内容 |
|---|---|---|
adastra/ |
AdAstra (CINES) | run0, run_month1, run_year1, adastra_cpu_binding.sh |
ciclad/ |
Ciclad (IPSL) | run0, run_month1 |
irene/ |
Irène (TGCC) | run0, run_month1 |
mesu/ |
Mesu (UPMC) | run0, run_month1 |
occigen/ |
Occigen (CINES) | run0, run_month1 |
spirit/ |
Spirit (CINES) | run0, run_month1 |
每个集群的 run0 会添加该集群特有的作业调度指令(PBS/SLURM)、并行执行命令(mpirun/srun)和模块加载。
源码依据:deftank/run0、deftank/run_mcd、各子目录 README 和脚本
8. 特殊配置变体
HDO 同位素配置
callphys.def.hdo.GCM5 和 traceur.def.isotopes.GCM5 用于 HDO 水同位素模拟。
CO2 云配置
callphys.def.co2clouds.GCM5 和 traceur.def.co2clouds.GCM5 用于 CO2 云形成模拟。
被读取的位置
| 读取例程 | 文件 | 说明 |
|---|---|---|
defrun_new |
libf/dynphy_lonlat/phymars/defrun_new.F:91-240 |
打开 run.def,用 getin 读取动力步数、耗散、hybrid、物理调用频率等 3D 动力控制量 |
conf_phys |
libf/phymars/conf_phys.F:137-156 及后续 getin_p 调用 |
打开 callphys.def,读取物理开关、数据目录、输出频率、尘埃/水/CO2/热层等参数 |
ini_tracer_mod / init_testphys1d |
libf/phymars/tracer_mod.F90:176-181; libf/phymars/dyn1d/init_testphys1d_mod.F90:177-209 |
解析 traceur.def tracer 数量、名称和索引链 |
disvert_noterre / 编译维度链 |
libf/phymars/dyn1d/disvert_noterre.F 与 LMDZ.COMMON 垂直离散路径 |
读取或生成与 z2sig.def 对应的 sigma/hybrid 垂直坐标;详见 z2sig-config 和 disvert_noterre |
chemthermos_readini |
libf/aeronomars/chemthermos_readini.F:19-35 |
打开 chemthermos_reactionrates.def 并读取热层化学反应速率系数 |
复现风险:run.def/callphys.def 通过 getin/getin_p 和 INCLUDEDEF 机制合并读取,实际运行目录中的同名文件优先;复现实验必须保存运行目录版本,而不是只引用 deftank/ 样例。
影响的计算流程
| 主题 | 影响 |
|---|---|
| 辐射计算 | callrad, callnlte, callnirco2, nltemodel, nircorr, iradia |
| 尘埃循环 | dustbin, active, doubleq, lifting, callddevil, scavenging, sedimentation, iaervar 及 GCM6 新增尘埃字段 |
| 水循环 | water, microphys, caps, nuice_sed, activice 及 GCM6 水字段 |
| CO2 循环 | callcond |
| 湍流/边界层 | calldifv, calladj, calltherm, callrichsl |
| 重力波拖曳 | calllott, calllott_nonoro |
| 光化学/热层/电离层 | photochem, callthermos, 相关子开关, thermochem, calleuv |
| Tracer 输运 | traceur.def 中定义的种类列表 |
| 输出/诊断 | outputs_per_sol, callstats, calleofdump, XIOS XML |
| 动力核心 | run.def 中全部字段 |
| 1D 测试 | run.def.1d 特有字段 |
复现要求
重新运行 LMDZ.MARS GCM 时,以下必须保持一致:
- 四个 def 文件必须全部存在:
run.def、callphys.def、traceur.def、z2sig.def - 垂直层数必须匹配:
z2sig.def的层数必须与 start 文件、可执行文件编译时指定的层数一致 - tracer 种类必须匹配:
traceur.def中定义的 tracer 数和顺序必须与callphys.def中的开关(dustbin,water,photochem等)一致,也与 startfi.nc 中的 tracer 变量匹配 - NAERKIND 必须匹配:
callphys.def中的naerkind必须与前序气溶胶相关的选项(active,activice等)一致 - datadir 路径必须可访问:
callphys.def中的datadir必须指向包含外部数据文件的有效目录 - 物理步频率必须一致:
iphysiq×day_step× 物理时间步长决定了物理-动力耦合的时间分辨率 - XIOS XML 文件必须存在:如果编译时启用了 XIOS 输出,
xios/目录下的四个 XML 必须可用
已核验读取位置与剩余运行边界
run.def、callphys.def、traceur.def和chemthermos_reactionrates.def的源码读取入口已定位,见上表。z2sig.def的运行链在 1D 页面和disvert_noterre页面中已记录;3D 编译维度与 LMDZ.COMMON 垂直离散路径仍需结合完整构建系统确认。- XIOS XML 文件由 XIOS 运行时按当前运行目录加载;本页只确认
deftank/xios/样例内容和xios_output_mod/write_output_mod的输出调用,不替代一次带 XIOS 的运行验证。 launch_1Dchained.sh、launch_orb_1Dchained.sh是 1D 链式启动脚本;不属于 3Drun0/run_mcd主链,复现 1D 链时应单独核验其当前运行目录假设。
后续维护口径
z2sig、XIOS、运行脚本、1D testphys1d 和反应速率常数已有独立页面。后续如发现新配置变体,应先补齐对应页面,再更新本汇总页。