libRadtran 工程化速查:149 项 uvspec 参数、78 个输出字段与高频踩坑全梳理

5 阅读26分钟

libRadtran 工程化速查:149 项 uvspec 参数、78 个输出字段与高频踩坑全梳理

摘要:libRadtran 是大气辐射传输领域最常用的开源仿真工具之一,广泛应用于遥感反演、红外场景仿真、大气光学模拟。官方 User Guide 内容详实,但叙事式排版在调试时翻阅效率极低。本文基于 libRadtran 2.0.6 官方手册,对 uvspec 全部 149 项输入参数、78 项输出字段做工程化重构,梳理"输入→输出"影响关系,区分改变物理解的计算参数与仅控制展示的输出参数,附带热红外实战案例与可直接复制的调试模板。

⚠️ 声明:本文为官方手册的工程归纳整理,所有物理定义以原版 User Guide 为准,仅适配版本 libRadtran-2.0.6。


为什么需要这份速查?

做大气辐射仿真,uvspec 是 libRadtran 的核心执行程序。日常开发中,你大概率遇到过这些困惑:

  • 修改了 output_user 增加输出字段,但辐射仿真结果完全没有变化;
  • 分不清哪些参数真正参与辐射传输求解,哪些只是后处理输出配置;
  • 混淆 Mie 工具参数与 uvspec 参数,直接导致 inp 文件报错;
  • 分不清 zout(输出层)和 altitude(模型底边界海拔),边界条件设置错误;
  • REPTRAN 代表波长不等于 wavelength 设置的区间端点,对输出采样点产生误解;
  • 太阳源 source solar、热红外源 source thermal 的参数混用,得到完全错误的仿真结果。

原版手册按章节叙事,大量参数分散在 PDF 的不同页面,调试时来回翻阅耗时严重。本文对手册做工程重构,梳理逻辑链路、输入输出映射关系,配套可直接复制运行的模板,可用于日常调试、脚本自动生成 inp 配置、团队新人入门学习。


一、uvspec 核心计算流程

先建立全局认知。一次完整的 uvspec 仿真,数据流是这样的:

大气/气体/气溶胶/云/地表/几何/辐射源
                 │
                 ▼
       光学性质 + 边界条件 + 几何
                 │
                 ▼
              rte_solver
                 │
                 ▼
      原始辐射量 IRR / RAD / ACT / AVG
                 │
       ┌─────────┴─────────┐
       ▼                   ▼
 output_quantity       output_process
 亮温/反射率/透过率     积分/求和/单位/RGB
       └─────────┬─────────┘
                 ▼
            output_user
            选择输出列
                 │
                 ▼
      output_format / output_file
                 │
                 ▼
            .out 结果文件

✅ 最重要的一条避坑结论:output_user 仅控制输出哪些列,不会触发额外物理计算;真正改变仿真物理解的是大气廓线、气溶胶、云、分子吸收方案、求解器、几何、边界条件等输入。

输出影响代号速查

为了后文表格简洁,我们用以下代号标注每个参数影响的输出类别:

代号含义
SPEC光谱坐标/网格/波段处理:lambda、wavenumber 以及输出行数
IRR辐照度:edir eglo edn eup enet esum
RAD方向辐亮度:uu
ACT光化通量:fdir fglo fdn fup f
AVG平均光强:uavgdir uavgglo uavgdn uavgup uavg
ATM大气状态:压力、温度、露点、相对湿度等
GAS气体状态:数密度、质量密度、混合比
CLD云状态:水/冰含量、总云量
HEAT加热率
OUT_COLoutput_user 决定的列结构
AUXMYSTIC、光学性质导出等辅助输出

二、uvspec .inp 基础语法规则

在深入参数之前,先明确最基本的语法约定:

  1. 每行一条配置项:option value1 value2 ...;文件名不需要加引号。
  2. # 开头代表注释,空行会被直接忽略。
  3. 同一个选项多次配置,后出现的设置覆盖前面;include 导入的外部文件同样会覆盖已有配置。
  4. 参数是否实际生效,依赖于 source、rte_solver、云/气溶胶开关、分子吸收方案;部分参数写入 inp 也不会生效。

