Skip to content

Upgrade WRFDA RTTOV interface to v12.1#624

Merged
jjguerrette merged 3 commits intowrf-model:masterfrom
jjguerrette:WRFDA_RTTOVv12
Sep 13, 2018
Merged

Upgrade WRFDA RTTOV interface to v12.1#624
jjguerrette merged 3 commits intowrf-model:masterfrom
jjguerrette:WRFDA_RTTOVv12

Conversation

@jjguerrette
Copy link
Contributor

@jjguerrette jjguerrette commented Sep 12, 2018

TYPE: enhancement

KEYWORDS: RTTOV, radiance, DA, RTM

SOURCE: internal

DESCRIPTION OF CHANGES: One or more paragraphs describing problem, solution, and required changes.

The RTTOV source code was updated for new emissivity formulations and new coefficient files. The updated version of RTTOV (12.1) deprecates NETCDF formatted emissivity atlas files in favor of only using HDF5 format. Additionally, the interface to those emissivity atlas files has changed and several internal derived type names have changed.

This PR updates WRFDA to handle those changes to RTTOV. Compiling WRFDA for use with RTTOV will now require an HDF5 library.

LIST OF MODIFIED FILES:
M compile
M var/da/da_radiance/da_get_innov_vector_rttov.inc
M var/da/da_radiance/da_radiance.f90
M var/da/da_radiance/da_rttov.f90
M var/da/da_radiance/da_rttov_ad.inc
M var/da/da_radiance/da_rttov_direct.inc
M var/da/da_radiance/da_rttov_init.inc
M var/da/da_radiance/da_rttov_k.inc
M var/da/da_radiance/da_rttov_tl.inc
M var/da/da_radiance/module_radiance.f90

TESTS CONDUCTED:
The WRFDA regression test was conducted for both GNU and INTEL compilers. All secnarios give "match" result except for the four tests discussed below.

  1. One test, which uses NETCDF4, gives an "ok" result that is caused by the diffwrf program not recognizing "string" type given to attributes of HVC coefficients and moist THM. Here is an example of the output from diffwrf for THM that is repeated for C1F, C2F, C3F, C4F, C1H, C2H, C3H, and C4H:

Diffing BASELINE.NEW/wrfvar_output.Linux.cheyenne.multirad_pacific_nc4.dmpar.ifort.17.0.1 multirad_pacific_nc4/dmpar/wrfvar_output.Linux.cheyenne.multirad_pacific_nc4.dmpar.ifort.17.0.1 Next Time 2015-10-10_12:00:00 Field Ndifs Dims RMS (1) RMS (2) DIGITS RMSE pntwise max NetCDF error: NetCDF: Attempt to convert between text & numbers NetCDF error: NetCDF: Attempt to convert between text & numbers NetCDF error in wrf_io.F90, line 3410 NetCDF error in wrf_io.F90, line 3410 NetCDF error: NetCDF: Attempt to convert between text & numbers NetCDF error: NetCDF: Attempt to convert between text & numbers NetCDF error in wrf_io.F90, line 3410 NetCDF error in wrf_io.F90, line 3410 Big difference: THM not found in multirad_pacific_nc4/dmpar/wrfvar_output.Linux.cheyenne.multirad_pacific_nc4.dmpar.ifort.17.0.1

This output is incorrect since THM is available in both wrfvar_output files. The problem appears to be caused by a "string" label in the nc4 wrfvar_output files for attributes of THM, C1F, C2F, C3F, C4F, C1H, C2H, C3H, and C4H that is not present for any other variables or in the non-nc4 version of these files. This is shown below in the THM lines from 'ncdump -h'.

float THM(Time, bottom_top, south_north, west_east) ; THM:FieldType = 104 ; string THM:MemoryOrder = "XYZ" ; string THM:description = "perturbation moist potential temperature (1+Rv/Rd Qv)*(theta-t0)" ; string THM:units = "K" ; string THM:stagger = "" ; string THM:coordinates = "XLONG XLAT XTIME" ;

  1. Three tests, which all use the updated version of RTTOV, yield small differences (diff) in analysis fields that we expect:

Diffing cycle_ne_blizzard/dmpar/wrfvar_output.Linux.cheyenne.cycle_ne_blizzard.dmpar.ifort.17.0.1 /gpfs/p/work/guerrett/wrf/DA/WORKDIRS/REGTEST.V4.RTTOVv12/BASELINE.NEW/wrfvar_output.Linux.cheyenne.cycle_ne_blizzard.dmpar.ifort.17.0.1 Next Time 2015-01-27_00:00:00 Field Ndifs Dims RMS (1) RMS (2) DIGITS RMSE pntwise max U 78916 3 0.1950000610E+02 0.1950000612E+02 8 0.1452E-05 0.8260E-06 V 85312 3 0.2016072407E+02 0.2016072415E+02 8 0.2466E-05 0.1416E-05 W 244287 3 0.5455491815E-01 0.5455491821E-01 9 0.5287E-07 0.7989E-06 PH 145119 3 0.2520532388E+04 0.2520535961E+04 5 0.3108E-01 0.6820E-04 T 112996 3 0.7619324728E+02 0.7619324422E+02 7 0.3236E-03 0.3135E-04 THM 112996 3 0.7619324728E+02 0.7619324422E+02 7 0.3236E-03 0.3135E-04 MU 4865 2 0.1382957311E+04 0.1382959044E+04 5 0.1011E-01 0.5136E-04 P 193974 3 0.7791660842E+03 0.7791669880E+03 5 0.4043E-02 0.2875E-04 PSFC 908 2 0.9964685221E+05 0.9964685371E+05 7 0.7491E-02 0.5316E-06 QVAPOR 81004 3 0.2856789728E-02 0.2856794504E-02 5 0.1439E-06 0.3310E-03

