From a9553cc09ad3f30e007a2228ba29362fee12a150 Mon Sep 17 00:00:00 2001 From: Mei Han Date: Tue, 3 Feb 2026 13:07:13 -0500 Subject: [PATCH 1/3] Add extra ABI output and change water vapor unit --- GEOSaana_GridComp/GSI_GridComp/setuprad.f90 | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 b/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 index 0c72a09..9bc7380 100755 --- a/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 +++ b/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 @@ -2664,6 +2664,9 @@ subroutine contents_netcdf_diag_(odiags,idv,iob) call nc_diag_metadata("SST_Cool_layer_tdrop", sngl(data_s(idtc,n)) ) ! dt_cool at zob call nc_diag_metadata("SST_dTz_dTfound", sngl(data_s(itz_tr,n)) ) ! d(Tz)/d(Tr) + if (abi) then + call nc_diag_metadata("standard_deviation_clear_bt", sngl(tb_obs_sdv(ich_diag(i))) ) ! tb_obs_sdv (K) + endif call nc_diag_metadata("Observation", sngl(tb_obs(ich_diag(i))) ) ! observed brightness temperature (K) call nc_diag_metadata("Obs_Minus_Forecast_adjusted", sngl(tbc0(ich_diag(i) )) ) ! observed - simulated Tb with bias corrrection (K) call nc_diag_metadata("Obs_Minus_Forecast_unadjusted", sngl(tbcnob(ich_diag(i))) ) ! observed - simulated Tb with no bias correction (K) @@ -2775,7 +2778,11 @@ subroutine contents_netcdf_diag_(odiags,idv,iob) do iabsorb = 1, n_absorbers write (fieldname, "(A,I0.2)") "atmosphere_absorber_", atmosphere(1)%absorber_id(iabsorb) - call nc_diag_data2d(trim(fieldname), sngl(atmosphere(1)%absorber(:,iabsorb))) ! check %absorber_units + if (iabsorb == 1) then + call nc_diag_data2d(trim(fieldname), sngl(atmosphere(1)%absorber(:,iabsorb)/1000.0)) ! check %absorber_units + else + call nc_diag_data2d(trim(fieldname), sngl(atmosphere(1)%absorber(:,iabsorb))) ! check %absorber_units + endif enddo do icloud = 1, n_clouds_fwd_wk write (fieldname, "(A,I0.2)") "atmosphere_mass_content_of_cloud_", atmosphere(1)%Cloud(icloud)%Type From 4facadff2356e2240d74bd57e09db220651355e2 Mon Sep 17 00:00:00 2001 From: Ricardo Todling Date: Wed, 11 Feb 2026 18:09:31 -0500 Subject: [PATCH 2/3] safer logic --- GEOSaana_GridComp/GSI_GridComp/setuprad.f90 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 b/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 index aa62f40..3b5e1c1 100755 --- a/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 +++ b/GEOSaana_GridComp/GSI_GridComp/setuprad.f90 @@ -300,6 +300,7 @@ subroutine setuprad(obsLL,odiagLL,lunin,mype,aivals,stats,nchanl,nreal,nobs,& n_clouds_fwd_wk,n_absorbers use crtm_interface, only: iedge_log use crtm_interface, only: ilzen_ang2,iscan_ang2,iszen_ang2,isazi_ang2, ilazi_ang2 + use crtm_module, only: H2O_ID use clw_mod, only: calc_clw, ret_amsua, gmi_37pol_diff,mhs_si use qcmod, only: qc_ssmi,qc_seviri,qc_abi,qc_ssu,qc_avhrr,qc_goesimg,qc_msu,qc_irsnd,qc_amsua,qc_mhs,qc_atms use qcmod, only: igood_qc,ifail_gross_qc,ifail_interchan_qc,ifail_crtm_qc,ifail_satinfo_qc,qc_noirjaco3,ifail_cloud_qc @@ -2778,7 +2779,7 @@ subroutine contents_netcdf_diag_(odiags,idv,iob) do iabsorb = 1, n_absorbers write (fieldname, "(A,I0.2)") "atmosphere_absorber_", atmosphere(1)%absorber_id(iabsorb) - if (iabsorb == 1) then + if (atmosphere(1)%absorber_id(iabsorb) == H2O_ID) then call nc_diag_data2d(trim(fieldname), sngl(atmosphere(1)%absorber(:,iabsorb)/1000.0)) ! check %absorber_units else call nc_diag_data2d(trim(fieldname), sngl(atmosphere(1)%absorber(:,iabsorb))) ! check %absorber_units From 9774774e4043977d3e32f8c5407893ef8b58bb29 Mon Sep 17 00:00:00 2001 From: Ricardo Todling Date: Wed, 11 Feb 2026 18:34:51 -0500 Subject: [PATCH 3/3] explain --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b8f9513..df19e0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added ### Changed +11Feb2026: +- scaling nc-diag absorber (water) output + 06Feb2026: - revive knob for aerosol-affected radiances (zero-diff when not used)