三、核心模块与高频参数解读

uvspec 一共有 149 项输入参数,完整列表见附录 A。这里按工程调试的高频程度,挑出核心模块做深入解读。

3.1 气溶胶模块 aerosol_*

包含 aerosol_default、aerosol_haze、aerosol_set_tau_at_wvl、aerosol_file、aerosol_visibility、aerosol_vulcan 等 13 项参数。

  • 作用:设置气溶胶模型、光学厚度缩放、廓线、能见度、火山气溶胶;支持自定义气溶胶文件。
  • 输出影响:改变气溶胶消光、单次散射反照率、相函数 → 直接影响 IRR/RAD/ACT/AVG,间接影响加热率 HEAT。
  • 生效条件:启用气溶胶相关配置时生效。

工程经验:做热红外仿真时,气溶胶影响相对较小;但做太阳短波/近红外仿真时,气溶胶光学厚度是最敏感的参数之一,务必用 aerosol_set_tau_at_wvl 标定你关心的波长处的光学厚度。

3.2 地表边界模块

包含 albedo、albedo_file、albedo_library,以及各类 BRDF/BPDF 模型:Ross-Li AMBRALS、Hapke、RPV、Cox-Munk 海面、Litvinov 陆地偏振、Maignan 偏振模型,还有 fluorescence 地表荧光。

  • 作用:设置朗伯地表反照率、光谱反照率、各向异性地表反射模型、地表荧光发射。
  • 输出影响:主要改变上行 IRR、RAD;多次散射会连带影响下行辐射场。

热红外仿真提示:source thermal 场景下,albedo 0 代表地表近似黑体,发射率趋近于 1。如果你需要模拟真实地表的发射率,应该用 albedo_file 配合光谱发射率数据。

3.3 大气廓线与垂直网格

关键参数:atmosphere_file、altitude、atm_z_grid、pressure、radiosonde、zout、pressure_out、zout_interpolate。

这里有一个新手最容易混淆的概念:

  • altitude:修改模型大气底边界海拔——这改变的是物理边界条件。
  • zout:仅设置输出高度层——这只是告诉程序"在哪个高度把结果写出来",不会改变仿真计算的大气底边界。

❗ 踩坑:很多人以为改了 zout 5 就模拟了 5km 高度的观测,实际上大气底边界还是 0km,只是输出层移到了 5km。如果你要模拟高原站点的观测,必须用 altitude 设置底边界海拔。

3.4 分子吸收与气体设置

关键参数:mol_abs_param、mixing_ratio、mol_modify、mol_file、crs_model、no_absorption、no_scattering。

mol_abs_param 是整个 uvspec 中最关键的参数之一,它决定了分子吸收的计算方法和光谱分辨率:

选项分辨率适用场景
reptran coarse≈15 cm⁻¹快速估算、大波段积分
reptran medium≈5 cm⁻¹常规仿真、平衡精度与速度
reptran fine≈1 cm⁻¹高光谱精细计算、吸收线附近
reptran int积分型需要带积分输出时

❗ 踩坑:REPTRAN 使用的是代表波长,不是你 wavelength 输入的精确端点。输出的 lambda 值是相关吸收带的中心代表波长,不一定正好等于你设置的 8000 或 14000。

另外,mol_modify 是修改气体柱含量的推荐方式,旧的 ozone_column、no2_column_du 已经废弃,不要再用。

3.5 云与粒子廓线

wc_file(水云)、ic_file(冰云)、cloudcover、cloud_overlap、profile_file 通用粒子廓线接口。

  • 作用:设置水云、冰云的廓线、光学性质、云覆盖比例、多层云重叠假设。
  • 输出影响:修改云光学厚度、散射、热发射;影响辐射量与 CLD 云状态输出。

3.6 几何与太阳参数

sza 太阳天顶角、phi0 太阳方位角、day_of_year、latitude、longitude、time、umu、phi。

❗ 关键区分:sza/day_of_year/phi0 这些太阳几何参数,只对 source solar 生效;热红外 source thermal 模式下它们几乎不起作用。不要在 thermal 仿真里调半天 SZA 纳闷为什么结果没变。