Diffing rttov_4dvar_madagascar/dmpar/wrfvar_output.Linux.cheyenne.rttov_4dvar_madagascar.dmpar.ifort.17.0.1 /gpfs/p/work/guerrett/wrf/DA/WORKDIRS/REGTEST.V4.RTTOVv12/BASELINE.NEW/wrfvar_output.Linux.cheyenne.rttov_4dvar_madagascar.dmpar.ifort.17.0.1 Next Time 2013-10-10_12:00:00 Field Ndifs Dims RMS (1) RMS (2) DIGITS RMSE pntwise max U 106198 3 0.1407457972E+02 0.1406720909E+02 3 0.2460E-01 0.3064E-02 V 106198 3 0.6627881796E+01 0.6630933698E+01 3 0.2253E-01 0.3300E-02 PH 104367 3 0.3763574499E+04 0.3763414462E+04 4 0.6361E+00 0.5839E-03 T 104313 3 0.6304267642E+02 0.6304259227E+02 5 0.4789E-02 0.1685E-03 MU 3481 2 0.1325603891E+04 0.1325484630E+04 4 0.4079E+00 0.1045E-02 PSFC 3404 2 0.9960686257E+05 0.9960682255E+05 6 0.3675E+00 0.2213E-04 QVAPOR 85091 3 0.6364615740E-02 0.6365347066E-02 3 0.2083E-05 0.7686E-03 THM 104313 3 0.6304267642E+02 0.6304259227E+02 5 0.4789E-02 0.1685E-03

Diffing tut_xinzhang_rttov_genbe/dmpar/wrfvar_output.Linux.cheyenne.tut_xinzhang_rttov_genbe.dmpar.ifort.17.0.1 /gpfs/p/work/guerrett/wrf/DA/WORKDIRS/REGTEST.V4.RTTOVv12/BASELINE.NEW/wrfvar_output.Linux.cheyenne.tut_xinzhang_rttov_genbe.dmpar.ifort.17.0.1 Next Time 2008-02-05_12:00:00 Field Ndifs Dims RMS (1) RMS (2) DIGITS RMSE pntwise max U 212204 3 0.2250439612E+02 0.2250474812E+02 4 0.1410E-02 0.2267E-03 V 213450 3 0.1302169124E+02 0.1302202695E+02 4 0.1956E-02 0.3663E-03 PH 209707 3 0.2851391120E+04 0.2851511208E+04 4 0.4411E+00 0.4377E-03 T 209003 3 0.7363905612E+02 0.7363903856E+02 6 0.2300E-02 0.1074E-03 MU 5243 2 0.1622026938E+04 0.1622004629E+04 4 0.1171E+00 0.1989E-03 P 209774 3 0.9261136844E+03 0.9261033907E+03 4 0.5801E-01 0.1570E-03 PSFC 4809 2 0.9682840961E+05 0.9682839215E+05 6 0.9788E-01 0.4404E-05 QVAPOR 199603 3 0.3265513625E-02 0.3265689761E-02 4 0.7450E-06 0.9363E-03 THM 209003 3 0.7363905612E+02 0.7363903856E+02 6 0.2300E-02 0.1074E-03

Jonathan Guerrette and others added 3 commits April 4, 2018 17:35
- code has been compiled with RTTOV12.1
- preliminary 3D-Var test w/ WRFDA arctic tutorial case
   + minimization appears successful
   + results differ from RTTOV11.3 due to RTTOV updates
   + quantitative analysis of results has not been performed
 Changes to be committed:
	modified:   compile
	modified:   var/da/da_radiance/da_get_innov_vector_rttov.inc
	modified:   var/da/da_radiance/da_radiance.f90
	modified:   var/da/da_radiance/da_rttov.f90
	modified:   var/da/da_radiance/da_rttov_ad.inc
	modified:   var/da/da_radiance/da_rttov_direct.inc
	modified:   var/da/da_radiance/da_rttov_init.inc
	modified:   var/da/da_radiance/da_rttov_k.inc
	modified:   var/da/da_radiance/da_rttov_tl.inc
	modified:   var/da/da_radiance/module_radiance.f90
 Changes to be committed:
	modified:   var/da/da_radiance/da_get_innov_vector_rttov.inc
	modified:   var/da/da_radiance/da_rttov_init.inc
	modified:   var/da/da_radiance/module_radiance.f90
Copy link
Contributor

@liujake liujake left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved.

@jjguerrette jjguerrette merged commit 84deb5f into wrf-model:master Sep 13, 2018
@jjguerrette jjguerrette deleted the WRFDA_RTTOVv12 branch September 14, 2018 16:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants