Skip to content

Add hydrometeor uncertainty#558

Closed
cshartsough wants to merge 5 commits into
feature/RRFS_dev1from
add_hydrometeor_uncertainty
Closed

Add hydrometeor uncertainty#558
cshartsough wants to merge 5 commits into
feature/RRFS_dev1from
add_hydrometeor_uncertainty

Conversation

@cshartsough
Copy link
Copy Markdown

@cshartsough cshartsough commented Aug 23, 2023

NOTE: This PR was superseded by an updated version, #580 Closing this branch/PR.

DESCRIPTION OF CHANGES:

There is a effort between EMC and GSL to include more information about uncertainty for RTMA aviation-related fields. This is an initial set to include hydrometeor uncertainty in the RTMA output.

Specifically, the following changes were made:

  • Add a logical flag (i_uncertainty) to the config_defaults script to turn on/off the creation of the uncertainties file.
    Default is .false. (off), so if the flag is not included it or set to off, the uncertainty file creation is not performed.
  • Create a template in the exregional_nonvarcldanl script for the uncertainty netcdf file by copying the fcst_fv3lam/INPUT/tracer file into the same directory.

Note that this is part I of a two-part update. The changes to overwrite the fields in the template netcdf file are in the rrfs_utils/cloudanalysis fortran code, which will be included in a separate PR (rrfs_utl #41). This PR should be merge before or with the rrfs_utl #41 PR.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

TESTS CONDUCTED:

  • hera.intel
  • orion.intel
  • cheyenne.intel
  • cheyenne.gnu
  • gaea.intel
  • jet.intel
  • wcoss2.intel
  • NOAA Cloud (indicate which platform)
  • Jenkins
  • fundamental test suite
  • comprehensive tests (specify which if a subset was used)

DEPENDENCIES:

This is part I of a two-part update. The changes to overwrite the fields in the template netcdf file are in the rrfs_utils/cloudanalysis fortran code, which will be included in a separate PR (rrfs_utl #41). This PR should be merge before or with the rrfs_utl #41 PR.

DOCUMENTATION:

None

ISSUE:

None.

CHECKLIST

  • My code follows the style guidelines in the Contributor's Guide
  • I have performed a self-review of my own code using the Code Reviewer's Guide
  • I have commented my code, particularly in hard-to-understand areas
  • My changes need updates to the documentation. I have made corresponding changes to the documentation
  • My changes do not require updates to the documentation (explain).
  • My changes generate no new warnings
  • New and existing tests pass with my changes
  • Any dependent changes have been merged and published

Comment thread scripts/exregional_nonvarcldanl.sh Outdated
i_T_Q_adjust=${i_T_Q_adjust},
l_rtma3d=${l_rtma3d},
i_precip_vertical_check=${i_precip_vertical_check},
i_uncertainty=${i_uncertainty},
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

If it only takes the value of "True" or "False", suggest using "l_uncerntainty"

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Thanks, I switched the type of the variable but forgot to change the name to match. I'll make that change.

if [ ${i_uncertainty} == ".true." ]; then
# Copy analysis fields into uncertainties - data will be overwritten
echo "EXREGIONAL_NONVARCLDANL.SH: copy tracer file into uncertainty file "
cp_vrfy ${bkpath}/fv_tracer.res.tile1.nc ${bkpath}/fv_tracer.unc.tile1.nc
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This uncertainty only applies to cloud analysis results?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Yes, EMC is working on uncertainties for some other basic fields, and we we work on extending the uncertainty to other aviation fields like cloud tops, ceilings, etc.

@cshartsough
Copy link
Copy Markdown
Author

Thanks for the review so far, I made the changes suggested by Guoqing and retested to make sure I hadn't missed anything.

Comment thread ush/config_defaults.sh Outdated
i_T_Q_adjust=1
l_rtma3d=.false.
i_precip_vertical_check=0
l_uncertainty=.false.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for the changes! Since this only applies to hydrometeors, I would think it may be better to let the variable name reflect this. How about "l_cloud_uncertainty", or "l_cld_uncertainty"?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

good idea! I'll make that change this evening or tomorrow morning.

if [ "${IO_LAYOUT_Y}" == "1" ]; then
ln_vrfy -s ${bkpath}/fv_core.res.tile1.nc fv3_dynvars
ln_vrfy -s ${bkpath}/fv_tracer.res.tile1.nc fv3_tracer
ln_vrfy -s ${bkpath}/fv_tracer.unc.tile1.nc fv3_tracer_unc
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This will crash when "l_cld_uncertainty" is false

iii=$(printf %4.4i $ii)
ln_vrfy -s ${bkpath}/fv_core.res.tile1.nc.${iii} fv3_dynvars.${iii}
ln_vrfy -s ${bkpath}/fv_tracer.res.tile1.nc.${iii} fv3_tracer.${iii}
ln_vrfy -s ${bkpath}/fv_tracer.unc.tile1.nc.${iii} fv3_tracer_unc.${iii}
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This will crash when "l_cld_uncertainty" is false

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.

3 participants