umu 和 phi 设置辐亮度 uu 的观测方向。uu 的输出列数 = umu 数量 × phi 数量。比如:

umu 0.5 1.0
phi 0 90
output_user lambda uu

则 uu 会展开为 4 列:(0.5, 0°)、(0.5, 90°)、(1.0, 0°)、(1.0, 90°)。

3.7 求解器 rte_solver

手册列出的主要求解器:disort(默认)、twostr、fdisort1、fdisort2、sdisort、schwarzschild、montecarlo/mystic、sslidar、tzs 等。

❗ 踩坑:所有 mc_* 系列参数仅对 mystic/montecarlo 求解器生效。你在 rte_solver disort 的配置里写 mc_photons 100000,程序不会报错,但这个参数完全无效——这是典型的"静默失败",极难排查。

3.8 输出后处理组(只改输出,不改变物理解)

这是最容易被误解的一组参数,单独拎出来强调:

  1. output_user:选择输出字段列表——仅控制输出列。
  2. output_quantity:物理量转换——brightness 亮温 / reflectivity 反射率 / transmittance 透过率。
  3. output_process:光谱求和、积分、单位归一化——per_nm/per_cm⁻¹/sum/integrate/rgb。
  4. output_format:输出格式——ascii / netCDF。
  5. output_file:输出文件路径。

工程最佳实践:优先输出原始辐射量,亮温、反射率等后处理尽量在外部(Python/MATLAB)单独做。这样做的好处是:同一份仿真结果,你可以反复做不同的后处理,不用每次都重新跑辐射传输计算——uvspec 的运行时间在高光谱分辨率下是很贵的。


四、实战:热红外 8–14 μm 标准配置

下面是一个可以直接运行的热红外窗口波段仿真配置,也是做红外场景仿真最常用的入门模板:

data_files_path ./share/libRadtran/data/
atmosphere_file ./share/libRadtran/data/atmmod/afglus.dat
rte_solver disort
mol_abs_param reptran medium
source thermal
wavelength 8000 14000
albedo 0
sur_temperature 300
zout TOA
umu 1.0
phi 0
output_quantity brightness
output_user lambda uu
quiet

运行命令:

uvspec < input.inp > output.out

每个参数的作用对应关系:

输入参数作用说明
mol_abs_param reptran mediumREPTRAN 约 5 cm⁻¹ 分辨率,代表波长采样
source thermal热红外模式,源来自大气、地表热发射
wavelength 8000 140008–14 μm 红外窗口波段(单位 nm)
albedo 0地表近似黑体边界
sur_temperature 300地表温度 300K,控制地表普朗克发射
zout TOA输出位置:大气顶
umu 1.0 phi 0天顶观测方向,仅一组辐亮度输出
output_quantity brightness将辐亮度转换为等效亮温(单位 K)
output_user lambda uu输出两列:波长 + 亮温

输出文件两列分别是波长(nm)和等效亮温(K)。在 10–12 μm 的大气窗口区,亮温会接近地表温度 300K;在 6.3 μm 水汽吸收带或 15 μm CO₂ 吸收带,亮温会明显降低。


五、两套调试模板(直接复制使用)

5.1 辐射量调试模板

排查辐射量异常时,先关掉亮温转换,看原始辐射量:

data_files_path ./share/libRadtran/data/
atmosphere_file ./share/libRadtran/data/atmmod/afglus.dat
rte_solver disort
mol_abs_param reptran medium
source thermal
wavelength 8000 14000
albedo 0
sur_temperature 300
zout TOA
umu 1.0
phi 0
# 注意:这里没有 output_quantity brightness,输出原始辐射量
output_user lambda wavenumber zout edn eup enet esum uu uavgdn uavgup uavg albedo
quiet

5.2 大气廓线调试模板

排查大气状态是否正确时,把廓线输出和光谱辐射分开跑:

data_files_path ./share/libRadtran/data/
atmosphere_file ./share/libRadtran/data/atmmod/afglus.dat
rte_solver disort
source thermal
wavelength 8000 14000
zout atm_levels
output_user zout p T T_sur rh rh_ice n_AIR n_O3 n_O2 n_H2O n_CO2
quiet

六、高频踩坑总结(7 条)

根据实际使用经验,以下 7 个坑最常见,也最耗时排查:

  1. ❗ output_user 只是选择输出列,不会触发额外物理计算。仿真结果异常优先排查大气、气溶胶、源项、求解器,而不是调整 output_user。
  2. ❗ zout 仅设置输出层;修改模型底边界海拔要用 altitude。两者经常被混淆。
  3. ❗ REPTRAN 使用代表波长,输出采样点不等于 wavelength 设置的区间端点。如果你需要精确的波长网格,用 wavelength_grid_file 指定。
  4. ❗ mc_* MYSTIC 参数只能搭配 rte_solver montecarlo/mystic;disort 下写了也无效,而且不报错。
  5. ❗ source solar 和 source thermal 参数不要混用;太阳几何参数(sza、day_of_year、phi0)对 thermal 模式几乎无效。
  6. ❗ Mie 工具的 inp 参数集合和 uvspec 完全独立,不要把 Mie 参数直接写到 uvspec 的 inp 中。
  7. ❗ 做科学计算建议优先导出原始辐射量,亮温、反射率作为后处理在外部做。不要直接拿后处理结果做参数反演。

七、Mie 工具:附录说明

libRadtran 附带的 Mie 粒子计算工具是独立程序,拥有 28 个输入参数,不属于 uvspec,不能直接写进 uvspec 的 inp 文件。

它的作用是计算粒子的消光效率、散射效率、单次散射反照率、相函数等,输出可以作为 uvspec 气溶胶/云的输入光学性质文件。

Mie 常用输出字段:lambda、r_eff、refrac_real、refrac_imag、qext、omega、gg、pmom。

完整 Mie 参数列表见附录 B。


附录 A:uvspec 全部 149 项输入参数速查表

按 User Guide §6.1 顺序排列。PDF页 指原版手册页码,方便对照查阅。

