Skip to content

Conversation

@jaymes-kenyon
Copy link
Contributor

@jaymes-kenyon jaymes-kenyon commented Nov 13, 2025

This PR addresses issue #1364.

In particular, it serves to re-introduce a diagnostic procedure that was previously coded in UPP. The procedure calculates a "synthetic" cloud fraction for use in modeling applications that do not provide a "true" cloud fraction. This is accomplished by using the arrays of cloud-water and cloud-ice mixing ratio, then performing a neighborhood search to produce a neighborhood fraction of exceedance. This fraction is then assigned to the cloud-fraction array for subsequent use elsewhere in UPP.

Copying several RTMA developers: @GangZhao-NOAA @guoqing-noaa @ManuelPondeca-NOAA @AnnetteGibbs-NOAA @MatthewMorris-NOAA @hu5970

…on field, intended for

use when true cloud fraction is not provided by the model (e.g., RTMA applications)
@jaymes-kenyon
Copy link
Contributor Author

@GangZhao-NOAA — I have not fully tested this code yet, but I wanted to make it available via a draft PR. Please feel free to test it if you have a moment. Thanks!

@GangZhao-NOAA
Copy link

@GangZhao-NOAA — I have not fully tested this code yet, but I wanted to make it available via a draft PR. Please feel free to test it if you have a moment. Thanks!
@jaymes-kenyon
Hi Jaymes,
Thank you very much for building up the code so quickly!
I am getting stuck with another task, might have no time to test your modified code this week. Very sorry for this. I will test your code as early as possible and keep you all updated.
Thanks again!
--
Gang

@jaymes-kenyon jaymes-kenyon changed the title [Draft] RTMA applications: produce a "synthetic" cloud fraction [Draft] RTMA applications: calculate a "synthetic" cloud fraction Nov 13, 2025
@BenjaminBlake-NOAA BenjaminBlake-NOAA added enhancement New feature or request 3DRTMA labels Nov 13, 2025
@clyden-noaa clyden-noaa moved this to Draft in PRs to Process Nov 19, 2025
@jaymes-kenyon
Copy link
Contributor Author

jaymes-kenyon commented Dec 2, 2025

Tests on Jet suggest that this PR is working as intended. For example, the screenshots below show the resulting GRIB2 fields of LCDC (left) and FRACCC (at k = 10). In turn, both of these fields are produced from the "CFR" array (cloud fraction) that is calculated in UPP using this fraction-of-exceedance approach. Note that the choice of a 16.1-km neighborhood radius is arbitrary, but seems to give aesthetically good results.

Screenshot 2025-12-02 at 11 47 05 AM

@jaymes-kenyon jaymes-kenyon changed the title [Draft] RTMA applications: calculate a "synthetic" cloud fraction RTMA applications: calculate a "synthetic" cloud fraction Dec 2, 2025
@jaymes-kenyon jaymes-kenyon marked this pull request as ready for review December 2, 2025 16:57
@GangZhao-NOAA
Copy link

@jaymes-kenyon
Thank you for testing the modified UPP code. The results are good as expected.
-Gang

@WenMeng-NOAA WenMeng-NOAA linked an issue Dec 2, 2025 that may be closed by this pull request
@WenMeng-NOAA WenMeng-NOAA added the Ready for Review This PR is ready for code review. label Dec 2, 2025
@WenMeng-NOAA
Copy link
Collaborator

@jaymes-kenyon I conducted the testing for 3drtma and found the baseline changes compared to the current release/3drtma_v1 as:

