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_COL | output_user 决定的列结构 |
AUX | MYSTIC、光学性质导出等辅助输出 |
二、uvspec .inp 基础语法规则
在深入参数之前,先明确最基本的语法约定:
- 每行一条配置项:
option value1 value2 ...;文件名不需要加引号。 #开头代表注释,空行会被直接忽略。- 同一个选项多次配置,后出现的设置覆盖前面;
include导入的外部文件同样会覆盖已有配置。 - 参数是否实际生效,依赖于
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 输出后处理组(只改输出,不改变物理解)
这是最容易被误解的一组参数,单独拎出来强调:
output_user:选择输出字段列表——仅控制输出列。output_quantity:物理量转换——brightness亮温 /reflectivity反射率 /transmittance透过率。output_process:光谱求和、积分、单位归一化——per_nm/per_cm⁻¹/sum/integrate/rgb。output_format:输出格式——ascii/netCDF。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 medium | REPTRAN 约 5 cm⁻¹ 分辨率,代表波长采样 |
source thermal | 热红外模式,源来自大气、地表热发射 |
wavelength 8000 14000 | 8–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 个坑最常见,也最耗时排查:
- ❗
output_user只是选择输出列,不会触发额外物理计算。仿真结果异常优先排查大气、气溶胶、源项、求解器,而不是调整 output_user。 - ❗
zout仅设置输出层;修改模型底边界海拔要用altitude。两者经常被混淆。 - ❗ REPTRAN 使用代表波长,输出采样点不等于
wavelength设置的区间端点。如果你需要精确的波长网格,用wavelength_grid_file指定。 - ❗
mc_*MYSTIC 参数只能搭配rte_solver montecarlo/mystic;disort 下写了也无效,而且不报错。 - ❗
source solar和source thermal参数不要混用;太阳几何参数(sza、day_of_year、phi0)对 thermal 模式几乎无效。 - ❗ Mie 工具的 inp 参数集合和 uvspec 完全独立,不要把 Mie 参数直接写到 uvspec 的 inp 中。
- ❗ 做科学计算建议优先导出原始辐射量,亮温、反射率作为后处理在外部做。不要直接拿后处理结果做参数反演。
七、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页 |
|---|---|---|---|---|---|---|
| 1 | aerosol_angstrom | 气溶胶 | aerosol_angstrom alpha beta | 按 Ångström 公式缩放气溶胶光学厚度 | IRR/RAD/ACT/AVG/HEAT | 79 |
| 2 | aerosol_default | 气溶胶 | aerosol_default | 建立 Shettle 默认气溶胶模型 | IRR/RAD/ACT/AVG/HEAT | 79 |
| 3 | aerosol_file | 气溶胶 | aerosol_file type file | 从文件读取气溶胶光学性质/廓线 | IRR/RAD/ACT/AVG/HEAT | 80 |
| 4 | aerosol_haze | 气溶胶 | aerosol_haze type | 选择低层气溶胶类型 | IRR/RAD/ACT/AVG/HEAT | 81 |
| 5 | aerosol_king_byrne | 气溶胶 | aerosol_king_byrne a0 a1 a2 | 按 King-Byrne 公式缩放气溶胶光学厚度 | IRR/RAD/ACT/AVG/HEAT | 81 |
| 6 | aerosol_modify | 气溶胶 | aerosol_modify var value | 缩放或设置气溶胶光学性质 | IRR/RAD/ACT/AVG/HEAT | 82 |
| 7 | aerosol_profile_modtran | 气溶胶 | aerosol_profile_modtran | 按 MODTRAN 方式处理非零站高气溶胶廓线 | IRR/RAD/ACT/AVG/HEAT | 82 |
| 8 | aerosol_season | 气溶胶 | aerosol_season season | 选择气溶胶季节廓线 | IRR/RAD/ACT/AVG/HEAT | 82 |
| 9 | aerosol_set_tau_at_wvl | 气溶胶 | aerosol_set_tau_at_wvl lambda tau | 指定波长设置总气溶胶光学厚度 | IRR/RAD/ACT/AVG/HEAT | 82 |
| 10 | aerosol_species_file | 气溶胶 | aerosol_species_file mixture | 指定多气溶胶组分质量密度廓线 | IRR/RAD/ACT/AVG/HEAT | 82 |
| 11 | aerosol_species_library | 气溶胶 | aerosol_species_library OPAC | 指定气溶胶组分光学性质库 | IRR/RAD/ACT/AVG/HEAT | 83 |
| 12 | aerosol_visibility | 气溶胶 | aerosol_visibility value | 设置水平能见度 | IRR/RAD/ACT/AVG/HEAT | 84 |
| 13 | aerosol_vulcan | 气溶胶 | aerosol_vulcan value | 设置 2km 以上火山气溶胶情景 | IRR/RAD/ACT/AVG/HEAT | 84 |
| 14 | albedo | 地表 | albedo value | 波长无关 Lambertian 地表反照率 | 上行 IRR/RAD + 多次散射 | 84 |
| 15 | albedo_file | 地表 | albedo_file file | 从文件读取光谱地表反照率 | 上行 IRR/RAD + 多次散射 | 85 |
| 16 | albedo_library | 地表 | albedo_library IGBP | 使用地表光谱反照率库 | 上行 IRR/RAD + 多次散射 | 85 |
| 17 | altitude | 大气网格 | altitude 0.73 | 设置模型大气底边界海拔 | ATM/GAS + 全部辐射量 | 86 |
| 18 | atm_z_grid | 大气网格 | atm_z_grid | 重采样大气廓线垂直高度网格 | ATM/GAS + 全部辐射量 | 86 |
| 19 | atmosphere_file | 大气网格 | atmosphere_file file | 指定大气廓线文件 | ATM/GAS + 全部辐射量 | 87 |
| 20 | bpdf_litvinov | 地表 | bpdf_litvinov ... | Litvinov 陆地偏振 BPDF | 上行 IRR/RAD | 88 |
| 21 | bpdf_maignan | 地表 | bpdf_maignan ... | Maignan-Bréon 陆地 BPDF | 上行 IRR/RAD | 88 |
| 22 | bpdf_tsang_u10 | 地表 | bpdf_tsang_u10 value | 海洋 BPDF 使用的 10m 风速 | 上行 IRR/RAD | 88 |
| 23 | brdf_ambrals | 地表 | brdf_ambrals var val | AMBRALS/Ross-Li BRDF 参数 | 上行 IRR/RAD | 89 |
| 24 | brdf_ambrals_file | 地表 | brdf_ambrals_file file | 从文件读取 AMBRALS BRDF 参数 | 上行 IRR/RAD | 89 |
| 25 | brdf_ambrals_hotspot | 地表 | brdf_ambrals_hotspot | 启用 AMBRALS 热点修正 | 上行 IRR/RAD | 89 |
| 26 | brdf_cam | 地表 | brdf_cam var val | Cox-Munk 海面 BRDF | 上行 IRR/RAD | 89 |
| 27 | brdf_cam_solar_wind | 地表 | brdf_cam_solar_wind | 旧太阳-风向定义(Monte Carlo) | 上行 IRR/RAD | 90 |
| 28 | brdf_hapke | 地表 | brdf_hapke var val | 波长无关 Hapke BRDF 参数 | 上行 IRR/RAD | 90 |
| 29 | brdf_hapke_file | 地表 | brdf_hapke_file file | 从文件读取 Hapke BRDF 参数 | 上行 IRR/RAD | 90 |
| 30 | brdf_rpv | 地表 | brdf_rpv var val | 波长无关 RPV BRDF 参数 | 上行 IRR/RAD | 91 |
| 31 | brdf_rpv_file | 地表 | brdf_rpv_file file | 从文件读取 RPV BRDF 参数 | 上行 IRR/RAD | 91 |
| 32 | brdf_rpv_library | 地表 | brdf_rpv_library IGBP | 指定 RPV BRDF 地表类型库 | 上行 IRR/RAD | 91 |
| 33 | brdf_rpv_type | 地表 | brdf_rpv_type type_num | 选择 RPV BRDF 地表类型 | 上行 IRR/RAD | 92 |
| 34 | ck_lowtran_absorption | 分子吸收 | ck_lowtran_absorption sp on/off | LOWTRAN 方案中关闭指定气体吸收 | IRR/RAD/ACT/AVG/HEAT | 92 |
| 35 | cloud_fraction_file | 云廓线 | cloud_fraction_file file | 读取随高度变化的云量廓线 | IRR/RAD/ACT/AVG/HEAT/CLD | 92 |
| 36 | cloud_overlap | 云廓线 | cloud_overlap type | 设置云层重叠假设 | IRR/RAD/ACT/AVG/HEAT/CLD | 93 |
| 37 | cloudcover | 云廓线 | cloudcover type value | 设置水平云覆盖比例 | IRR/RAD/ACT/AVG/HEAT/CLD | 93 |
| 38 | crs_file | 分子吸收 | crs_file gas file | 用用户文件替换气体吸收截面 | IRR/RAD/ACT/AVG/HEAT | 93 |
| 39 | crs_model | 分子吸收 | crs_model gas crs | 选择气体吸收截面模型 | IRR/RAD/ACT/AVG/HEAT | 94 |
| 40 | data_files_path | 文件控制 | data_files_path path | 指定内部数据文件根目录 | 配置加载 | 94 |
| 41 | day_of_year | 几何时间 | day_of_year value | 年积日,太阳-地球距离修正 | SOLAR 几何/强度 | 95 |
| 42 | deltam | 求解器 | deltam | 开关 delta-M 缩放 | 求解精度 | 95 |
| 43 | disort_intcor | 求解器 | disort_intcor | DISORT 强度修正方法 | 求解精度 | 95 |
| 44 | earth_radius | 几何时间 | earth_radius value | 设置地球半径 | 几何路径 | 95 |
| 45 | filter_function_file | 光谱 | filter_function_file file | 滤波函数乘以计算光谱 | SPEC 卷积 | 95 |
| 46 | fluorescence | 地表 | fluorescence value | 底边界各向同性荧光源强度 | 上行 IRR/RAD | 95 |
| 47 | fluorescence_file | 地表 | fluorescence_file file | 波长相关地表荧光发射 | 上行 IRR/RAD | 96 |
| 48 | heating_rate | 诊断 | heating_rate [method] | 启用加热率计算 | HEAT | 96 |
| 49 | ic_file | 云廓线 | ic_file type file | 冰云廓线/性质文件 | IRR/RAD/ACT/AVG/HEAT/CLD | 97 |
| 50 | ic_fu | 云廓线 | ic_fu reff_def on/off | Fu 冰云有效半径定义 | IRR/RAD/ACT/AVG/HEAT/CLD | 97 |
| 51 | ic_habit | 云廓线 | ic_habit type | Yang 等冰晶习性选择 | IRR/RAD/ACT/AVG/HEAT/CLD | 97 |
| 52 | ic_habit_yang2013 | 云廓线 | ic_habit_yang2013 | Yang 2013 冰晶习性 | IRR/RAD/ACT/AVG/HEAT/CLD | 98 |
| 53 | ic_modify | 云廓线 | ic_modify var val | 缩放或设置冰云光学性质 | IRR/RAD/ACT/AVG/HEAT/CLD | 98 |
| 54 | ic_properties | 云廓线 | ic_properties prop | 冰水含量→光学性质参数化 | IRR/RAD/ACT/AVG/HEAT/CLD | 98 |
| 55 | include | 文件控制 | include file | 包含另一个 uvspec 输入文件 | 配置加载 | 101 |
| 56 | interpret_as_level | 云廓线 | interpret_as_level profile | 廓线性质按层位值解释 | IRR/RAD/ACT/AVG/HEAT/CLD | 101 |
| 57 | isotropic_source_toa | 几何时间 | isotropic_source_toa | 顶边界各向同性入射源 | SOLAR 几何 | 102 |
| 58 | latitude | 几何时间 | latitude N/S deg | 模拟位置纬度 | SOLAR 几何 | 102 |
| 59 | longitude | 几何时间 | longitude E/W deg | 模拟位置经度 | SOLAR 几何 | 103 |
| 60–83 | mc_* | MYSTIC | 24 项蒙特卡洛专用参数 | 光子追踪、方差缩减、偏振等 | MYSTIC 输出/噪声 | 103–108 |
| 84 | mixing_ratio | 分子吸收 | mixing_ratio species val | 设置气体混合比 | GAS + 吸收 | 108 |
| 85 | mol_abs_param | 分子吸收 | mol_abs_param type | 分子吸收参数化方案 | SPEC + 全部辐射量 | 109 |
| 86 | mol_file | 分子吸收 | mol_file gas file | 读取痕量气体密度廓线 | GAS + 吸收 | 111 |
| 87 | mol_modify | 分子吸收 | mol_modify NO2 1.2 DU | 修改气体总柱含量 | GAS + 吸收 | 111 |
| 88 | mol_tau_file | 分子吸收 | mol_tau_file type file | 读取分子散射/吸收光学厚度 | IRR/RAD/ACT/AVG/HEAT | 112 |
| 89–90 | no2_column_* | 分子吸收 | 旧选项,已废弃 | 应使用 mol_modify | — | 113 |
| 91 | no_absorption | 分子吸收 | no_absorption [name] | 关闭吸收 | IRR/RAD/ACT/AVG/HEAT | 113 |
| 92 | no_scattering | 分子吸收 | no_scattering [name] | 关闭 1D 廓线散射 | IRR/RAD/ACT/AVG/HEAT | 113 |
| 93 | number_of_streams | 求解器 | number_of_streams value | 离散纵标流数 | 角向精度 | 114 |
| 94 | output_file | 输出 | output_file filename | 指定输出文件路径 | OUT_COL | 114 |
| 95 | output_format | 输出 | output_format format | 输出格式(ascii/netCDF等) | OUT_COL | 114 |
| 96 | output_process | 输出 | output_process type | 积分/求和/单位/RGB 后处理 | SPEC 聚合 | 114 |
| 97 | output_quantity | 输出 | output_quantity qty | 亮温/反射率/透过率转换 | 辐射量物理含义 | 115 |
| 98 | output_user | 输出 | output_user fields | 指定输出列 | OUT_COL | 116 |
| 99 | ozone_column | 分子吸收 | 旧选项,已废弃 | 应使用 mol_modify | — | 118 |
| 100 | phi | 几何时间 | phi values | 辐亮度输出方位角 | RAD 方向列 | 118 |
| 101 | phi0 | 几何时间 | phi0 value | 太阳方位角 | SOLAR 几何 | 118 |
| 102 | pressure | 大气网格 | pressure value | 地表压力,缩放大气廓线 | ATM/GAS + 辐射 | 118 |
| 103 | pressure_out | 大气网格 | pressure_out | 按压力坐标指定输出层 | 垂直输出位置 | 119 |
| 104 | print_disort_info | 输出 | print_disort_info val | DISORT 内部诊断信息 | 日志 | 119 |
| 105 | profile_file | 云廓线 | profile_file type file | 通用粒子/云/气溶胶廓线接口 | IRR/RAD/ACT/AVG/HEAT/CLD | 119 |
| 106 | profile_modify | 云廓线 | profile_modify | 修改通用 profile 光学性质 | IRR/RAD/ACT/AVG/HEAT/CLD | 119 |
| 107 | profile_properties | 云廓线 | profile_properties type prop | 通用 profile→光学性质参数化 | IRR/RAD/ACT/AVG/HEAT/CLD | 120 |
| 108 | pseudospherical | 求解器 | pseudospherical | 伪球形几何 | 几何路径 | 120 |
| 109 | quiet | 输出 | quiet | 关闭常规提示信息 | 日志 | 120 |
| 110 | radiosonde | 大气网格 | radiosonde file | 探空资料替换温压廓线 | ATM/GAS + 辐射 | 120 |
| 111 | radiosonde_levels_only | 大气网格 | radiosonde_levels_only | 限制高度范围为探空范围 | ATM/GAS + 辐射 | 121 |
| 112 | raman | 分子吸收 | raman [original] | 单阶转动 Raman 散射 | IRR/RAD/ACT/AVG/HEAT | 121 |
| 113 | rayleigh_depol | 分子吸收 | rayleigh_depol value | Rayleigh 去偏振因子 | IRR/RAD/ACT/AVG/HEAT | 121 |
| 114 | refractive_index_pv | 地表 | refractive_index_pv | 光伏玻璃表面折射率 | 上行 IRR/RAD | 122 |
| 115 | repint_option | 光谱 | repint_option name | REPINT 积分代表波长参数化 | SPEC 网格 | 122 |
| 116 | reptran_file | 光谱 | reptran_file file | 自定义 REPTRAN 代表波长文件 | SPEC 网格 | 122 |
| 117 | reverse_atmosphere | 求解器 | reverse_atmosphere | 大气上下翻转(高级用途) | 几何路径 | 122 |
| 118 | rte_solver | 求解器 | rte_solver type | 辐射传输方程求解器选择 | 全部辐射量 | 122 |
| 119 | schwarzschild_streams | 求解器 | schwarzschild_streams | Schwarzschild 角度积分流数 | 热红外精度 | 125 |
| 120 | sdisort | 求解器 | sdisort nscat val | sdisort 散射阶数/折射选项 | 求解精度 | 125 |
| 121 | slit_function_file | 光谱 | slit_function_file file | 狭缝函数卷积光谱 | SPEC 卷积 | 125 |
| 122 | source | 光谱 | source type | 辐射源类型:solar/thermal | 全部物理源 | 126 |
| 123 | spline | 光谱 | spline 290 365 0.5 | 光谱样条插值到规则波长 | SPEC 网格 | 127 |
| 124 | spline_file | 光谱 | spline_file file | 样条插值到文件指定波长 | SPEC 网格 | 127 |
| 125–127 | sslidar* | Lidar | 3 项 lidar 专用参数 | 单次散射 lidar 求解器 | lidar 专用输出 | 127 |
| 128 | sur_temperature | 热红外 | sur_temperature value | 地表温度,热发射源项 | THERMAL 辐射 | 127 |
| 129 | surface_type_map | 地表 | surface_type_map file | 按地图选择地表类型 | 上行 IRR/RAD | 128 |
| 130 | sza | 几何时间 | sza value | 太阳天顶角 | SOLAR 几何 | 128 |
| 131 | sza_file | 几何时间 | sza_file file | 波长相关太阳天顶角 | SOLAR 几何 | 128 |
| 132 | thermal_bands_file | 光谱 | thermal_bands_file file | 热红外中心波长及波段边界 | SPEC 网格 | 129 |
| 133 | thermal_bandwidth | 光谱 | thermal_bandwidth value | 热红外恒定波数带宽 | SPEC 网格 | 129 |
| 134 | time | 几何时间 | time YYYY MM DD hh mm ss | UTC 时间,太阳几何计算 | SOLAR 几何 | 129 |
| 135 | twomaxrnd3C_scale_cf | 云廓线 | twomaxrnd3C_scale_cf | twomaxrnd3C 云量拆分缩放 | IRR/RAD/ACT/AVG/HEAT/CLD | 129 |
| 136 | tzs_cloud_top_height | 云廓线 | tzs_cloud_top_height | TZS 黑体云云顶高度 | IRR/RAD/ACT/AVG/HEAT/CLD | 129 |
| 137 | umu | 几何时间 | umu values | 输出极角余弦 | RAD 方向列 | 130 |
| 138 | verbose | 输出 | verbose | 更多诊断信息到 stderr | 日志 | 130 |
| 139 | wavelength | 光谱 | wavelength l0 l1 | 计算波长范围(nm) | SPEC + 全部辐射量 | 130 |
| 140 | wavelength_grid_file | 光谱 | wavelength_grid_file file | 内部计算波长网格 | SPEC 网格 | 130 |
| 141 | wavelength_index | 光谱 | wavelength_index | 选择输出/计算波长索引 | SPEC 选择 | 130 |
| 142 | wc_file | 云廓线 | wc_file type file | 水云廓线/性质文件 | IRR/RAD/ACT/AVG/HEAT/CLD | 130 |
| 143 | wc_modify | 云廓线 | wc_modify tau550 set val | 缩放或设置水云光学性质 | IRR/RAD/ACT/AVG/HEAT/CLD | 132 |
| 144 | wc_properties | 云廓线 | wc_properties prop | 液态水含量→光学性质参数化 | IRR/RAD/ACT/AVG/HEAT/CLD | 133 |
| 145 | write_optical_properties | 输出 | write_optical_properties | 光学性质写 NetCDF,不求解 | AUX 光学文件 | 134 |
| 146 | z_interpolate | 大气网格 | z_interpolate | 垂直插值(手册说明不详) | ATM/GAS/CLD | 134 |
| 147 | zout | 大气网格 | zout model_levels | 指定输出高度(相对地表) | 垂直输出位置 | 134 |
| 148 | zout_interpolate | 大气网格 | zout_interpolate | zout 层位插值大气廓线 | ATM/GAS/CLD + 辐射 | 134 |
| 149 | zout_sea | 大气网格 | zout_sea | 输出高度相对海平面 | 垂直输出位置 | 135 |
附录 B:output_user 全部 78 项输出字段
气体占位符
xxx支持:AIR, O3, O2, H2O, CO2, NO2, BRO, OCLO, HCHO, O4,共 10 种。
| 组别 | 字段列表 | 含义 |
|---|---|---|
| SPEC | lambda, 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 | 地表反照率 |
| HEAT | heat | 加热率(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_O4 | 10 种气体数密度(cm⁻³) |
| GAS 质量密度 | rho_AIR, rho_O3, rho_O2, rho_H2O, rho_CO2, rho_NO2, rho_BRO, rho_OCLO, rho_HCHO, rho_O4 | 10 种气体质量密度(kg/m³) |
| GAS 质量混合比 | mmr_AIR, mmr_O3, mmr_O2, mmr_H2O, mmr_CO2, mmr_NO2, mmr_BRO, mmr_OCLO, mmr_HCHO, mmr_O4 | 10 种气体质量混合比(kg/kg) |
| GAS 体积混合比 | vmr_AIR, vmr_O3, vmr_O2, vmr_H2O, vmr_CO2, vmr_NO2, vmr_BRO, vmr_OCLO, vmr_HCHO, vmr_O4 | 10 种气体体积混合比 |
💡 提示:光谱维度输出和垂直剖面输出的自然维度不同,不要把全部 78 个字段一次性放在同一个仿真任务里,建议按调试目标拆成多个 run。
附录 C:Mie 工具 28 项输入参数
| # | 参数 | 作用简述 |
|---|---|---|
| 1 | accuracy_phase | NetCDF 相函数输出目标精度 |
| 2 | aerosol_type | OPAC 气溶胶类型选择 |
| 3 | alpha_file | 复折射率/吸收数据文件 |
| 4 | basename | 输出文件基名 |
| 5 | distribution | 粒径分布类型及参数(GAMMA/LOGNORMAL) |
| 6 | dx_max | size-parameter 最大步长 |
| 7 | mass_density | 介质质量密度 |
| 8 | mie_program | Mie 求解程序(BH/BHMIE 或 MIEV0) |
| 9 | mimcut | 虚部折射率归零阈值(MIEV0) |
| 10 | nmom | 相函数 Legendre 矩数量 |
| 11 | nmom_netcdf | NetCDF 存储的相函数矩数量 |
| 12 | numang | 计算相函数的角度数 |
| 13 | n_r_max | 粒径分布截断倍数 |
| 14 | nstokes | Stokes 参数数量(1=标量,4=偏振) |
| 15 | nthetamax | 采样相矩阵最大散射角数 |
| 16 | output_user | Mie 输出字段选择 |
| 17 | phase_from_amplitudes | 从散射振幅计算相函数 |
| 18 | r_eff | 粒子半径/有效半径 |
| 19 | refrac | 复折射率选择/设置 |
| 20 | size_distribution_file | 粒径分布文件 |
| 21 | temperature | 温度(温度依赖介质性质) |
| 22 | theta_user | 用户指定散射角 |
| 23 | verbose | 更多诊断信息 |
| 24 | water_properties | 水/冰介质光学性质来源 |
| 25 | wavelength | 计算波长或波长范围 |
| 26 | wavelength_step | 波长步长 |
| 27 | wavelength_index | 按索引选择波长 |
| 28 | write_all_phasefunctions | 写出所有相函数 |
写在最后
libRadtran 是一个设计精良但学习曲线陡峭的工具——它的功能极其丰富(149 项输入参数、20 余种求解器、完整的偏振和 3D 蒙特卡洛能力),但官方文档的叙事式排版对工程调试并不友好。
这份速查的核心价值不在于"翻译手册",而在于:
- 把分散在 60 多页 PDF 里的参数按工程模块重新归类;
- 明确标注每个参数影响哪类输出,帮你快速定位问题;
- 把"改变物理解的输入"和"只改展示的输出"严格区分开——这是新手最容易踩的坑。
希望这份整理能帮你少翻几页 PDF,多留一些时间在真正的物理问题上。
参考资料:
- libRadtran User's Guide, Edition for libRadtran-2.0.6 (2025-02-02)
- 本文基于官方手册工程归纳整理,所有物理定义以原版为准。