#参数类别典型写法作用简述主要影响输出PDF页
1aerosol_angstrom气溶胶aerosol_angstrom alpha beta按 Ångström 公式缩放气溶胶光学厚度IRR/RAD/ACT/AVG/HEAT79
2aerosol_default气溶胶aerosol_default建立 Shettle 默认气溶胶模型IRR/RAD/ACT/AVG/HEAT79
3aerosol_file气溶胶aerosol_file type file从文件读取气溶胶光学性质/廓线IRR/RAD/ACT/AVG/HEAT80
4aerosol_haze气溶胶aerosol_haze type选择低层气溶胶类型IRR/RAD/ACT/AVG/HEAT81
5aerosol_king_byrne气溶胶aerosol_king_byrne a0 a1 a2按 King-Byrne 公式缩放气溶胶光学厚度IRR/RAD/ACT/AVG/HEAT81
6aerosol_modify气溶胶aerosol_modify var value缩放或设置气溶胶光学性质IRR/RAD/ACT/AVG/HEAT82
7aerosol_profile_modtran气溶胶aerosol_profile_modtran按 MODTRAN 方式处理非零站高气溶胶廓线IRR/RAD/ACT/AVG/HEAT82
8aerosol_season气溶胶aerosol_season season选择气溶胶季节廓线IRR/RAD/ACT/AVG/HEAT82
9aerosol_set_tau_at_wvl气溶胶aerosol_set_tau_at_wvl lambda tau指定波长设置总气溶胶光学厚度IRR/RAD/ACT/AVG/HEAT82
10aerosol_species_file气溶胶aerosol_species_file mixture指定多气溶胶组分质量密度廓线IRR/RAD/ACT/AVG/HEAT82
11aerosol_species_library气溶胶aerosol_species_library OPAC指定气溶胶组分光学性质库IRR/RAD/ACT/AVG/HEAT83
12aerosol_visibility气溶胶aerosol_visibility value设置水平能见度IRR/RAD/ACT/AVG/HEAT84
13aerosol_vulcan气溶胶aerosol_vulcan value设置 2km 以上火山气溶胶情景IRR/RAD/ACT/AVG/HEAT84
14albedo地表albedo value波长无关 Lambertian 地表反照率上行 IRR/RAD + 多次散射84
15albedo_file地表albedo_file file从文件读取光谱地表反照率上行 IRR/RAD + 多次散射85
16albedo_library地表albedo_library IGBP使用地表光谱反照率库上行 IRR/RAD + 多次散射85
17altitude大气网格altitude 0.73设置模型大气底边界海拔ATM/GAS + 全部辐射量86
18atm_z_grid大气网格atm_z_grid重采样大气廓线垂直高度网格ATM/GAS + 全部辐射量86
19atmosphere_file大气网格atmosphere_file file指定大气廓线文件ATM/GAS + 全部辐射量87
20bpdf_litvinov地表bpdf_litvinov ...Litvinov 陆地偏振 BPDF上行 IRR/RAD88
21bpdf_maignan地表bpdf_maignan ...Maignan-Bréon 陆地 BPDF上行 IRR/RAD88
22bpdf_tsang_u10地表bpdf_tsang_u10 value海洋 BPDF 使用的 10m 风速上行 IRR/RAD88
23brdf_ambrals地表brdf_ambrals var valAMBRALS/Ross-Li BRDF 参数上行 IRR/RAD89
24brdf_ambrals_file地表brdf_ambrals_file file从文件读取 AMBRALS BRDF 参数上行 IRR/RAD89
25brdf_ambrals_hotspot地表brdf_ambrals_hotspot启用 AMBRALS 热点修正上行 IRR/RAD89
26brdf_cam地表brdf_cam var valCox-Munk 海面 BRDF上行 IRR/RAD89
27brdf_cam_solar_wind地表brdf_cam_solar_wind旧太阳-风向定义(Monte Carlo)上行 IRR/RAD90
28brdf_hapke地表brdf_hapke var val波长无关 Hapke BRDF 参数上行 IRR/RAD90
29brdf_hapke_file地表brdf_hapke_file file从文件读取 Hapke BRDF 参数上行 IRR/RAD90
30brdf_rpv地表brdf_rpv var val波长无关 RPV BRDF 参数上行 IRR/RAD91
31brdf_rpv_file地表brdf_rpv_file file从文件读取 RPV BRDF 参数上行 IRR/RAD91
32brdf_rpv_library地表brdf_rpv_library IGBP指定 RPV BRDF 地表类型库上行 IRR/RAD91
33brdf_rpv_type地表brdf_rpv_type type_num选择 RPV BRDF 地表类型上行 IRR/RAD92
34ck_lowtran_absorption分子吸收ck_lowtran_absorption sp on/offLOWTRAN 方案中关闭指定气体吸收IRR/RAD/ACT/AVG/HEAT92
35cloud_fraction_file云廓线cloud_fraction_file file读取随高度变化的云量廓线IRR/RAD/ACT/AVG/HEAT/CLD92
36cloud_overlap云廓线cloud_overlap type设置云层重叠假设IRR/RAD/ACT/AVG/HEAT/CLD93
37cloudcover云廓线cloudcover type value设置水平云覆盖比例IRR/RAD/ACT/AVG/HEAT/CLD93
38crs_file分子吸收crs_file gas file用用户文件替换气体吸收截面IRR/RAD/ACT/AVG/HEAT93
39crs_model分子吸收crs_model gas crs选择气体吸收截面模型IRR/RAD/ACT/AVG/HEAT94
40data_files_path文件控制data_files_path path指定内部数据文件根目录配置加载94
41day_of_year几何时间day_of_year value年积日,太阳-地球距离修正SOLAR 几何/强度95
42deltam求解器deltam开关 delta-M 缩放求解精度95
43disort_intcor求解器disort_intcorDISORT 强度修正方法求解精度95
44earth_radius几何时间earth_radius value设置地球半径几何路径95
45filter_function_file光谱filter_function_file file滤波函数乘以计算光谱SPEC 卷积95
46fluorescence地表fluorescence value底边界各向同性荧光源强度上行 IRR/RAD95
47fluorescence_file地表fluorescence_file file波长相关地表荧光发射上行 IRR/RAD96
48heating_rate诊断heating_rate [method]启用加热率计算HEAT96
49ic_file云廓线ic_file type file冰云廓线/性质文件IRR/RAD/ACT/AVG/HEAT/CLD97
50ic_fu云廓线ic_fu reff_def on/offFu 冰云有效半径定义IRR/RAD/ACT/AVG/HEAT/CLD97
51ic_habit云廓线ic_habit typeYang 等冰晶习性选择IRR/RAD/ACT/AVG/HEAT/CLD97
52ic_habit_yang2013云廓线ic_habit_yang2013Yang 2013 冰晶习性IRR/RAD/ACT/AVG/HEAT/CLD98
53ic_modify云廓线ic_modify var val缩放或设置冰云光学性质IRR/RAD/ACT/AVG/HEAT/CLD98
54ic_properties云廓线ic_properties prop冰水含量→光学性质参数化IRR/RAD/ACT/AVG/HEAT/CLD98
55include文件控制include file包含另一个 uvspec 输入文件配置加载101
56interpret_as_level云廓线interpret_as_level profile廓线性质按层位值解释IRR/RAD/ACT/AVG/HEAT/CLD101
57isotropic_source_toa几何时间isotropic_source_toa顶边界各向同性入射源SOLAR 几何102
58latitude几何时间latitude N/S deg模拟位置纬度SOLAR 几何102
59longitude几何时间longitude E/W deg模拟位置经度SOLAR 几何103
60–83mc_*MYSTIC24 项蒙特卡洛专用参数光子追踪、方差缩减、偏振等MYSTIC 输出/噪声103–108
84mixing_ratio分子吸收mixing_ratio species val设置气体混合比GAS + 吸收108
85mol_abs_param分子吸收mol_abs_param type分子吸收参数化方案SPEC + 全部辐射量109
86mol_file分子吸收mol_file gas file读取痕量气体密度廓线GAS + 吸收111
87mol_modify分子吸收mol_modify NO2 1.2 DU修改气体总柱含量GAS + 吸收111
88mol_tau_file分子吸收mol_tau_file type file读取分子散射/吸收光学厚度IRR/RAD/ACT/AVG/HEAT112
89–90no2_column_*分子吸收旧选项,已废弃应使用 mol_modify—113
91no_absorption分子吸收no_absorption [name]关闭吸收IRR/RAD/ACT/AVG/HEAT113
92no_scattering分子吸收no_scattering [name]关闭 1D 廓线散射IRR/RAD/ACT/AVG/HEAT113
93number_of_streams求解器number_of_streams value离散纵标流数角向精度114
94output_file输出output_file filename指定输出文件路径OUT_COL114
95output_format输出output_format format输出格式(ascii/netCDF等)OUT_COL114
96output_process输出output_process type积分/求和/单位/RGB 后处理SPEC 聚合114
97output_quantity输出output_quantity qty亮温/反射率/透过率转换辐射量物理含义115
98output_user输出output_user fields指定输出列OUT_COL116
99ozone_column分子吸收旧选项,已废弃应使用 mol_modify—118
100phi几何时间phi values辐亮度输出方位角RAD 方向列118
101phi0几何时间phi0 value太阳方位角SOLAR 几何118
102pressure大气网格pressure value地表压力,缩放大气廓线ATM/GAS + 辐射118
103pressure_out大气网格pressure_out按压力坐标指定输出层垂直输出位置119
104print_disort_info输出print_disort_info valDISORT 内部诊断信息日志119
105profile_file云廓线profile_file type file通用粒子/云/气溶胶廓线接口IRR/RAD/ACT/AVG/HEAT/CLD119
106profile_modify云廓线profile_modify修改通用 profile 光学性质IRR/RAD/ACT/AVG/HEAT/CLD119
107profile_properties云廓线profile_properties type prop通用 profile→光学性质参数化IRR/RAD/ACT/AVG/HEAT/CLD120
108pseudospherical求解器pseudospherical伪球形几何几何路径120
109quiet输出quiet关闭常规提示信息日志120
110radiosonde大气网格radiosonde file探空资料替换温压廓线ATM/GAS + 辐射120
111radiosonde_levels_only大气网格radiosonde_levels_only限制高度范围为探空范围ATM/GAS + 辐射121
112raman分子吸收raman [original]单阶转动 Raman 散射IRR/RAD/ACT/AVG/HEAT121
113rayleigh_depol分子吸收rayleigh_depol valueRayleigh 去偏振因子IRR/RAD/ACT/AVG/HEAT121
114refractive_index_pv地表refractive_index_pv光伏玻璃表面折射率上行 IRR/RAD122
115repint_option光谱repint_option nameREPINT 积分代表波长参数化SPEC 网格122
116reptran_file光谱reptran_file file自定义 REPTRAN 代表波长文件SPEC 网格122
117reverse_atmosphere求解器reverse_atmosphere大气上下翻转(高级用途)几何路径122
118rte_solver求解器rte_solver type辐射传输方程求解器选择全部辐射量122
119schwarzschild_streams求解器schwarzschild_streamsSchwarzschild 角度积分流数热红外精度125
120sdisort求解器sdisort nscat valsdisort 散射阶数/折射选项求解精度125
121slit_function_file光谱slit_function_file file狭缝函数卷积光谱SPEC 卷积125
122source光谱source type辐射源类型:solar/thermal全部物理源126
123spline光谱spline 290 365 0.5光谱样条插值到规则波长SPEC 网格127
124spline_file光谱spline_file file样条插值到文件指定波长SPEC 网格127
125–127sslidar*Lidar3 项 lidar 专用参数单次散射 lidar 求解器lidar 专用输出127
128sur_temperature热红外sur_temperature value地表温度,热发射源项THERMAL 辐射127
129surface_type_map地表surface_type_map file按地图选择地表类型上行 IRR/RAD128
130sza几何时间sza value太阳天顶角SOLAR 几何128
131sza_file几何时间sza_file file波长相关太阳天顶角SOLAR 几何128
132thermal_bands_file光谱thermal_bands_file file热红外中心波长及波段边界SPEC 网格129
133thermal_bandwidth光谱thermal_bandwidth value热红外恒定波数带宽SPEC 网格129
134time几何时间time YYYY MM DD hh mm ssUTC 时间,太阳几何计算SOLAR 几何129
135twomaxrnd3C_scale_cf云廓线twomaxrnd3C_scale_cftwomaxrnd3C 云量拆分缩放IRR/RAD/ACT/AVG/HEAT/CLD129
136tzs_cloud_top_height云廓线tzs_cloud_top_heightTZS 黑体云云顶高度IRR/RAD/ACT/AVG/HEAT/CLD129
137umu几何时间umu values输出极角余弦RAD 方向列130
138verbose输出verbose更多诊断信息到 stderr日志130
139wavelength光谱wavelength l0 l1计算波长范围(nm)SPEC + 全部辐射量130
140wavelength_grid_file光谱wavelength_grid_file file内部计算波长网格SPEC 网格130
141wavelength_index光谱wavelength_index选择输出/计算波长索引SPEC 选择130
142wc_file云廓线wc_file type file水云廓线/性质文件IRR/RAD/ACT/AVG/HEAT/CLD130
143wc_modify云廓线wc_modify tau550 set val缩放或设置水云光学性质IRR/RAD/ACT/AVG/HEAT/CLD132
144wc_properties云廓线wc_properties prop液态水含量→光学性质参数化IRR/RAD/ACT/AVG/HEAT/CLD133
145write_optical_properties输出write_optical_properties光学性质写 NetCDF,不求解AUX 光学文件134
146z_interpolate大气网格z_interpolate垂直插值(手册说明不详)ATM/GAS/CLD134
147zout大气网格zout model_levels指定输出高度(相对地表)垂直输出位置134
148zout_interpolate大气网格zout_interpolatezout 层位插值大气廓线ATM/GAS/CLD + 辐射134
149zout_sea大气网格zout_sea输出高度相对海平面垂直输出位置135