WRFNAT.GrbF00:
12:4762410:FRACCC:1 hybrid level:rpn_corr=0.47673:rpn_rms=0.16334
32:19550556:FRACCC:2 hybrid level:rpn_corr=0.571392:rpn_rms=0.150366
52:34555471:FRACCC:3 hybrid level:rpn_corr=0.697797:rpn_rms=0.118821
72:49501819:FRACCC:4 hybrid level:rpn_corr=0.719312:rpn_rms=0.139736
92:64330570:FRACCC:5 hybrid level:rpn_corr=0.764251:rpn_rms=0.159999
112:79145202:FRACCC:6 hybrid level:rpn_corr=0.818951:rpn_rms=0.158861
132:94289607:FRACCC:7 hybrid level:rpn_corr=0.837229:rpn_rms=0.144137
152:109635028:FRACCC:8 hybrid level:rpn_corr=0.785573:rpn_rms=0.141946
172:125022599:FRACCC:9 hybrid level:rpn_corr=0.629717:rpn_rms=0.155384
192:140123374:FRACCC:10 hybrid level:rpn_corr=0.470375:rpn_rms=0.17894
212:154906169:FRACCC:11 hybrid level:rpn_corr=0.416281:rpn_rms=0.153835
232:169285445:FRACCC:12 hybrid level:rpn_corr=0.445033:rpn_rms=0.129523
252:183610062:FRACCC:13 hybrid level:rpn_corr=0.574205:rpn_rms=0.108949
272:197611513:FRACCC:14 hybrid level:rpn_corr=0.631647:rpn_rms=0.121928
292:211440385:FRACCC:15 hybrid level:rpn_corr=0.495694:rpn_rms=0.124314
312:224866141:FRACCC:16 hybrid level:rpn_corr=0.577609:rpn_rms=0.115793
332:237679284:FRACCC:17 hybrid level:rpn_corr=0.550966:rpn_rms=0.123139
352:250874789:FRACCC:18 hybrid level:rpn_corr=0.528916:rpn_rms=0.130232
372:263619821:FRACCC:19 hybrid level:rpn_corr=0.401874:rpn_rms=0.143736
392:275805284:FRACCC:20 hybrid level:rpn_corr=0.348752:rpn_rms=0.155881
412:287800837:FRACCC:21 hybrid level:rpn_corr=0.351993:rpn_rms=0.167026
432:299328339:FRACCC:22 hybrid level:rpn_corr=0.354968:rpn_rms=0.175541
452:310595426:FRACCC:23 hybrid level:rpn_corr=0.430987:rpn_rms=0.167951
472:321465058:FRACCC:24 hybrid level:rpn_corr=0.496329:rpn_rms=0.160092
492:332112249:FRACCC:25 hybrid level:rpn_corr=0.521757:rpn_rms=0.157454
512:342458600:FRACCC:26 hybrid level:rpn_corr=0.567377:rpn_rms=0.157276
532:352957177:FRACCC:27 hybrid level:rpn_corr=0.571034:rpn_rms=0.164234
552:363693592:FRACCC:28 hybrid level:rpn_corr=0.561191:rpn_rms=0.170263
572:374146730:FRACCC:29 hybrid level:rpn_corr=0.55904:rpn_rms=0.167474
592:384339473:FRACCC:30 hybrid level:rpn_corr=0.516154:rpn_rms=0.164006
612:393723652:FRACCC:31 hybrid level:rpn_corr=0.368264:rpn_rms=0.157328
632:402303283:FRACCC:32 hybrid level:rpn_corr=0.288702:rpn_rms=0.123326
652:410712795:FRACCC:33 hybrid level:rpn_corr=0.270606:rpn_rms=0.0873143
672:419227271:FRACCC:34 hybrid level:rpn_corr=0.183873:rpn_rms=0.0808377
692:427969586:FRACCC:35 hybrid level:rpn_corr=0.196652:rpn_rms=0.0476384
712:436345141:FRACCC:36 hybrid level:rpn_corr=0.124038:rpn_rms=0.0356725
732:444539998:FRACCC:37 hybrid level:rpn_corr=0.0358296:rpn_rms=0.0289723
752:455935740:FRACCC:38 hybrid level:rpn_corr=0.000542444:rpn_rms=0.0187555

WRFTWO.GrbF00:
8:3665847:UGRD:250 mb:rpn_corr=0.999769:rpn_rms=0.259376
9:4402981:VGRD:250 mb:rpn_corr=0.999773:rpn_rms=0.2556
10:5138911:UGRD:300 mb:rpn_corr=0.999722:rpn_rms=0.236058
11:5866381:VGRD:300 mb:rpn_corr=0.999715:rpn_rms=0.24267
107:75559851:TCDC:boundary layer cloud layer:rpn_corr=0.762127:rpn_rms=24.6086
108:75855358:LCDC:low cloud layer:rpn_corr=0.704085:rpn_rms=28.8408
109:76279917:MCDC:middle cloud layer:rpn_corr=0.532403:rpn_rms=22.7295
110:76586274:HCDC:high cloud layer:rpn_corr=0.516615:rpn_rms=26.08
111:76838019:TCDC:entire atmosphere (considered as a single layer):rpn_corr=0.613432:rpn_rms=35.7823
113:79109368:CEIL:cloud ceiling:rpn_corr=0.83174:rpn_rms=1984.57
114:79633834:HGT:cloud ceiling:rpn_corr=0.654799:rpn_rms=7006.78
176:147784099:SBT123:top of atmosphere:rpn_corr=0.988551:rpn_rms=0.896267
177:149084502:SBT124:top of atmosphere:rpn_corr=0.827128:rpn_rms=4.68927
178:151236019:SBT113:top of atmosphere:rpn_corr=0.996071:rpn_rms=0.645908
179:152691649:SBT114:top of atmosphere:rpn_corr=0.825164:rpn_rms=4.56263

I assume that the above changes are expected due to the new cloud fraction calculation for 3drtma.
My test results are at available at /scratch3/NCEPDEV/stmp/Wen.Meng/scrub/upp-URSA/3drtma_2025091010/ on Ursa. Please let me know if you see issues.

@jaymes-kenyon
Copy link
Contributor Author

@WenMeng-NOAA — Thanks for the test results. I expected differences in the fields that are derived from cloud fraction (i.e., FRACCC, TCDC, LCDC, MCDC, and HCDC). But, the other differences (e.g., upper-level UGRD and VGRD) are surprising. Am I interpreting the results correctly?

@BenjaminBlake-NOAA
Copy link
Collaborator

@WenMeng-NOAA @jaymes-kenyon I think the differences to UGRD/VGRD at 250 and 300 mb are related to the dxm calculation, which Wen re-located in the develop branch as part of PR #1361 . Since this PR is to release/3drtma_v1, perhaps the dxm code changes should be included here too?

@WenMeng-NOAA
Copy link
Collaborator

@WenMeng-NOAA @jaymes-kenyon I think the differences to UGRD/VGRD at 250 and 300 mb are related to the dxm calculation, which Wen re-located in the develop branch as part of PR #1361 . Since this PR is to release/3drtma_v1, perhaps the dxm code changes should be included here too?

@BenjaminBlake-NOAA Good catching. We might sync that changes from the develop branch after this PR merged.

@GangZhao-NOAA
Copy link

@WenMeng-NOAA Thank you for running the test and comparing the results!

Following @jaymes-kenyon question, I noticed that in WRFTWO.GrbF00, the variables "TCDC" (actually there are two TCDC) are also changed. 3DRTMA needs the updated TCDC product, this should be what we are expecting.

Hi @jaymes-kenyon I also noticed that the "Cloud Ceiling" fields are also changed. This is expected, right? There is an interesting thing that, without your "synthetic" scheme to update the cloud fraction in UPP, we still notice that the "cloud Ceiling" is updated after UPP. Does it mean that UPP already has the function to diagnose the "cloud Ceiling" with the updated cloud water and ice? Then with your newly-implemented "synthetic" scheme to update 3D cloud fraction in UPP, will this "could ceiling" be furtherly adjusted by the updated 3-D cloud fraction fields? Or the update in cloud fraction does not have influence on the cloud ceiling?

Hi @WenMeng-NOAA , another question -- I see two cloud ceiling "CEIL" and "HGT" in WRFTWO.GrbF00. Only the "CEIL" is valid for final product, the "HGT" is something invalid and should be removed, right?

Hi @jaymes-kenyon, I am thinking about adding an namelist option to switch on/off this "synthetic" cloud fraction scheme in UPP. It was mentioned in this PR before. Maybe I can add it later after this PR is merged.

Thank you!

-Gang

@WenMeng-NOAA
Copy link
Collaborator

@jaymes-kenyon @GangZhao-NOAA @BenjaminBlake-NOAA Sorry for the misleading information. The last comparison results are between this PR and the develop branch.
Here are comparison between this PR and the release/3drtma_v1 branch:

WRFTWO.GrbF00:
107:75559851:TCDC:boundary layer cloud layer:rpn_corr=0.762127:rpn_rms=24.6086
108:76293222:LCDC:low cloud layer:rpn_corr=0.704085:rpn_rms=28.8408
109:77082948:MCDC:middle cloud layer:rpn_corr=0.532403:rpn_rms=22.7295
110:77347787:HCDC:high cloud layer:rpn_corr=0.516615:rpn_rms=26.08
111:77674824:TCDC:entire atmosphere (considered as a single layer):rpn_corr=0.613432:rpn_rms=35.7823
113:80260140:CEIL:cloud ceiling:rpn_corr=0.83174:rpn_rms=1984.57
114:80822328:HGT:cloud ceiling:rpn_corr=0.654799:rpn_rms=7006.78
176:148902728:SBT123:top of atmosphere:rpn_corr=0.988551:rpn_rms=0.896267
177:150226240:SBT124:top of atmosphere:rpn_corr=0.827128:rpn_rms=4.68927
178:152385346:SBT113:top of atmosphere:rpn_corr=0.996071:rpn_rms=0.645908
179:153856051:SBT114:top of atmosphere:rpn_corr=0.825164:rpn_rms=4.56263

WRFNAT.GrbF00:
12:4762410:FRACCC:1 hybrid level:rpn_corr=0.47673:rpn_rms=0.16334
32:19709234:FRACCC:2 hybrid level:rpn_corr=0.571392:rpn_rms=0.150366
52:34813513:FRACCC:3 hybrid level:rpn_corr=0.697797:rpn_rms=0.118821
72:49880983:FRACCC:4 hybrid level:rpn_corr=0.719312:rpn_rms=0.139736
92:64869144:FRACCC:5 hybrid level:rpn_corr=0.764251:rpn_rms=0.159999
112:79882221:FRACCC:6 hybrid level:rpn_corr=0.818951:rpn_rms=0.158861
132:95266761:FRACCC:7 hybrid level:rpn_corr=0.837229:rpn_rms=0.144137
152:110887156:FRACCC:8 hybrid level:rpn_corr=0.785573:rpn_rms=0.141946
172:126543173:FRACCC:9 hybrid level:rpn_corr=0.629717:rpn_rms=0.155384
192:141819775:FRACCC:10 hybrid level:rpn_corr=0.470375:rpn_rms=0.17894
212:156677250:FRACCC:11 hybrid level:rpn_corr=0.416281:rpn_rms=0.153835
232:171093448:FRACCC:12 hybrid level:rpn_corr=0.445033:rpn_rms=0.129523
252:185449191:FRACCC:13 hybrid level:rpn_corr=0.574205:rpn_rms=0.108949
272:199489928:FRACCC:14 hybrid level:rpn_corr=0.631647:rpn_rms=0.121928
292:213298979:FRACCC:15 hybrid level:rpn_corr=0.495694:rpn_rms=0.124314
312:226687701:FRACCC:16 hybrid level:rpn_corr=0.577609:rpn_rms=0.115793
332:239491590:FRACCC:17 hybrid level:rpn_corr=0.550966:rpn_rms=0.123139
352:252705386:FRACCC:18 hybrid level:rpn_corr=0.528916:rpn_rms=0.130232
372:265481102:FRACCC:19 hybrid level:rpn_corr=0.401874:rpn_rms=0.143736
392:277691519:FRACCC:20 hybrid level:rpn_corr=0.348752:rpn_rms=0.155881
412:289704303:FRACCC:21 hybrid level:rpn_corr=0.351993:rpn_rms=0.167026
432:301251185:FRACCC:22 hybrid level:rpn_corr=0.354968:rpn_rms=0.175541
452:312531460:FRACCC:23 hybrid level:rpn_corr=0.430987:rpn_rms=0.167951
472:323411511:FRACCC:24 hybrid level:rpn_corr=0.496329:rpn_rms=0.160092
492:334064658:FRACCC:25 hybrid level:rpn_corr=0.521757:rpn_rms=0.157454
512:344408834:FRACCC:26 hybrid level:rpn_corr=0.567377:rpn_rms=0.157276
532:354918296:FRACCC:27 hybrid level:rpn_corr=0.571034:rpn_rms=0.164234
552:365667231:FRACCC:28 hybrid level:rpn_corr=0.561191:rpn_rms=0.170263
572:376143015:FRACCC:29 hybrid level:rpn_corr=0.55904:rpn_rms=0.167474
592:386359575:FRACCC:30 hybrid level:rpn_corr=0.516154:rpn_rms=0.164006
612:395753881:FRACCC:31 hybrid level:rpn_corr=0.368264:rpn_rms=0.157328
632:404325869:FRACCC:32 hybrid level:rpn_corr=0.288702:rpn_rms=0.123326
652:412701145:FRACCC:33 hybrid level:rpn_corr=0.270606:rpn_rms=0.0873143
672:421207244:FRACCC:34 hybrid level:rpn_corr=0.183873:rpn_rms=0.0808377
692:429930628:FRACCC:35 hybrid level:rpn_corr=0.196652:rpn_rms=0.0476384
712:438288075:FRACCC:36 hybrid level:rpn_corr=0.124038:rpn_rms=0.0356725
732:446470914:FRACCC:37 hybrid level:rpn_corr=0.0358296:rpn_rms=0.0289723
752:457857973:FRACCC:38 hybrid level:rpn_corr=0.000542444:rpn_rms=0.0187555

@WenMeng-NOAA
Copy link
Collaborator

176:148902728:SBT123:top of atmosphere:rpn_corr=0.988551:rpn_rms=0.896267
177:150226240:SBT124:top of atmosphere:rpn_corr=0.827128:rpn_rms=4.68927
178:152385346:SBT113:top of atmosphere:rpn_corr=0.996071:rpn_rms=0.645908
179:153856051:SBT114:top of atmosphere:rpn_corr=0.825164:rpn_rms=4.56263

Cloud fraction is involved in simulated satellite BT calculation. So the above changes are expected.

@BenjaminBlake-NOAA
Copy link
Collaborator

Hi @WenMeng-NOAA , another question -- I see two cloud ceiling "CEIL" and "HGT" in WRFTWO.GrbF00. Only the "CEIL" is valid for final product, the "HGT" is something invalid and should be removed, right?

@GangZhao-NOAA There are actually two parameters available for cloud ceiling height - HGT:cloud ceiling and CEIL:cloud ceiling. Here's some more detailed information about each (from @jaymes-kenyon ):

  • HGT:cloud ceiling represents the "official" (so-called "legacy") diagnostic of cloud ceiling height.
  • CEIL is a supplemental field, which has had the benefit of recent development. This supplemental field exhibits superior performance for LIFR ceilings [e.g., it has a more neutral frequency bias compared to the HGT field]

@GangZhao-NOAA
Copy link

@BenjaminBlake-NOAA @jaymes-kenyon
Thank you so much for the clarification on CEIL and HGT!
@AnnetteGibbs-NOAA just told me that it is "HGT" which is used in 3DRTMA.
Now I get it. Thanks again!

@jaymes-kenyon
Copy link
Contributor Author

Regarding the ceiling fields, I noticed that RTMA is apparently configured to use parameter 260 to calculate "HGT:cloud ceiling". This ceiling algorithm is different from GSL's algorithm (parameter 408...the so-called 'legacy' ceiling) used in HRRRv4. It might be worth using 408 instead of 260 to more closely align RTMA with HRRRv4.

Relatedly, it might be good to disable "CEIL:cloud ceiling". This field relies on the netCDF "CLDFRA_BL" array (from the MYNN scheme). Since the goal of this PR is to avoid using "CLDFRA_BL" for RTMA diagnostics, it seems logical to not generate "CEIL:cloud ceiling" in the RTMA.

Does this all make sense?

@WenMeng-NOAA
Copy link
Collaborator

It appears to me, in 3drtma_postcntrl.xml, there are three cloud ceiling products:

  • HGT_ON_CLOUD_CEILING: 260
  • GSD_HGT_ON_CLOUD_CEILING: 408
  • GSD_EXP_CEILING:487

Somehow, there are two cloud ceiling related fields generated in WRFTWO.GrbF00
114:79633834:d=2025091010:HGT:cloud ceiling:anl:
113:79109368:d=2025091010:CEIL:cloud ceiling:anl:

@WenMeng-NOAA
Copy link
Collaborator

My experiment indicates that 408 (GSD_HGT_ON_CLOUD_CEILING) is missing in WRFTWO.GrbF00.

@jaymes-kenyon
Copy link
Contributor Author

I noticed that parameters 260 and 408 both use the same "HGT" and "cloud ceiling" descriptors in the post_avblflds.xml file:

<pname>HGT</pname>
<fixed_sfc1_type>cloud_ceiling</fixed_sfc1_type>

With these settings, I think the fields would both be encoded as "HGT:cloud ceiling". Perhaps this means that the field is being overwritten, resulting in one GRIB2 field (not two). I could try a test with parameter 260 removed.

@jaymes-kenyon
Copy link
Contributor Author

I noticed that parameters 260 and 408 both use the same "HGT" and "cloud ceiling" descriptors in the post_avblflds.xml file:

<pname>HGT</pname>
<fixed_sfc1_type>cloud_ceiling</fixed_sfc1_type>

With these settings, I think the fields would both be encoded as "HGT:cloud ceiling". Perhaps this means that the field is being overwritten, resulting in one GRIB2 field (not two). I could try a test with parameter 260 removed.

