CO2 循环配置

本页汇总驱动 LMDZ.MARS CO2 循环(CO2 凝结/升华、CO2 云微物理、地表 CO2 冰、永久 CO2 冰盖、CO2 冰辐射活性、CO2 凝结清除)的配置项:callphys.def.* 中的物理开关、traceur.def.* 中的 CO2 tracer 集合、以及 XIOS 中的 CO2 输出字段。水循环配置见 water-cycle-config;通用配置体系见 config-system

源码依据:libf/phymars/conf_phys.F 中的 getin_p 读取与 abort_physic 校验;deftank/callphys.def.* 中的样例值;deftank/traceur.def.* 中的 tracer 名;deftank/xios/field_def_physics.xmlfile_def_physics.xml 中的字段定义和输出引用。

路径

LMDZ.MARS\deftank\callphys.def.*
LMDZ.MARS\deftank\traceur.def.*
LMDZ.MARS\deftank\xios\field_def_physics.xml
LMDZ.MARS\deftank\xios\file_def_physics.xml

类型

配置(物理开关 + tracer 清单 + 输出字段定义)

作用

控制是否计算 CO2 凝结/升华、用哪种 CO2 云方案(瞬时凝结 vs 完整微物理)、CO2 冰是否辐射活跃、水冰/流星尘是否可作 CO2 云凝结核、永久 CO2 冰盖反照率,以及 CO2 相关 tracer 的输运和诊断输出。


1. callphys.def CO2 开关

下表「源码默认」来自 libf/phymars/conf_phys.F 中各 getin_p 前的赋值;「样例值」分别来自 deftank/callphys.def.GCM6(标准 v6 配置)和 deftank/callphys.def.co2clouds.GCM5(CO2 云微物理配置)。源码默认普遍是关闭/保守值,真实模拟靠 callphys.def 打开。

核心开关

