CRTM(Community Radiative Transfer Model)模式是一种正向微波辐射传输模式,适用于积雪,沙地,植被冠层,海洋等多种下垫面情况。目前CRTM模式被广泛应用于对星载被动微波反演地表参数的互较正向和反演模式的互较。LandEM和SnowEM作为其中适用于地表和积雪情形的模块,对于希望编写新模式的同学具有很好的借鉴意义。

CRTM模式

CRTM模式由诸多模块组成,按照第一版本的文档JCSDA Community Radiative Transfer Model (CRTM) : version 1来看,不同表面类型采用了针对性的辐射传输模块。
其中,海洋使用了FastEM;积雪和海冰表面采用了经验方案;而积雪,沙漠,植被和裸土的方案就是LandEM的范畴,具体的实现参考Weng老师的文章A microwave land emissivity model (Weng et al.,2001)
CRTM-modules

CRTM 获取

CRTM ftp download site

LandEM 模块

LandEM模块基于时任NOAA-NESDIS科学家的Weng et al.,(2001)等人的工作A microwave land emissivity model的具体实现,代码编写有Yan&Weng两位完成。
包含文件和说明如下

+ LandEM
|- compile.sh 编译文件,生成可执行文件
|- Fundamental_Constants.f90 定义一些常数
|- Type_Kinds.f90 定义使用到的数据类型
|- NESDIS_LandEM_Module.f90 landEM模式代码
|- NESDIS_SnowEM_Parameters.f90 SnowEM的模式参数
|- main.f90 程序入口,设置试验

Compile

编译部分就是将文件夹下的所有module进行关联编译,生成可执行文件:

f95 Type_Kinds.f90 Fundamental_Constants.f90 NESDIS_SnowEM_Parameters.f90 NESDIS_LandEM_Module.f90 main.f90 -o main.exe
rm -rf *.mod

类型定义

Module to hold specification kinds for variable declaration, as well as associated descriptors.

Type_Kinds.f90模块定义了一些保存变量声明的规范类型,以及相关的描述符。
默认的类型是8bytes的Long型IP和8bytes的Double型FP

常量

Fundamental_Constants.f90 定义了一些常用的常量,比如ZERO,ONE,TWO常用自然数和一些常用物理量如PI,自然指数e,光速,重力加速度,元电荷,玻尔兹曼常数等。

Module containing various fundamental mathematical and physical constants, Taken from the NIST Reference on Constants, Units, and Uncertainty website: http://physics.nist.gov/cuu/Constants/
See also: Mohr, P.J. and B.N. Taylor, “CODATA recommended values of the fundamental physical constants: 1998”, Reviews of Modern Physics,Vol.72, No.2, 2000.

NESDIS_SnowEM_Parameters.f90

Module containing the parameters related to microwave snow emissivity model

SnowEM虽然不是本项目的考察内容,但是LandEM模块调用了它,也作为依赖介绍一下,但是此处不做重点关注。
本module定义了一些积雪的发射率参数,将雪分为了16种类型,具体指代有待调研。

! Snow types
INTEGER, PUBLIC, PARAMETER :: INVALID_SNOW_TYPE = -999
INTEGER, PUBLIC, PARAMETER :: WET_SNOW = 1
INTEGER, PUBLIC, PARAMETER :: GRASS_AFTER_SNOW = 2
INTEGER, PUBLIC, PARAMETER :: RS_SNOW_A = 3
INTEGER, PUBLIC, PARAMETER :: POWDER_SNOW = 4
INTEGER, PUBLIC, PARAMETER :: RS_SNOW_B = 5
INTEGER, PUBLIC, PARAMETER :: RS_SNOW_C = 6
INTEGER, PUBLIC, PARAMETER :: RS_SNOW_D = 7
INTEGER, PUBLIC, PARAMETER :: THIN_CRUST_SNOW = 8
INTEGER, PUBLIC, PARAMETER :: RS_SNOW_E = 9
INTEGER, PUBLIC, PARAMETER :: BOTTOM_CRUST_SNOW_A = 10
INTEGER, PUBLIC, PARAMETER :: SHALLOW_SNOW = 11
INTEGER, PUBLIC, PARAMETER :: DEEP_SNOW = 12
INTEGER, PUBLIC, PARAMETER :: CRUST_SNOW = 13
INTEGER, PUBLIC, PARAMETER :: MEDIUM_SNOW = 14
INTEGER, PUBLIC, PARAMETER :: BOTTOM_CRUST_SNOW_B = 15
INTEGER, PUBLIC, PARAMETER :: THICK_CRUST_SNOW = 16

目录

本计划对LandEM module的解析包含以下部分:

  1. LandEM源码解析
    1.1 引用关系
    1.2 介电常数的计算
    1.3 光学参数的计算
    1.4 辐射传输计算

  2. 基于LandEM的若干试验
    2.1 裸土类型TB对于土壤湿度的响应
    2.2 植被类型TB对于LAI的响应

  3. 讨论
    3.1 多层的可能性
    3.2 层间的反射处理

下一节开始将进行源码分析。