附录 B:output_user 全部 78 项输出字段

气体占位符 xxx 支持:AIR, O3, O2, H2O, CO2, NO2, BRO, OCLO, HCHO, O4,共 10 种。

组别字段列表含义
SPEClambda, wavenumber波长(nm)、波数(cm⁻¹)
几何sza太阳天顶角(°)
垂直坐标zout输出高度(km)
IRR 辐照度edir, eglo, edn, eup, enet, esum直接、总、漫射下行、上行、净、辐照度和
RAD 辐亮度uu指定方向辐亮度,按 umu×phi 展开多列
ACT 光化通量fdir, fglo, fdn, fup, f直接/全局/漫射下行/上行/总光化通量
AVG 平均光强uavgdir, uavgglo, uavgdn, uavgup, uavg各类平均光强
诊断spher_alb大气球面反照率
地表albedo地表反照率
HEATheat加热率(K/day)
ATM 大气状态p, T, T_d, T_sur, theta, theta_e, rh, rh_ice, c_p压力、温度、露点、地表温度、位温、相当位温、湿度
CLD 云状态CLWC, CLWD, CIWC, CIWD, TCC液态/冰水含量、液态/冰水密度、总云量
GAS 数密度n_AIR, n_O3, n_O2, n_H2O, n_CO2, n_NO2, n_BRO, n_OCLO, n_HCHO, n_O410 种气体数密度(cm⁻³)
GAS 质量密度rho_AIR, rho_O3, rho_O2, rho_H2O, rho_CO2, rho_NO2, rho_BRO, rho_OCLO, rho_HCHO, rho_O410 种气体质量密度(kg/m³)
GAS 质量混合比mmr_AIR, mmr_O3, mmr_O2, mmr_H2O, mmr_CO2, mmr_NO2, mmr_BRO, mmr_OCLO, mmr_HCHO, mmr_O410 种气体质量混合比(kg/kg)
GAS 体积混合比vmr_AIR, vmr_O3, vmr_O2, vmr_H2O, vmr_CO2, vmr_NO2, vmr_BRO, vmr_OCLO, vmr_HCHO, vmr_O410 种气体体积混合比