Update: Actually, 408 is being encoded as the cloud base. This is because the <fixed_sfc1_type> in 3drtma_postcntrl.xml is "cloud_base", which overrides the default of "cloud_ceiling" in post_avblflds.xml.

So, in summary: We are getting the cloud base via 408, the ceiling via 260, and a supplemental ceiling via 487. My suggestion is that we disable 487 in the RTMA, since we wish to avoid calculations derived from the netCDF "CLDFRA_BL" array.

@WenMeng-NOAA
Copy link
Collaborator

@jaymes-kenyon Great catch. Your proposal to remove 487 makes sense to me and I would defer the decision to the EMC rtma team @GangZhao-NOAA @MatthewMorris-NOAA @AnnetteGibbs-NOAA

@GangZhao-NOAA
Copy link

@jaymes-kenyon @WenMeng-NOAA @BenjaminBlake-NOAA
Thank you so much for the discussion on the cloud ceiling in UPP. It helps me a lot. To be honest, I am a little bit more confused now (:-D)
Let me make sure whether I understand your idea correctly:
in current 3DRTMA UPP, we still can get 3 cloud ceiling related 2-D fields as following:

  1. via code 260 (in post control txt file, "HGT_ON_CLOUD_CEILING"), we get 2-D field named as "HGT:cloud ceiling" in grib2 file;
  2. via code 408 (in post control txt file, "GSD_HGT_ON_CLOUD_CEILING"), we get 2-D field named as "HGT:cloud base" in grib2 file;
  3. via code 487 (in post control txt file, "GSD_EXP_CEILING"), we get 2-D field named as "CEIL:cloud ceiling" in grib2 file;

Question 1: we did not miss the 3 cloud ceiling height related products in current 3DRTMA UPP, right?

Question 2: with Jaymes' updated code to derive the 3-D cloud fraction (CFR) from the analyzed cloud ice/water in UPP, we get the the 2-D Total Cloud Coverage (TCDC) updated, this is what we expected. I would like to make it clear that, if this new algorithm also make further change to the other cloud fields, such as the "Cloud Ceiling", 260, 408 and 487. Any "collateral effect" to all or any of these 3 ceiling height fields?

Question 3: 260 vs 408: 408 is using " the GSL's algorithm for parameter 408...the so-called 'legacy' ceiling used in HRRRv4". So to be more closely aligned with HRRR product, 408 is preferred to 260.

Question 4: about 487: this "CEIL:cloud ceiling" is derived from the 3-D array "CLDFRA_BL" in netcdf file. If this "CLDFRA_BL" is NOT analyzed and updated in GSI/Cloud Analysis, then this 487 field should also not be changed. Then in Wen's test results with your updated UPP code, we see that there is Signiant differences:
113:80260140:CEIL:cloud ceiling:rpn_corr=0.83174:rpn_rms=1984.57
Does it mean, the modified cloud fraction by Jaymes's algorithm also make changes to CEIL (487)? Or actually this change in CEIL due to the updated cloud fraction (CFR) is NOT expected? this is similar to question 2.

Sorry to keep bothering you in this PR.
Thank you!

-Gang

#else
real, parameter :: QCLDmin=1.E-5 !< Minimum cloud mixing ratio - was 1.E-6
#endif
real, parameter :: CLOUD_DEF_P=1.E-7 !< Cloud water + ice mixing ratio (qc + qi) threshold used by some GSL diagnostics

Choose a reason for hiding this comment

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

@jaymes-kenyon
Here CLOUD_DEF_P=1.E-7. I noticed that in GSI cloud analysis "gsdcloudanalysis.F90",
at line 208
data cloud_def_p / 0.000001_r_kind/
which is 1.0E-6. You did mentioned that "the value of cloud_def_p is also arbitrary" in INITPOST.F. I just want to confirm with you that this inconsistency is just a trivial thing, since it could be arbitrary.

Thank you!
-Gang

Copy link

@GangZhao-NOAA GangZhao-NOAA left a comment

Choose a reason for hiding this comment

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

The changes look good to me. Approval for merging.
I did have a trivial question about the value of CLOUD_DEF_P (1.E-7 or 1.E-6). It is just a very minor thing. And if necessary, it could be adjusted later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3DRTMA enhancement New feature or request Ready for Review This PR is ready for code review.

Projects

Status: Draft

Development

Successfully merging this pull request may close these issues.

RTMA: create a "synthetic" cloud fraction (for cloud cover)

4 participants