字段 源码默认 GCM6 co2clouds.GCM5 含义 读取行(conf_phys.F)
callcond .true. .true. .true. CO2 凝结总开关。调用 co2condens 例程处理地表/大气 CO2 凝结升华 348
co2clouds .false. (未设,默认 .false. .true. CO2 云微物理方案(成核/凝并/沉降),由 co2cloud_mod 调度。隐含微物理,无需额外开关 749
activeco2ice .false. (未设,默认 .false. (未设) CO2 冰作为辐射活性气溶胶参与辐射传输。co2clouds 732
co2useh2o .false. (未设) (未设) 水冰粒子可作 CO2 云凝结核(CCN) 754
scavco2cond .false. .true. (未设) 瞬时 CO2 凝结洗脱尘埃/水冰。co2clouds 互斥 933

CO2 云微物理子选项

字段 源码默认 co2clouds.GCM5 含义 读取行
CLFvaryingCO2 .false. (未设) CO2 云次网格温度分布(类似水云 CLFvarying 764
spantCO2 0 (未设) 次网格温度分布振幅(K),仅 CLFvaryingCO2=.true. 时有效 769
satindexco2 .true. (未设) 用饱和指数过滤次网格温度分布 774
meteo_flux .false. (未设) 流星尘粒子供应作 CO2 冰 CCN(John Plane 值) 759
nuiceco2_sed 0.45 0.1 CO2 冰沉降对数正态分布有效方差 827
nuiceco2_ref 0.45 (未设) CO2 云参考有效方差 832

永久 CO2 冰盖参数

字段 源码默认 含义 读取行
albedo_perennialco2_north 0.6 北半球永久 CO2 冰反照率 444
albedo_perennialco2_south 0.85 南半球永久 CO2 冰反照率 451

已废弃字段

字段 状态 说明
microphysco2 已移除(changelog 2017-11-02) 原用于区分 CO2 云简化/微物理方案;co2clouds=.true. 后自动启用微物理,无需此开关。callphys.def.co2clouds.GCM5 中仍有此字段但源码不再读取

依赖与互斥校验(conf_phys.F 中 abort_physic

复现时这些组合非法,会让模式中止:

约束 说明
activeco2iceco2clouds 813–817 CO2 冰辐射活性依赖 CO2 云微物理方案
co2cloudsscavco2cond 互斥 943–951 co2clouds 已含微物理洗脱,二者不能同开
scavco2conddustbin>0 937–941 瞬时清除需要尘埃 bin

另有警告(不中止):co2cloudsscavco2cond 同开时打印 WARNING 并 abort。


2. traceur.def CO2 tracer

traceur.def.* 首行是 tracer 总数,其后每行一个 tracer 名。CO2 循环相关 tracer:

tracer 含义 何时需要
co2 CO2 气体 始终存在(大气主成分)
co2_ice CO2 冰 co2clouds=.true.
ccnco2_number CO2 云凝结核数密度 co2clouds=.true.
ccnco2_mass CO2 云凝结核质量 co2clouds=.true.

样例对比

traceur.def.co2(最小 CO2-only 集合,1 个 tracer):

1
co2

traceur.def.co2clouds.GCM5(CO2 云微物理 + 水循环 + 尘埃,10 个 tracer):

10
co2
co2_ice
dust_number
dust_mass
ccnco2_number
ccnco2_mass
h2o_ice
h2o_vap
ccn_mass
ccn_number

traceur.def.GCM6(标准 v6,11 个,不含 co2_ice/ccnco2_*):

11
co2
dust_number
dust_mass
stormdust_number
stormdust_mass
topdust_number
topdust_mass
h2o_ice
h2o_vap
ccn_number
ccn_mass

traceur.def.MCD6(完整化学+离子,43 个,含 co2 与离子 co2plus/hco2plus):

43
co2
co
o
...
co2plus
...
hco2plus
...
elec

复现风险:tracer 名的拼写与顺序必须与 initracer.F90 的字符串匹配逻辑一致,否则对应 igcm_* 为 0,相关物理被静默跳过。tracer 总数(首行)必须与实际行数一致。GCM6 标准配置不含 co2_ice/ccnco2_*,因此即使 callcond=.true.,也无法运行 co2clouds 微物理(缺少 tracer)。


3. XIOS CO2 输出字段

字段定义在 field_def_physics.xml,是否实际输出由 file_def_physics.xml<field field_ref=.../> 决定。

大气场(field_def_physics.xml)

字段 id 含义 定义行
co2 CO2 质量混合比 (kg/kg) 857
vmr_co2 CO2 体积混合比 (mol/mol) 860
num_co2 CO2 数密度 (cm⁻³) 863
co2_layer1 第一层 CO2 混合比 (kg/kg) 535
c_co2 CO2 柱积分量 650
mass_co2 全球 CO2 质量 (g) 35
co2conservation 物理过程 CO2 质量守恒 (kg) 30
co2condens_pdtc CO2 凝结温度倾向 (K/s) 1217

地表场

字段 id 含义 定义行
co2ice 地表 CO2 冰厚度 595
co2ice_slope01~_slope07 各坡度分量 CO2 冰厚度 598–616
perennial_co2ice 永久 CO2 冰厚度 620
perennial_co2ice_slope01~_slope07 各坡度分量永久 CO2 冰厚度 623–641
co2condens_zfallice CO2 凝结地表倾向 645

file_def_physics.xml 实际启用

GCM6 样例中 file_def_physics.xml 引用了:co2ice(行 29、124、207)、co2ice_slope01~_slope07(行 208–214)、perennial_co2ice(行 127)、perennial_co2ice_slope01~_slope07(行 229–235)、co2_layer1(行 97、144)。

注意co2vmr_co2co2condens_pdtc 等大气场虽在 field_def_physics.xml 中定义,但在 GCM6 的 file_def_physics.xml未被引用,不会自动输出。如需输出,需在 file_def_physics.xml 中添加 <field field_ref="co2" /> 等条目。


被读取的位置

读取例程 文件 说明
conf_physgetin_p libf/phymars/conf_phys.F 所有 callphys.def CO2 开关;存入 callkeys_mod 模块变量
initracer libf/phymars/initracer.F90 解析 traceur.def tracer 名→igcm_* 索引
co2condens libf/phymars/co2condens_mod.F 读取 callcondscavco2cond、CO2 tracer 索引
co2cloud libf/phymars/co2cloud_mod.F 读取 co2cloudsco2useh2oCLFvaryingCO2spantCO2satindexco2meteo_flux、CO2 tracer 索引
physiq_mod libf/phymars/physiq_mod.F 根据 callcond/co2clouds/activeco2ice 决定调用路径
XIOS 库 field_def_physics.xml/file_def_physics.xml write_output 调用触发

影响的计算流程

主题 影响
CO2 凝结/升华 callcondco2condens 主调度,处理地表/大气 CO2 相变、Van Leer 垂直输送、sigma 层校正,见 co2condens
CO2 云微物理 co2cloudsco2cloud_mod 调度完整微物理(成核/凝并/沉降),见 co2cloud_mod
CO2 成核 co2clouds 启用 nucleaco2 CO2 冰成核率计算,见 nucleaco2
CO2 质量传输 co2clouds 启用 massflowrateco2 CO2 冰粒增长,见 massflowrateco2
CO2 冰辐射 activeco2ice 决定 CO2 冰是否进辐射传输(需 co2clouds
CO2 凝结清除 scavco2condco2clouds 内置洗脱决定尘埃/水冰被 CO2 降雪清除,见 co2condens-scavenging
physiq 调用链 callcond/co2clouds/activeco2ice/scavco2cond 决定 tendency 注入,见 physiq-co2-cycle-callpoints
CO2 饱和 CO2 凝结温度/饱和蒸气压公式,见 co2-saturation-helpers
地表 CO2 冰 albedo_perennialco2_* 影响永久 CO2 冰盖反照率
尘埃循环 scavco2cond/co2clouds 洗脱影响尘埃负荷

复现要求

已核验边界

复现风险