💡 提示:光谱维度输出和垂直剖面输出的自然维度不同,不要把全部 78 个字段一次性放在同一个仿真任务里,建议按调试目标拆成多个 run。


附录 C:Mie 工具 28 项输入参数

#参数作用简述
1accuracy_phaseNetCDF 相函数输出目标精度
2aerosol_typeOPAC 气溶胶类型选择
3alpha_file复折射率/吸收数据文件
4basename输出文件基名
5distribution粒径分布类型及参数(GAMMA/LOGNORMAL)
6dx_maxsize-parameter 最大步长
7mass_density介质质量密度
8mie_programMie 求解程序(BH/BHMIE 或 MIEV0)
9mimcut虚部折射率归零阈值(MIEV0)
10nmom相函数 Legendre 矩数量
11nmom_netcdfNetCDF 存储的相函数矩数量
12numang计算相函数的角度数
13n_r_max粒径分布截断倍数
14nstokesStokes 参数数量(1=标量,4=偏振)
15nthetamax采样相矩阵最大散射角数
16output_userMie 输出字段选择
17phase_from_amplitudes从散射振幅计算相函数
18r_eff粒子半径/有效半径
19refrac复折射率选择/设置
20size_distribution_file粒径分布文件
21temperature温度(温度依赖介质性质)
22theta_user用户指定散射角
23verbose更多诊断信息
24water_properties水/冰介质光学性质来源
25wavelength计算波长或波长范围
26wavelength_step波长步长
27wavelength_index按索引选择波长
28write_all_phasefunctions写出所有相函数

写在最后

libRadtran 是一个设计精良但学习曲线陡峭的工具——它的功能极其丰富(149 项输入参数、20 余种求解器、完整的偏振和 3D 蒙特卡洛能力),但官方文档的叙事式排版对工程调试并不友好。

这份速查的核心价值不在于"翻译手册",而在于:

  1. 把分散在 60 多页 PDF 里的参数按工程模块重新归类;
  2. 明确标注每个参数影响哪类输出,帮你快速定位问题;
  3. 把"改变物理解的输入"和"只改展示的输出"严格区分开——这是新手最容易踩的坑。

希望这份整理能帮你少翻几页 PDF,多留一些时间在真正的物理问题上。


参考资料:

  • libRadtran User's Guide, Edition for libRadtran-2.0.6 (2025-02-02)
  • 本文基于官方手册工程归纳整理,所有物理定义以原版为准。