Skip to content

CRTM coefficient loading interface updates #317

Description

@chengdang

With v3.2 adopting NetCDF as the default LUT format and CRTM coefficient LUTs following a consistent naming convention, we could reduce the number of optional arguments required by CRTM for many LUTs, especially for clouds and aerosols.

Example of CRTM LUT naming conventions: $scheme[$instrument].$CoefType.nc/nc4

AerosolCoeff.CMAQ.nc4         AerosolCoeff.NAAPS.nc4
AerosolCoeff.GOCART-GEOS5.nc4 AerosolCoeff.nc4

Note a few cloud LUTs need to be renamed to follow the CRTM style:

CloudCoeff_DDA_Moradi_2022.nc4    CloudCoeff_TAMU-07Sep2015.nc4     CloudCoeff.Thompson08.-109z-1.nc4
CloudCoeff_MW_2.4.0_a.nc4         CloudCoeff_TAMU-11Sep2014.nc4     CloudCoeff.WSM6.-109z-1.nc4
CloudCoeff_MW_2.4.0_exp_freq.nc4  CloudCoeff.GFDLFV3.-109z-1.nc4    CloudCoeff.WSM6.MieSphere.nc4
CloudCoeff_MW_2.4.0_exp.nc4       CloudCoeff.nc4

NPOESS.IRsnow.EmisCoeff.nc4 Nalli.IRsnow.EmisCoeff.nc4  Nalli2.IRsnow.EmisCoeff.nc4

Nalli.IRwater.EmisCoeff.nc4   Nalli2.IRwater.EmisCoeff.nc4  WuSmith.IRwater.EmisCoeff.nc4

IGBP.IRland.EmisCoeff.nc4   NPOESS.IRland.EmisCoeff.nc4 USGS.IRland.EmisCoeff.nc4
amsua_aqua.SpcCoeff.nc    atms_n21.SpcCoeff.nc      mwi_wsf-m1.SpcCoeff.nc    viirs-i_j2.SpcCoeff.nc
amsua_metop-c.SpcCoeff.nc cpr_cloudsat.SpcCoeff.nc  v.abi_g18.SpcCoeff.nc     viirs-i_n21.SpcCoeff.nc
amsua_aqua.TauCoeff.nc    cpr_cloudsat.TauCoeff.nc  v.viirs-i_j2.TauCoeff.nc  viirs-i_n21.TauCoeff.nc
atms_j2-srf.TauCoeff.nc   cris-fsr_j2.TauCoeff.nc   v.viirs-i_n21.TauCoeff.nc viirs-m_j2.TauCoeff.nc

Example of optional arguments could be removed:

 186   err_stat = CRTM_Init( SENSOR_ID, &
 187                         chinfo, &
 188                         Aerosol_Model, &
 189                         AerosolCoeff_Format, &
 190                         AerosolCoeff_File, &
 191                         Cloud_Model, &
 192                         CloudCoeff_Format, &
 193                         CloudCoeff_File, &
 194                         File_Path=COEFFICIENT_PATH, &
 195                         NC_File_Path=NC_COEFFICIENT_PATH, &
 196                         Quiet=.TRUE.)

Take aerosol as an example, here are the options:

  • Keep only AerosolCoeff_File and infer Aerosol_Model and AerosolCoeff_Format from the file name.
  • Keep only Aerosol_Model and use a global argument to define the format of all coefficient files.

These arguments were introduced during the transition period when CRTM supported only NetCDF aerosol and cloud coefficient files.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions